Burp Suite
Life-Hack - Linux/Хакинг/Хакер/ИБ/OsintBurp Suite - интегрированная платформа, предназначенная для аудита веб-приложений как в ручном, так и в автоматическом режимах. Содержит инструменты для создания карты веб-приложения, поиска файлов и папок, модификации запросов, фаззинга, взлома паролей и многих других функций. В Burp Suite также есть магазин расширений, где можно найти дополнительные модули для улучшения функциональности приложения. Инструмент действует как прокси-механизм, перехватывающий и обрабатывающий все запросы браузера. Пользователи могут установить сертификат Burp для анализа защищенных https-соединений.
Если посмотреть статистику и репорты Bug Bounty программ — практически везде на скриншотах можно встретить использование этого инструмента. Вместе с OWASP ZAP, Burp Suite является одним из самых популярных наборов утилит для тестирования веб-приложений.
Proxy — находится между браузером пользователя и тестируемым веб-приложением. Перехватывает все сообщения, передаваемые по протоколу HTTP(S).
Intruder — утилита, позволяющая в автоматическом режиме производить атаки различного вида, такие как подбор пароля, перебор идентификаторов, фаззинг и так далее.
Repeater — утилита для ручного манипулирования и повторной выдачи отдельных HTTP-запросов и анализа ответов приложения. Отправить запрос в Repeater можно из любой другой утилиты Burp Suite.
Spider — автоматически собирает данные о функциях и компонентах веб-приложения.
Clickbandit — моделирует кликджекинг-атаки (clickjacking attacks), при которых поверх страницы приложения загружается невидимая страница, подготовленная злоумышленниками.
DOM Invader — проверяет веб-приложение на уязвимость DOM-based межсайтовому скриптингу, внедрению вредоносного кода на страницу.
Scanner (в профессиональной и корпоративной редакциях) — автоматически сканирует уязвимости в веб-приложениях. Также существует в бесплатной версии, но, предоставляет только описание возможностей.
Sequencer — анализирует качество случайности в выборке элементов данных. Можно использовать для тестирования сеансовых маркеров приложения или других важных элементов данных, которые должны быть непредсказуемыми, например маркеров анти-CSRF, маркеров сброса пароля и так далее.
Target — создает карту сайта с подробной информацией о тестируемом приложении. Показывает, какие цели находятся в процессе тестирования, и позволяет управлять процессом обнаружения уязвимостей.
Decoder — преобразовывает закодированные данные в исходную форму или необработанные в различные закодированные и хешированные формы. Способен распознавать несколько форматов кодирования, используя эвристические методы.
Comparer — предоставляет функцию визуального сравнения различий данных. Можно сравнить:
- ответы на неудачные входы в систему с использованием действительных и недействительных имен пользователей;
- несколько больших ответов, полученные в результате атаки, отличающихся по длине от базовых;
- записи истории прокси, созданные разными пользователями, и пр.
Extender — позволяет расширить функциональность пакета за счет дополнительных плагинов. Предоставляет опции по загрузке и управлению расширениями, а также по настройке параметров плагинов. Специальные расширения помогут, изменять HTTP-запросы и ответы, настраивать пользовательский интерфейс, добавлять пользовательские проверки сканера и получать доступ к ключевой информации во время выполнения. Расширения доступны в официальном магазине BApp Store.
Одна из основных утилит для тестирования это Burp Intruder. Принцип его работы заключается в следующем: он обрабатывает каждый HTTP-запрос (называемый «базовым запросом»), изменяя параметры различными способами, выдавая каждую измененную версию запроса и анализируя ответы приложения для идентификации интересных функций или поведения веб-приложения.
Для каждой атаки существует возможность указать набор полезных нагрузок (пейлоадов) и их позиции в базовом запросе. Доступны многочисленные методы создания полезных нагрузок (в том числе простые списки строк, чисел, дат, брутфорс, битфлиппинг и многие другие). Для анализа результатов и выявления интересных вопросов для дальнейшего изучения доступны различные инструменты.
На изображении использование Burp Intruder — установка значений пейлоадов для подбора пароля. Burp Intruder обладает очень гибкой системой настроек, благодаря чему может быть использован для автоматизации множества видов атак. Вы можете использовать его и для выполнения иных задач, например, подбора пользовательских идентификаторов, сбора важной информации или фаззинга.
Типы возможных атак зависят от особенностей конкретного приложения и могут включать: проверку на наличие SQL-инъекций, XSS, переполнение буфера, обход директории; bruteforce-атаки по различным схемам аутентификации, перебор значений, манипуляции с содержимым параметров; поиск скрытого содержимого и функционала, вычисление идентификаторов сессий и их перехвата, сбор данных, реализация DoS-атак связанных с особенностями веб-приложения.
На изображении показано использование Burp Intruder для выявления sql-инъекций.
Burp Intruder (в Pro версии) содержит множество заранее подобранных пейлоадов (строк, позволяющих выявить наличие уязвимостей). Также в него могут быть загружены дополнительные пейлоды (например имена пользователей или пароли).
Основу работы каждой атаки составляет отсылка модифицированных HTTP-запросов. Их содержимое генерируется на основе первоначального запроса и установленными пейлоад-позициями. Результатом работы будет таблица с различными данными (статус, длина ответа и т.д.)
Burp Intruder поддерживает следующие виды атак:
- Sniper — используется отдельный набор данных — одно поле (участок, отмеченный маркерами) — один пейлоад. Данный тип атак полезен при индивидуальном тестировании полей на наличие общих уязвимостей (таких как XSS).
- Battering ram — при таком виде атак используется принцип — все поля — один пейлоад. Это может пригодиться когда для осуществления атаки необходимо помещать одни и те же данные сразу во множество позиций.
- Pitchfork — этот вид атак использует несколько пейлодов для нескольких полей. Например, при первом запросе первая строка из первого проверочного набора будет помещена на первое место обозначенное маркерами. А первая строка из второго набора поместится на вторую позицию. При формировании второго запроса на первое место будет помещена вторая строка из первого набора, а на второе — вторая строка из второго набора. Такой вид атак может пригодиться в ситуациях, когда приложению нужно отсылать всё время разные, но каким-то образом взаимосвязанные данные. Например, если необходимо отправлять имя пользователя в одном поле и его ID в другом.
- Сluster bomb — этот вид атак использует перебор основного набора пейлоадов и добавление вторичных. Это удобно использовать к примеру для подбора паролей: при первом запросе Intruder поместит на первую позицию первую строку из первого набора пейлоадов, на вторую первую строку из второго. При втором запросе на первом месте останется первая строка первого набора, а на вторую будет помещена вторая строка второго набора. Потом третья, и так далее.
Burp Suite — один из самых популярных инструментов для аудита безопасности веб-приложений. Навыки работы с пакетом необходимы пентестерам и «белым» хакерам — специалистам, которые проводят аудит безопасности веб-приложений для обнаружения уязвимостей и багов.