Введение
Burp Intruder — это мощный инструмент в составе Burp Suite для автоматизации пользовательских атак на веб-приложения. Он обладает высокой степенью конфигурируемости и может использоваться для выполнения широкого спектра задач, от простого перебора (brute-force) до сложного сканирования уязвимостей.
Одной из ключевых особенностей Intruder являются его различные типы атак. Тип атаки "Cluster Bomb" особенно полезен, когда атака требует тестирования нескольких различных входных данных в комбинации. Он использует несколько наборов полезных нагрузок (payload sets), по одному для каждой определенной позиции, и перебирает все возможные комбинации полезных нагрузок. Это идеально подходит для сценариев, таких как перебор учетных данных формы входа, когда у вас есть список потенциальных имен пользователей и отдельный список потенциальных паролей.
В этой лаборатории вы научитесь настраивать и выполнять атаку типа "Cluster Bomb" с помощью Burp Intruder для обнаружения действительной комбинации имени пользователя и пароля на примере страницы входа.
Отправка запроса на вход в Intruder
На этом шаге вы запустите Burp Suite и веб-браузер, затем перехватите запрос на вход и отправите его в Burp Intruder для дальнейшего анализа.
Сначала вам нужно запустить Burp Suite.
- Нажмите на меню Application в верхнем левом углу рабочего стола.
- Перейдите в
Other->Burp Suite Community Edition.
Burp Suite запустится. Выберите "Temporary project" и нажмите "Next", затем нажмите "Start Burp".
Далее откройте веб-браузер Firefox и настройте его на использование Burp Suite в качестве прокси.
- Нажмите на меню Application ->
Internet->Firefox Web Browser. - В Firefox перейдите в
Settings->General->Network Settingsи нажмитеSettings.... - Выберите
Manual proxy configuration. - Установите
HTTP Proxyна127.0.0.1иPortна8080. - Установите флажок
Also use this proxy for HTTPS. - Нажмите
OK.
Теперь перейдите на целевую страницу входа. В адресной строке Firefox введите:
http://127.0.0.1:5000/login
Вы должны увидеть простую форму входа. В Burp Suite перейдите на вкладку Proxy, затем на подвкладку Intercept, и убедитесь, что перехват включен (кнопка должна гласить "Intercept is on").
Вернитесь в Firefox, введите test для имени пользователя и test для пароля, и нажмите кнопку Login. Запрос будет перехвачен на вкладке Proxy -> Intercept в Burp.
Теперь отправьте этот перехваченный запрос в Intruder.
- Щелкните правой кнопкой мыши в любом месте панели запроса.
- Выберите
Send to Intruderиз контекстного меню. - Вы увидите, что вкладка
Intruderподсветилась, указывая на то, что запрос был отправлен.
Теперь вы можете отключить перехват, нажав кнопку "Intercept is on" на вкладке Proxy -> Intercept.
Добавление маркеров полезной нагрузки (payload markers) в поля имени пользователя и пароля
На этом шаге вы настроите позиции полезной нагрузки в Burp Intruder. Позиции полезной нагрузки указывают Intruder, куда следует помещать полезные нагрузки во время атаки. Для атаки типа "Cluster Bomb" на форму входа нам нужны две позиции: одна для имени пользователя и одна для пароля.
Перейдите на вкладку Intruder в Burp Suite. Вы увидите четыре подвкладки: Target, Positions, Payloads и Options. Нажмите на вкладку Positions.
Здесь отображается запрос, который вы отправили из Proxy. Burp Intruder автоматически пытается угадать, куда следует помещать полезные нагрузки, и добавляет маркеры полезной нагрузки (§...§). Мы удалим их и установим свои для лучшего контроля.
- Нажмите кнопку
Clear §в правой части окна. Это удалит все автоматически добавленные маркеры полезной нагрузки. - В редакторе запроса найдите строку с параметром имени пользователя:
username=test. - Аккуратно выделите только значение
test. - Нажмите кнопку
Add §. Теперь строка должна выглядеть так:username=§test§. - Далее найдите строку с параметром пароля:
password=test. - Выделите только значение
test. - Снова нажмите кнопку
Add §. Теперь строка должна выглядеть так:password=§test§.
Теперь вы определили две позиции для полезной нагрузки. Burp Intruder будет подставлять данные в эти отмеченные места во время атаки.
Установка типа атаки "Cluster Bomb"
На этом шаге вы выберете подходящий тип атаки для нашей цели. Burp Intruder предлагает четыре типа атак, каждый из которых служит своей цели:
- Sniper: Использует один набор полезных нагрузок и нацеливается на одну позицию за раз.
- Battering Ram: Использует один набор полезных нагрузок и одновременно помещает одну и ту же полезную нагрузку во все позиции.
- Pitchfork: Использует несколько наборов полезных нагрузок, помещая по одной полезной нагрузке из каждого набора в соответствующую позицию.
- Cluster Bomb: Использует несколько наборов полезных нагрузок и пробует каждую комбинацию полезных нагрузок.
В нашем сценарии мы хотим протестировать каждый возможный пароль из одного списка против каждого возможного имени пользователя из другого списка. Тип атаки Cluster Bomb идеально подходит для этого.
На вкладке Intruder -> Positions найдите выпадающее меню Attack type в верхней части экрана.
- Нажмите на выпадающее меню.
- Выберите
Cluster Bombиз списка.
Обратите внимание, что после выбора Cluster Bomb вкладка Payloads теперь позволяет вам настроить несколько наборов полезных нагрузок, соответствующих количеству маркеров полезной нагрузки, которые вы определили на предыдущем шаге. В нашем случае у нас будет два набора полезных нагрузок для настройки.
Настройка двух списков полезных нагрузок (имена пользователей и пароли)
На этом шаге вы предоставите списки потенциальных имен пользователей и паролей, которые Intruder будет использовать для атаки.
Перейдите на вкладку Intruder -> Payloads.
Поскольку вы выбрали тип атаки Cluster Bomb и определили две позиции для полезных нагрузок, теперь вы можете настроить два отдельных списка полезных нагрузок.
Сначала настройте список имен пользователей (Набор полезных нагрузок 1):
- Убедитесь, что в выпадающем меню
Payload setвыбрано значение1. Это соответствует первому маркеру§, который вы добавили (имя пользователя). - В разделе
Payload Optionsнажмите кнопкуAdd. - Введите следующие потенциальные имена пользователей, по одному на строку:
userguestadminroot
Затем настройте список паролей (Набор полезных нагрузок 2):
- Измените выпадающее меню
Payload setс1на2. Это соответствует второму маркеру§(пароль). - В разделе
Payload Optionsнажмите кнопкуAdd. - Введите следующие потенциальные пароли, по одному на строку:
password123456qwertypassword123
Теперь вы настроили Intruder для тестирования всех комбинаций этих двух списков. Будет выполнено всего 4 (имени пользователя) x 4 (пароля) = 16 запросов.
Запуск атаки для тестирования всех комбинаций полезных нагрузок
На этом шаге вы запустите атаку и проанализируете результаты, чтобы найти правильные учетные данные для входа.
- В правом верхнем углу вкладки
Intruderнажмите кнопкуStart attack. - Откроется новое окно с заголовком "Intruder attack", и атака начнется немедленно.
В этом новом окне отображается таблица результатов. Вы увидите отправляемые запросы, и таблица будет заполняться результатами. Ключевые столбцы, на которые стоит обратить внимание:
Payload 1: Имя пользователя, использованное для данного запроса.Payload 2: Пароль, использованный для данного запроса.Status: Код состояния HTTP ответа (например, 200 для OK, 401 для Unauthorized).Length: Размер тела ответа в байтах.
Успешный вход, вероятно, приведет к другому ответу, чем неуспешный. Эта разница может быть видна в коде Status или в Length.
Просмотрите результаты. Вы должны заметить, что один запрос имеет другую Length и Status по сравнению с остальными. Большинство попыток приведут к статусу 401 Unauthorized, но правильный будет 200 OK. Длина ответа для успешного входа также будет отличаться.
Чтобы легко найти уникальный ответ, вы можете нажать на заголовки столбцов Status или Length, чтобы отсортировать результаты.
Успешный запрос будет иметь следующую комбинацию полезных нагрузок:
- Payload 1:
admin - Payload 2:
password123
Вы можете нажать на этот успешный запрос в таблице, чтобы просмотреть полный Request и Response в панелях ниже. Ответ для успешного входа будет содержать текст "Login Successful!".
Поздравляем, вы успешно использовали атаку Cluster Bomb для поиска действительных учетных данных!
Резюме
В этой лабораторной работе вы научились выполнять атаку Cluster Bomb с использованием Burp Intruder.
Вы начали с перехвата запроса на вход с помощью прокси Burp и отправки его в Intruder. Затем вы вручную настроили две отдельные позиции для полезных нагрузок в полях имени пользователя и пароля. Выбрав тип атаки Cluster Bomb, вы настроили два отдельных списка полезных нагрузок — один для имен пользователей и один для паролей.
Наконец, вы запустили атаку и проанализировали таблицу результатов, определив успешную комбинацию для входа, обратив внимание на аномальный код состояния ответа и длину. Это практическое упражнение демонстрирует мощь и полезность типа атаки Cluster Bomb для тестирования механизмов аутентификации с несколькими входными данными.
