У нас есть приведенное ниже действие в контроллере для заполнения данных сетки кендо.
public ActionResult GetCompanyDetails([DataSourceRequest] DataSourceRequest request)
{
var companyDetails = BusinessLayer.GetCompaniesDetail();
return Json(companyDetails.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
}
При выполнении сканирования checkmarx указанный выше метод был идентифицирован как уязвимость Reflected XSS.
Метод GetCompanyDetails в строке 1 wxy/xyz/Controllers/ABCController.cs получает пользовательский ввод для элемента запроса. Затем значение этого элемента проходит через код без надлежащей очистки или проверки и в конечном итоге отображается пользователю в методе GetCompanyDetails в строке 4 файла wxy/xyz/Controllers/ABCController.cs. Это может привести к атаке с использованием межсайтовых сценариев.
Как очистить объект DataSourceRequest request
, чтобы исправить эту проблему XSS?
companyDetails.ToDataSourceResult(request)
. Если вы сделаете это, у вас больше не будет никаких проблем. - person SPoint   schedule 26.02.2020DataSourceRequest
, возвращенныйcompanyDetails.ToDataSourceResult(request)
. он имеет много строковых свойств. очищаем ли мы все его строковые свойства? - person Abdul Hameed   schedule 26.02.2020