Мой проект проверяется контрольной пометкой на уязвимые.И сканер делает два уязвимых в одном методе.Одним из них является сохраненный межсайтовый скриптинг, а вторым - «Отраженные клиенты XSS».Мой код, как показано ниже:
public ActionResult kol_pas_Read([DataSourceRequest] DataSourceRequest request, Guid kod)
{
var data = db.kol_pas.Where(o => o.technics_zayavka_uid == kod);
var ot = db.spis_otd;
var items = from item in data
join spisOtd in ot on item.spis_otd_id equals spisOtd.uid
select
new {
Id = item.uid,
item.uid,
item.No,
item.nazalogia,
item.kol,
item.kol2,
item.kol3,
item.spis_otd_id,
item.god,
item.technics_zayavka_uid,
OtdName = spisOtd.rus_name
};
return Json(items.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
}
И код HtmlKendo:
@ (Html.Kendo (). Grid (). Имя ("kol_pas" + Model [0])
.Columns (c => {
c.Bound (d => d.OtdName) .Title (Messages.naimiotdel) .Width (300) .ClientFooterTemplate (Messages.Vсего + "# = count #");
c.Bound (d => d.kol) .Title (Messages.Количествопациентов1) .Width (100); c.Bound (d => d.kol2) .Title (Messages.Количествопациентов2) .Width (100);c.Bound (d => d.kol3) .Title (Messages.Количествопациентов3) .Width (100);
if (! bool.Parse ((string) Model [1])) {c.Command (command => {command.Edit (); command.Destroy ();}). Width (160);}}). Панель инструментов (панель инструментов => {if (! bool.Parse ((string) Model [1])) {панель инструментов.Create ();}}) .Editable (editable => {if (! Bool.Parse ((string) Model [1])) {editable.Mode (GridEditMode.PopUp);}}) .Sortable () .Scrollable() .Selectable (selectable => selectable.Mode (GridSelectionMode.Single)) .DataSource (dataSource => dataSource .Ajax () .PageSize (100) .Aggregates (aggregates => aggregates.Add (p => p.OtdName) .Count ()) .Model (model => {model.Id (p => p.Id);}) .Read (read => read.Action ("kol_pas_Read", "Grid"). Data ("TechnicId"))
.Events (events => events.Error ("kol_pas_Error"))))
И сканер делает две ошибки, как на картинке в ссылках: https://imgur.com/a/Ir1lxIf Как можно решить эту проблему?