Название урока:Обход CSRF-защиты основанной на токенах


Тема для изучения:

На данном уроке вы научитесь осуществлять CSRF-нападения на сайты, использующие токены в качестве защиты от CSRF-атак.

Как работают эти атаки:

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

Аутентификация запросов принимаемых от посетителей, основанная на уникальных токенах, предотвращает возможность CSRF-нападений. При использовании данной техники, при отправке важного запроса, серверу передаётся уникальный для каждого клиента токен, наличие которого подтверждает его легитимность. Проект OWASP CSRFGuard как раз использует такой подход, позволяя защитить приложения от CSRF-нападений.

Тем не менее, данный вид защиты можно обойти. Для этого достаточно обнаружить на атакуемом сайте XSS-уязвимость. Её наличие поможет отправлять запросы от имени жертвы, ведь системы безопасности всех браузеров, основанных на политике одного источника, не запрещают обращаться к текущему домену.

Основные цели и задачи:

Как и в прошлом уроке, вашей целью является отправка письма в новостную группу для вызова нелегитимного перевода денег. Для её достижения вам необходимо узнать действующий токен. Он находится в коде страницы на которой расположена форма перевода денег. Для того чтоб увидеть форму, необходимо к текущему URL дописать параметр "transferFunds=main". Загрузите эту страницу, считайте оттуда значение токена и осуществите перевод. В конце работы обновите текущую страницу. Если задание выполнено верно, то в главном меню, на против этого урока, появится зелёная отметка.