March 4

День 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 предоставляет обзор расширений, загруженных в инструмент. Давайте рассмотрим различные компоненты этого интерфейса:

  1. Список расширений : В верхнем поле отображается список расширений, установленных в Burp Suite для текущего проекта. Вы можете активировать или деактивировать отдельные расширения.
  2. Управление расширениями : В левой части интерфейса расширений расположены параметры для управления расширениями:
    • Добавить : С помощью этой кнопки вы можете установить новые расширения из файлов на вашем диске. Эти файлы могут представлять собой модули, написанные вами самостоятельно, или модули, полученные из внешних источников, которые недоступны в официальном магазине BApp.
    • Удалить : Эта кнопка позволяет удалить выбранные расширения из Burp Suite .
    • Кнопки «Вверх/Вниз» : Эти кнопки управляют порядком отображения установленных расширений. Порядок определяет последовательность вызова расширений при обработке трафика. Расширения применяются в порядке убывания, начиная с верхней части списка и двигаясь вниз. Порядок имеет важное значение, особенно при работе с расширениями, изменяющими запросы, поскольку некоторые из них могут конфликтовать или мешать другим.
  3. Подробности, вывод и ошибки : В нижней части окна расположены разделы для выбранного в данный момент расширения:
    • Подробности : В этом разделе представлена ​​информация о выбранном расширении, такая как его название, версия и описание.
    • Вывод : Расширения могут выводить информацию во время своего выполнения, и в этом разделе отображаются все соответствующие выходные данные или результаты.
    • Ошибки : Если во время выполнения расширения возникнут какие-либо ошибки, они будут отображены в этом разделе. Это может быть полезно для отладки и устранения неполадок, связанных с расширением.

Вкратце, интерфейс расширений в Burp Suite позволяет пользователям управлять установленными расширениями и отслеживать их состояние, активировать или деактивировать для конкретных проектов, а также просматривать важные сведения, результаты и ошибки, связанные с каждым расширением. Использование расширений превращает Burp Suite в мощную и настраиваемую платформу для различных задач тестирования безопасности и оценки веб-приложений.

Вопрос: Расширения вызываются в порядке возрастания (A) или убывания (D)?

Ответ: 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:

  1. Перейдите во вкладку BApp Store в Burp Suite .
  2. Воспользуйтесь функцией поиска, чтобы найти Request Timer . Для этого расширения должен быть только один результат.
  3. Нажмите на найденное расширение, чтобы просмотреть более подробную информацию.
  4. Нажмите кнопку «Установить» , чтобы установить расширение 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 на вашем локальном компьютере:

  1. Скачать JAR-файл Jython : Зайдите на веб-сайт Jython и скачайте автономный JAR- архив. Найдите опцию «Jython Standalone» . Сохраните JAR- файл в папку на вашем диске.
  2. Настройка Jython в Burp Suite : Откройте Burp Suite и перейдите в модуль «Расширения» . Затем перейдите на вкладку « Настройки расширений» .
  3. Среда Python : прокрутите вниз до раздела "Среда Python".
  4. Укажите местоположение 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 поддерживает написание расширений на нескольких языках, например:

  1. Java (нативно): Вы можете напрямую использовать Java для написания расширений для Burp Suite , используя преимущества мощных доступных API.
  2. Python (через Jython): Если вы предпочитаете Python в качестве языка программирования, вы можете использовать Jython, который представляет собой реализацию Python на Java, для создания расширений Burp Suite .
  3. Ruby (через JRuby): Разработчики, знакомые с Ruby, могут использовать JRuby, реализацию Ruby на Java, для создания расширений Burp Suite .

Важно отметить, что разработка расширений для Burp Suite может быть сложной задачей, выходящей за рамки данного модуля. Однако, если вас интересует дальнейшее изучение этой области и создание пользовательских расширений, PortSwigger предоставляет исчерпывающий справочник, который является отличным ресурсом для разработки расширений Burp Suite .

Чтобы узнать больше о разработке расширений для Burp Suite и получить доступ к подробной справочной информации, вы можете посетить официальную документацию PortSwigger . Этот ресурс предоставит информацию и рекомендации, необходимые для создания мощных и настраиваемых расширений, которые улучшат ваш опыт работы с Burp Suite .

Задание 6. Заключение

Поздравляем! Вы успешно завершили модуль «Расширения Burp Suite» . Пройдя этот модуль, вы получили ценные знания о том, как использовать расширения для расширения функциональности Burp Suite .

Теперь вы хорошо понимаете, как:

  1. Устанавливайте и управляйте расширениями из магазина BApp, чтобы расширить возможности Burp Suite.
  2. Интегрируйте Jython, чтобы использовать модули Python в Burp Suite .
  3. Изучите API, позволяющие разрабатывать собственные модули на Java, Python или Ruby.

Обладая этими навыками, вы сможете в полной мере использовать модуль Burp Suite Extensions при тестировании безопасности веб-приложений и оценке уязвимостей.

Отличная работа над модулем, и отдельная благодарность за вашу целеустремленность и старания! Продолжайте изучать, совершенствовать и оттачивать свои навыки в области кибербезопасности. Успешного хакинга!


Основная группа обучения ИБ
Lab-группу с полезным софтом / книгами / аудио.
Чат для обсуждений, задавай свои вопросы.
P.S. С вами был @Fnay_Offensive
До новой встречи, user_name!