Перейти к содержанию

Включение sensitive-информации в параметры GET-запроса

Критичность: ВЫСОКИЙ
Способ обнаружения: DAST, NETWORKING

Описание

Некоторые приложения используют метод GET для отправки конфиденциальной информации (пароли, идентификаторы сессий и прочие), которые передаются в строке запроса URL в виде параметров. Конфиденциальная информация в URL-адресах может регистрироваться в самых разных местах, включая:

  • веб-сервер;
  • любые прямые или обратные прокси-серверы между двумя конечными точками;
  • заголовок Referrer;
  • логи Web-сервера;
  • история браузера;
  • кэш браузера.

URL-адреса также могут отображаться на экране, добавляться в закладки или отправляться пользователями по электронной почте. Они могут быть переданы третьим лицам через заголовок Referer при переходе по сторонним ссылкам. Размещение конфиденциальной информации в URL увеличивает риск их взлома злоумышленником.

Уязвимости, которые приводят к раскрытию конфиденциальной информации пользователей, могут привести к компрометациям, которые чрезвычайно трудно исследовать. Даже если само приложение обрабатывает только нечувствительную информацию, раскрытие такой информации, как например, пароли, подвергает риску пользователей, которые повторно использовали его в другом месте.

Рекомендации

Все запросы, содержащие в себе чувствительную информацию, должны использовать метод POST и содержать конфиденциальную информацию в теле запроса, что может гарантировать, что она не попадет в логи Web-серверов и другие, доступные большому количеству людей, места. Если нет возможности перевести метод с GET на POST запросы, можно дополнительно приметь шифрование или хэширование конфиденциальной информации для предотвращения ее компрометации.

Ссылки

  1. https://owasp.org/www-community/vulnerabilities/Information_exposure_through_query_strings_in_url#:~:text=Description,any%20other%20potentially%20sensitive%20data.

  2. https://cwe.mitre.org/data/definitions/598.html

  3. https://portswigger.net/kb/issues/00400300_password-submitted-using-get-method

К началу