Содержание статьи
warning
Статья имеет ознакомительный характер и предназначена для специалистов по безопасности, проводящих тестирование в рамках контракта. Автор и редакция не несут ответственности за любой вред, причиненный с применением изложенной информации. Распространение вредоносных программ, нарушение работы систем и нарушение тайны переписки преследуются по закону.
Токены и сессии
Токены CSRF могут быть проблемой при атаках с помощью Intruder. Но есть несколько возможных решений. Первый вариант — использовать пейлоад Recursive grep. Он меняет поведение Intruder, заставляя его парсить каждый ответ перед тем, как сделать новый запрос. Сделал запрос, вытащил токен и подставил его в следующий запрос.
Для теста я использую тестовое уязвимое приложение DVWA, просто потому, что на уровне High там есть защита токеном CSRF. Ты можешь использовать любой сайт, на который получил разрешение для тестов. Если хочешь установить DVWA, сделай это через Docker:
docker run -d -p 8085:80 vulnerables/web-dvwa
Burp некорректно работает с доменом localhost и IP-адресом 127., поэтому добавь в hosts локальный домен:
# Other hosts127.0.0.1 test.local
Зайди на http://, логинься с кредами admin/. Промотай вниз, нажми кнопку создания базы данных. Приложение создаст базу и предложит снова залогиниться. На этот раз используй admin/. Найди меню DVWA Security, измени уровень безопасности на High.
Перед атакой идем на /. Это форма смены пароля, которая защищена от CSRF. Вбиваем любые данные и отправляем форму, чтобы перехватить GET-запрос.
Нужно убедиться, что защита от CSRF включена: пойманный запрос перекидываю в Repeater и снова отправляю на сервер. В ответе ошибка: приложение ругается на неправильный токен. Значит, мы на верном пути.

Отправляю запрос в Intruder. Так как это форма смены пароля, в запросе два поля, которые должны содержать одинаковые данные. Выделяю значения параметров password_new и password_conf, делаю их переменными (или точками инъекции, как тебе удобнее). В настройках пейлоадов указываю Simple list. Как словарь выбираю одинаковые файлы с паролями.
warning
Каждый раз, когда отправляешь запрос в Intruder, очищай маркеры кнопкой Clear. Если в запросе был выделен текст, Intruder автоматически пометит его как переменную. Если не заметишь, атака пойдет не по плану. Лучше приучить себя очищать запрос перед началом работы.
Вверху окна Intruder выбираем тип атаки Pitchfork. При такой атаке Intruder последовательно берет данные из словарей, никак не перемешивая их и не дублируя. У нас два пароля, и к каждому привязан свой словарь. Сначала Intruder возьмет по первой строчке и подставит в соответствующие переменные, потом — по второй, и так, пока не закончатся словари.
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Оформи подписку на материалы по тегу
Если тебе интересна эта тема целиком, можно открыть доступ не к одному материалу, а ко всем платным статьям выбранного тега.
Вариант 3. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»
