Мы используем куки, чтобы пользоваться сайтом было удобно.
Хорошо
to the top
>
>
>
V5630. OWASP. Possible cookie...
menu mobile close menu
Проверка проектов
Дополнительная информация
toggle menu Оглавление

V5630. OWASP. Possible cookie injection. Potentially tainted data is used to create a cookie.

05 Июн 2025

Анализатор обнаружил создание cookie-объекта из данных, полученных из внешнего источника без предварительной проверки. Это может стать причиной возникновения cookie-инъекции в случае, если данные будут скомпрометированы.

Рассмотрим пример:

public void ChangeCookie()
{
  String cookieValue = Request.Form["userRole"];

  Response.Cookies.Add(
    new HttpCookie(WebLocalizationConfiguration.CookieName, cookieValue)
    {
      Expires = Clock.Now.AddYears(2),
      Path = Request.ApplicationPath
    }
  );
  ....
}

В данном случае в HttpResponse добавляется новый объект класса HttpCookie, который инициализируется на основе данных из внешнего источника — Request.Form. Использование данных без какой-либо проверки или валидации может привести к тому, что злоумышленники смогут повлиять на работу приложения.

Чтобы обезопасить код от cookie-инъекции, необходимо проверить данные, которые используются для инициализации объекта класса HttpCookie.

Сделать это можно подобным образом:

public void ChangeCookie()
{
  String cultureValue = Request.Form["userRole"];
  
  if (!Regex.IsMatch(cultureValue, DataValidationPattern))
    return;

  Response.Cookies.Add(
    new HttpCookie(WebLocalizationConfiguration.CookieName, cultureValue)
    {
      Expires = Clock.Now.AddYears(2),
      Path = Request.ApplicationPath
    }
  );
  ....
}

В данном случае, прежде чем инициализировать объект HttpCookie на основе потенциально заражённых данных, производится проверка с помощью регулярного выражения.

Данная диагностика классифицируется как:

close form

Заполните форму в два простых шага ниже:

Ваши контактные данные:

Шаг 1
Поздравляем! У вас есть промокод!

Тип желаемой лицензии:

Шаг 2
Team license
Enterprise license
close form
Запросите информацию о ценах
Новая лицензия
Продление лицензии
--Выберите валюту--
USD
EUR
RUB
close form
Бесплатная лицензия PVS‑Studio для специалистов Microsoft MVP
close form
Для получения лицензии для вашего открытого
проекта заполните, пожалуйста, эту форму
close form
Я хочу принять участие в тестировании
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
check circle
Ваше сообщение отправлено.

Мы ответим вам на


Если вы так и не получили ответ, пожалуйста, проверьте, отфильтровано ли письмо в одну из следующих стандартных папок:

  • Промоакции
  • Оповещения
  • Спам