Межсайтовая скриптовая атака (XSS)

Reflected XSS (Отраженный межсайтовый скриптинг) — это тип уязвимости, при котором вредоносный скрипт внедряется в параметры HTTP-запроса (например, URL) и сразу же «отражается» (возвращается) уязвимым веб-сервером в ответе.

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

Как работает атака: шаг за шагом

  1. Создание приманки: Злоумышленник создает вредоносный URL-адрес, содержащий полезную нагрузку (payload), например скрипт для кражи cookie-файлов.
  2. Рассылка: Ссылка отправляется пользователю через фишинговое письмо, мессенджер или социальные сети
  3. Переход по ссылке: Пользователь кликает по ссылке, переходя на доверенный сайт.
  4. Отражение: Уязвимый сайт принимает небезопасные данные из параметров ссылки и встраивает их в исходный код страницы, которую отправляет обратно в браузер пользователя.
  5. Выполнение: Браузер жертвы видит этот скрипт, считает его частью страницы и выполняет, не подозревая подвоха.

Ключевые особенности

  • Непостоянство (Non-persistent): Вредоносный код не сохраняется на сервере (в отличие от Stored XSS). Он существует только на момент перехода по скомпрометированному URL.
  • Необходимость социальной инженерии: Для срабатывания атаки злоумышленнику требуется заставить жертву кликнуть по уникальной ссылке.
  • Последствия: Украденные сессионные куки (захват аккаунта), перенаправление на фишинговые страницы или кража конфиденциальных данных, введенных на скомпрометированной странице.

Как защититься

  • Экранирование (Output Encoding): Все пользовательские данные перед выводом на экран должны быть должным образом преобразованы (контекстно-зависимое кодирование). Например, угловые скобки превращаются в безопасные HTML-сущности (< и &qt;)
  • Входная валидация (Input Validation): Применение строгой фильтрации или валидации входных данных (например, разрешен только определенный формат, такой как номер телефона или число).
  • Content Security Policy (CSP): Использование политик CSP для ограничения доменов, откуда браузеру разрешено загружать и выполнять скрипты, а также полного запрета выполнения инлайн-скриптов.
Оцените статью
Добавить комментарий