День 41. Burp Suite: Extensions
Узнайте, как использовать расширения для расширения функциональности Burp Suite.
Задание 1. Введение
Добро пожаловать в комнату расширения Burp Suite!
В этой комнате мы рассмотрим модульные аспекты Burp Suite , сосредоточившись на его открытой функциональности, которая позволяет разработчикам создавать дополнительные модули для фреймворка.
Хотя разработка модулей Burp выходит за рамки данного модуля, мы кратко рассмотрим документацию по API и обсудим типичный процесс добавления новых модулей с помощью Burp Suite BApp Store .
Для прохождения этой комнаты вам не понадобится целевой компьютер, но убедитесь, что у вас есть доступ к Burp Suite . Если вы используете AttackBox, убедитесь, что он запущен, нажав синюю кнопку «Запустить AttackBox» в правом верхнем углу комнаты. Давайте погрузимся в захватывающий мир расширений и расширяемости Burp Suite !
Задание 2. The Extensions Interface
Интерфейс «Расширения» в Burp Suite предоставляет обзор расширений, загруженных в инструмент. Давайте рассмотрим различные компоненты этого интерфейса:
- Список расширений : В верхнем поле отображается список расширений, установленных в Burp Suite для текущего проекта. Вы можете активировать или деактивировать отдельные расширения.
- Управление расширениями : В левой части интерфейса расширений расположены параметры для управления расширениями:
- Добавить : С помощью этой кнопки вы можете установить новые расширения из файлов на вашем диске. Эти файлы могут представлять собой модули, написанные вами самостоятельно, или модули, полученные из внешних источников, которые недоступны в официальном магазине BApp.
- Удалить : Эта кнопка позволяет удалить выбранные расширения из Burp Suite .
- Кнопки «Вверх/Вниз» : Эти кнопки управляют порядком отображения установленных расширений. Порядок определяет последовательность вызова расширений при обработке трафика. Расширения применяются в порядке убывания, начиная с верхней части списка и двигаясь вниз. Порядок имеет важное значение, особенно при работе с расширениями, изменяющими запросы, поскольку некоторые из них могут конфликтовать или мешать другим.
- Подробности, вывод и ошибки : В нижней части окна расположены разделы для выбранного в данный момент расширения:
- Подробности : В этом разделе представлена информация о выбранном расширении, такая как его название, версия и описание.
- Вывод : Расширения могут выводить информацию во время своего выполнения, и в этом разделе отображаются все соответствующие выходные данные или результаты.
- Ошибки : Если во время выполнения расширения возникнут какие-либо ошибки, они будут отображены в этом разделе. Это может быть полезно для отладки и устранения неполадок, связанных с расширением.
Вкратце, интерфейс расширений в Burp Suite позволяет пользователям управлять установленными расширениями и отслеживать их состояние, активировать или деактивировать для конкретных проектов, а также просматривать важные сведения, результаты и ошибки, связанные с каждым расширением. Использование расширений превращает Burp Suite в мощную и настраиваемую платформу для различных задач тестирования безопасности и оценки веб-приложений.
Вопрос: Расширения вызываются в порядке возрастания (A) или убывания (D)?
Задание 3. The BApp Store
В Burp Suite магазин приложений Burp App Store (BApp Store) позволяет легко находить и беспрепятственно интегрировать официальные расширения в инструмент. Расширения могут быть написаны на различных языках, наиболее распространенными являются Java и Python. Расширения на Java автоматически интегрируются с фреймворком Burp Suite , в то время как для расширений на Python требуется интерпретатор Jython.
Чтобы ознакомиться с BApp Store и установить расширение для Java, давайте установим расширение Request Timer , написанное Ником Тейлором. Расширение Request Timer позволяет регистрировать время, необходимое для получения ответа на каждый запрос. Эта функция особенно полезна для выявления и использования уязвимостей, основанных на времени. Например, если форма авторизации обрабатывает запросы с действительными именами пользователей на секунду дольше, чем запросы с недействительными, мы можем использовать разницу во времени, чтобы определить, какие имена пользователей являются действительными.
Выполните следующие действия, чтобы установить расширение Request Timer из магазина BApp:
- Перейдите во вкладку BApp Store в Burp Suite .
- Воспользуйтесь функцией поиска, чтобы найти Request Timer . Для этого расширения должен быть только один результат.
- Нажмите на найденное расширение, чтобы просмотреть более подробную информацию.
- Нажмите кнопку «Установить» , чтобы установить расширение Request Timer.
После успешной установки расширения вы заметите, что в главном меню в верхней части интерфейса Burp Suite появится новая вкладка . Разные расширения могут вести себя по-разному. Некоторые могут добавлять новые пункты в контекстные меню, вызываемые щелчком правой кнопки мыши, в то время как другие создают совершенно новые вкладки в главной строке меню.
Поскольку данная установка является лишь примером использования BApp Store, мы не будем здесь рассматривать, как использовать Request Timer. Однако я настоятельно рекомендую открыть новую вкладку и изучить расширение, чтобы лучше понять его функциональность. Request Timer может быть полезен в различных сценариях, особенно при оценке безопасности веб-приложений и выявлении потенциальных уязвимостей, связанных со временем.
Задание 4. Jython
Примечание: Если вы используете AttackBox, интеграция с Jython уже выполнена, поэтому вы можете пропустить этот шаг.
Для использования модулей Python в Burp Suite необходимо подключить JAR- файл интерпретатора Jython, который представляет собой реализацию Python на Java. Интерпретатор Jython позволяет запускать расширения на основе Python в Burp Suite.
Выполните следующие шаги, чтобы интегрировать Jython в Burp Suite на вашем локальном компьютере:
- Скачать JAR-файл Jython : Зайдите на веб-сайт Jython и скачайте автономный JAR- архив. Найдите опцию «Jython Standalone» . Сохраните JAR- файл в папку на вашем диске.
- Настройка Jython в Burp Suite : Откройте Burp Suite и перейдите в модуль «Расширения» . Затем перейдите на вкладку « Настройки расширений» .
- Среда Python : прокрутите вниз до раздела "Среда Python".
- Укажите местоположение JAR-файла Jython : в поле «Местоположение автономного JAR- файла Jython» укажите путь к загруженному JAR- файлу Jython.
После выполнения этих шагов Jython будет интегрирован с Burp Suite , что позволит вам использовать модули Python в этом инструменте. Эта интеграция значительно увеличивает количество доступных расширений и расширяет ваши возможности при выполнении различных задач по тестированию безопасности и оценке веб-приложений.
Примечание: Процесс добавления Jython в Burp Suite одинаков для всех операционных систем, поскольку Java — это многоплатформенная технология.
Задание 5. The Burp Suite API
В модуле расширений Burp Suite вы получаете доступ к широкому спектру API- интерфейсов, позволяющих создавать и интегрировать ваши модули с Burp Suite . Эти API предоставляют различные функциональные возможности, позволяя расширять возможности Burp Suite в соответствии с вашими конкретными потребностями.
Чтобы просмотреть доступные конечные точки API , перейдите на вкладку «API» в модуле «Расширения». Каждый элемент, указанный на левой панели, представляет собой отдельную конечную точку API , доступную из расширений.
API расширений предоставляют разработчикам значительные возможности и гибкость при создании пользовательских расширений. Вы можете использовать эти API для беспрепятственного взаимодействия с существующим функционалом Burp Suite и адаптировать свои расширения для выполнения конкретных задач.
Burp Suite поддерживает написание расширений на нескольких языках, например:
- Java (нативно): Вы можете напрямую использовать Java для написания расширений для Burp Suite , используя преимущества мощных доступных API.
- Python (через Jython): Если вы предпочитаете Python в качестве языка программирования, вы можете использовать Jython, который представляет собой реализацию Python на Java, для создания расширений Burp Suite .
- Ruby (через JRuby): Разработчики, знакомые с Ruby, могут использовать JRuby, реализацию Ruby на Java, для создания расширений Burp Suite .
Важно отметить, что разработка расширений для Burp Suite может быть сложной задачей, выходящей за рамки данного модуля. Однако, если вас интересует дальнейшее изучение этой области и создание пользовательских расширений, PortSwigger предоставляет исчерпывающий справочник, который является отличным ресурсом для разработки расширений Burp Suite .
Чтобы узнать больше о разработке расширений для Burp Suite и получить доступ к подробной справочной информации, вы можете посетить официальную документацию PortSwigger . Этот ресурс предоставит информацию и рекомендации, необходимые для создания мощных и настраиваемых расширений, которые улучшат ваш опыт работы с Burp Suite .
Задание 6. Заключение
Поздравляем! Вы успешно завершили модуль «Расширения Burp Suite» . Пройдя этот модуль, вы получили ценные знания о том, как использовать расширения для расширения функциональности Burp Suite .
Теперь вы хорошо понимаете, как:
- Устанавливайте и управляйте расширениями из магазина BApp, чтобы расширить возможности Burp Suite.
- Интегрируйте Jython, чтобы использовать модули Python в Burp Suite .
- Изучите API, позволяющие разрабатывать собственные модули на Java, Python или Ruby.
Обладая этими навыками, вы сможете в полной мере использовать модуль Burp Suite Extensions при тестировании безопасности веб-приложений и оценке уязвимостей.
Отличная работа над модулем, и отдельная благодарность за вашу целеустремленность и старания! Продолжайте изучать, совершенствовать и оттачивать свои навыки в области кибербезопасности. Успешного хакинга!
Основная группа обучения ИБ
Lab-группу с полезным софтом / книгами / аудио.
Чат для обсуждений, задавай свои вопросы.
P.S. С вами был @Fnay_Offensive
До новой встречи, user_name!