Атаки на веб-приложения · Словарь ИБ

CSRF: межсайтовая подделка запроса

Проверено экспертной редакцией SecRadar · по первоисточникам ФСТЭК / ФСБ / Банка России

CSRF (Cross-Site Request Forgery, межсайтовая подделка запроса) — атака, при которой браузер жертвы отправляет на сайт нежелательный запрос от её имени, пока она авторизована на этом сайте. В отличие от XSS, атакующий не выполняет свой код в браузере жертвы — он использует то, что браузер сам прикладывает к запросу куки сессии. Материал разбирает механику атаки, условия её успеха и способы защиты — от CSRF-токенов до атрибута SameSite.

Экспертная редакция SecRadar · как мы проверяем факты → Обновлено 13 июля 2026 · ~8 мин чтения сверено по OWASP, CWE и общепринятой терминологии ИБ

Кратко

CSRF
Атака заставляет браузер жертвы выполнить запрос на сайт, где жертва авторизована, без её ведома — используя то, что браузер сам прикладывает куки сессии к запросу.
Отличие от XSS
CSRF не даёт атакующему выполнить код или прочитать ответ сайта, он только подделывает запрос «вслепую»; XSS выполняет произвольный код прямо в браузере жертвы.
Условие успеха
Жертва авторизована на целевом сайте через cookie-сессию, а сайт не проверяет происхождение запроса и не требует токен, уникальный для конкретной формы.
Основная защита
CSRF-токен, который сервер выдаёт и проверяет при каждом изменяющем запросе, плюс атрибут SameSite у cookie, ограничивающий её отправку при межсайтовых переходах.
Место в OWASP
Отдельной категорией в OWASP Top 10:2021 и в действующей редакции OWASP Top 10:2025 (январь 2026) не значится — исключена при обновлении 2017 года на фоне встроенной защиты в веб-фреймворках.

Что такое CSRF

CSRF (Cross-Site Request Forgery, межсайтовая подделка запроса) — атака, при которой браузер жертвы выполняет нежелательное действие на сайте, где жертва уже авторизована, не потому что жертва сама на это согласилась, а потому что сторонняя страница или ссылка незаметно инициировала запрос от её имени. Сайт-жертва видит обычный запрос от залогиненного пользователя — с валидными куки сессии — и выполняет его, не зная, что инициатором был не сам пользователь, а чужая страница.

CSRF часто путают с XSS (межсайтовым скриптингом), потому что обе атаки эксплуатируют веб-приложение через браузер жертвы, но механика разная. XSS внедряет вредоносный JavaScript-код в саму страницу и выполняет его в браузере жертвы — с доступом к содержимому страницы, куки и вводимым данным. CSRF ничего не внедряет в атакуемый сайт и не выполняет там свой код — он заставляет браузер жертвы отправить запрос, ответ которого атакующий даже не видит; отсюда и «вслепую» в описании атаки.

Таблица ниже сводит основные различия по пяти признакам.

↔ таблицу можно прокрутить вбок

ПризнакCSRFXSS
Что эксплуатируетдоверие сайта к браузеру пользователядоверие пользователя к сайту
Выполнение стороннего кода в браузеренетда
Читает ли злоумышленник ответ серверанет («вслепую»)да
Нужна ли активная сессия жертвыдане обязательно
Главная защитаанти-CSRF-токен + SameSite-cookieэкранирование вывода + CSP
факт определение CSRF и его отличие от XSS — CWE-352, OWASP, общепринятая терминология ИБ

Как работает CSRF

Механика CSRF строится на том, что браузер автоматически прикладывает cookie сессии к любому запросу на сайт, для которого эта cookie выставлена — независимо от того, с какой страницы запрос был инициирован. Атакующему не нужно красть эту cookie, ему достаточно заставить браузер жертвы отправить запрос, а куки браузер приложит сам.

Типичный сценарий: жертва авторизована в банковском или другом веб-приложении с cookie-сессией, затем открывает стороннюю страницу — например, по ссылке из письма. На этой странице размещён код, который автоматически инициирует запрос к атакуемому сайту: скрытая форма, автоматически отправляющая себя при загрузке страницы, или тег <img src="...">, указывающий на URL с параметрами изменяющего действия, если это действие выполняется GET-запросом.

Браузер жертвы отправляет запрос вместе с валидными куки сессии — сайт обрабатывает его как легитимный.

Классические цели такой атаки — действия, которые меняют состояние аккаунта или данные: перевод денег со счёта, смена пароля или email, привязанного к аккаунту, изменение адреса доставки, добавление нового получателя платежа. Атакующий не видит результат и не может прочитать ответ сервера — но само выполнение действия от имени жертвы уже даёт результат: деньги переведены, email заменён на контролируемый атакующим, дальнейшее восстановление доступа переходит к нему.

Условия успеха атаки. CSRF срабатывает, только если одновременно верны три вещи: жертва авторизована на целевом сайте через cookie-сессию, целевой сайт не проверяет, откуда на самом деле пришёл запрос, и действие не защищено уникальным для формы значением, которое атакующий не может предугадать или подделать заранее.
факт механика автоматической отправки cookie браузером и типовые цели атаки — CWE-352, OWASP Cheat Sheet Series (CSRF Prevention)

Защита от CSRF

Основная защита от CSRF находится на стороне приложения и браузера одновременно — сервер проверяет уникальное значение при каждом изменяющем запросе, а браузер по умолчанию ограничивает отправку cookie при межсайтовых переходах. Средства сетевой защиты дополняют это, но не заменяют.

Основная защита

CSRF-токен

Сервер генерирует уникальное значение для сессии или формы и встраивает его как скрытое поле. При отправке формы сервер сверяет присланный токен с выданным — у атакующего на стороннем сайте нет доступа к этому значению, поэтому подделанный запрос не проходит проверку.

На уровне браузера

Атрибут SameSite

Cookie с атрибутом SameSite=Strict или Lax браузер не отправляет (или отправляет ограниченно) при запросе, инициированном со стороннего сайта. Браузеры на движке Chromium (Chrome, Edge, Opera) применяют SameSite=Lax по умолчанию с версии Chrome 80 (февраль 2020), даже если атрибут не указан явно; Firefox и Safari по умолчанию так не делают.

Дополнительно

Проверка Referer/Origin

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

Для критичных действий

Повторная аутентификация

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

Web Application Firewall дополняет эти меры на уровне сетевого трафика: класс WAF может отслеживать аномальные запросы без ожидаемых заголовков или токенов, но не заменяет проверку CSRF-токена в коде приложения — это по-прежнему основной рубеж. Для веб-приложений, где изменяющие действия выполняются через API, та же логика проверки происхождения запроса и токена переносится на уровень API-эндпоинтов — эту область закрывает класс API Security.

факт CSRF-токен, SameSite, проверка Referer/Origin и повторная аутентификация как способы защиты — OWASP Cheat Sheet Series (Cross-Site Request Forgery Prevention) оценка роль WAF и API Security в общей схеме защиты от CSRF — редакционная систематизация, не заменяет продуктовую консультацию

Место CSRF в OWASP Top 10

В актуальной версии OWASP Top 10 CSRF не выделен отдельной категорией — он входил в список как отдельный риск A8 в редакции OWASP Top 10 2013 года, но был исключён при обновлении 2017 года. Причина — рост числа веб-фреймворков, которые встраивают защиту от CSRF по умолчанию, из-за чего доля уязвимых приложений в собранных для рейтинга данных заметно снизилась.

Это не означает, что атака полностью исчезла: риск остаётся там, где разработчик отключил встроенную защиту фреймворка, не выставил атрибут SameSite явно или использует нестандартную схему аутентификации, не покрытую защитой фреймворка по умолчанию. Полный разбор актуальных категорий риска — на профильной странице словаря OWASP Top 10, где также описано, как рейтинг применяют для приоритизации задач в проекте безопасной разработки.

факт исключение CSRF из отдельной категории OWASP Top 10 при обновлении 2017 года и обоснование через встроенную защиту фреймворков — owasp.org, официальные материалы OWASP Top 10

Частые вопросы

Что такое CSRF простыми словами?
CSRF — это когда злоумышленник заставляет браузер жертвы отправить запрос на сайт, где жертва уже авторизована, без её ведома. Браузер сам прикладывает к запросу куки сессии, поэтому сайт видит обычный запрос от залогиненного пользователя и выполняет действие — например, перевод денег или смену пароля, — хотя сама жертва ничего не нажимала на этом сайте. Метка: факт — общепринятое определение термина (CWE-352).
Чем CSRF отличается от XSS?
CSRF заставляет браузер жертвы отправить запрос от её имени на сайт, где она авторизована, но не даёт атакующему прочитать ответ или выполнить свой код в браузере жертвы. XSS внедряет вредоносный JavaScript-код прямо в страницу и выполняет его в браузере жертвы — с полным доступом к содержимому страницы, куки и вводимым данным. CSRF — это подделка запроса «вслепую», XSS — выполнение произвольного кода в чужой сессии. Метка: факт — сопоставление по CWE-352 и CWE-79.
Как защититься от CSRF?
Основная защита — CSRF-токен: уникальное значение, которое сервер добавляет в форму и проверяет при получении запроса, что делает подделанный запрос без этого значения недействительным. Дополняют её атрибут SameSite у cookie, ограничивающий отправку куки при межсайтовых запросах, и проверка заголовков Referer/Origin. Для критичных действий — перевод денег, смена email или пароля — применяют повторную аутентификацию. Метка: факт — OWASP Cheat Sheet Series (CSRF Prevention).
Что такое CSRF-токен?
CSRF-токен (anti-CSRF token) — случайное уникальное значение, которое сервер генерирует для конкретной сессии или формы и встраивает в неё как скрытое поле. При отправке формы сервер сверяет присланный токен с тем, что выдал сам, — у атакующего на чужом сайте нет доступа к этому значению, поэтому подделанный запрос не проходит проверку. Метка: факт — CWE-352, OWASP Cheat Sheet Series.
Опасен ли CSRF сейчас?
Риск CSRF снизился с распространением встроенной защиты в веб-фреймворках и с тем, что Chromium-браузеры (Chrome/Edge/Opera) по умолчанию применяют SameSite=Lax к куки без явного указания, а Firefox и Safari — нет. Из-за этого OWASP убрал CSRF из отдельной категории Top 10 при обновлении 2017 года. Атака остаётся актуальной там, где разработчик отключил защиту фреймворка, не выставил SameSite явно или использует нестандартную схему аутентификации. Метка: факт — owasp.org, официальные материалы OWASP Top 10.
Может ли SameSite cookie полностью заменить CSRF-токен?
Нет. SameSite снижает риск CSRF на уровне браузера, ограничивая отправку куки при межсайтовых запросах, но зависит от корректной поддержки браузером и настроек cookie, а режим Lax по-прежнему пропускает часть переходов по ссылке. CSRF-токен проверяется на уровне приложения и не зависит от поведения браузера, поэтому его считают основной, а не дополнительной защитой для критичных действий. Метка: факт — OWASP Cheat Sheet Series (CSRF Prevention).

Словарь терминов ИБ на SecRadar

CSRF и другие атаки на приложения — независимые разборы без привязки к вендору, с прямыми ссылками на классы СЗИ, которые закрывают конкретную угрозу.

Открыть словарь
Telegram-канал SecRadar
Сводка рынка ИБ России — каждую неделю

Новые продукты и сертификаты ФСТЭК, ходы вендоров, дедлайны регуляторов — коротко и со ссылками на первоисточники.

Подписаться →