
Расширение для Burp Suite, которое интегрирует GPT от OpenAI для выполнения дополнительного пассивного сканирования с целью обнаружения высокоспецифичных уязвимостей и позволяет проводить анализ трафика любого типа.
[!ВАЖНО] Объявляем о запуске BurpGPT Pro — редакции, специально разработанной для удовлетворения потребностей профессионалов и кибер-бутиков. Откройте для себя множество мощных функций и удобный интерфейс, который расширяет ваши возможности и обеспечивает оптимальный пользовательский опыт. Чтобы получить доступ к этим преимуществам, посетите наш веб-сайт и прочитайте документацию для получения дополнительной информации.
[!ПРЕДУПРЕЖДЕНИЕ] Обратите внимание, что Community-edition больше не поддерживается и не работает. Чтобы продолжать получать обновления, новые функции, исправления ошибок и улучшения, рассмотрите возможность обновления до Pro-edition. Регистрировать
Issuesдля Community-edition больше не имеет смысла.
burpgpt использует мощь AI для обнаружения уязвимостей безопасности, которые традиционные сканеры могут пропустить. Он отправляет веб-трафик в указанную пользователем модель OpenAI, обеспечивая сложный анализ в пассивном сканере. Это расширение предлагает настраиваемые подсказки (prompts), позволяющие адаптировать анализ веб-трафика под конкретные потребности каждого пользователя. Ознакомьтесь с разделом Примеры использования для вдохновения.
Расширение генерирует автоматический отчёт по безопасности, который суммирует потенциальные проблемы безопасности на основе пользовательского prompt и данных в реальном времени из запросов, выданных Burp. Используя AI и обработку естественного языка, расширение упрощает процесс оценки безопасности и предоставляет специалистам по безопасности обзор сканируемого приложения или конечной точки на более высоком уровне. Это позволяет им легче выявлять потенциальные проблемы безопасности и расставлять приоритеты анализа, а также охватывать большую потенциальную поверхность атаки.
[!ПРЕДУПРЕЖДЕНИЕ] Трафик данных отправляется в
OpenAIдля анализа. Если у вас есть опасения по этому поводу или вы используете расширение для критически важных приложений безопасности, важно тщательно это обдумать и ознакомиться с Политикой конфиденциальности OpenAI для получения дополнительной информации.
[!ПРЕДУПРЕЖДЕНИЕ] Хотя отчёт автоматизирован, он всё равно требует триажирования и постобработки специалистами по безопасности, так как может содержать ложные срабатывания.
[!ПРЕДУПРЕЖДЕНИЕ] Эффективность этого расширения во многом зависит от качества и точности подсказок, созданных пользователем для выбранной модели
GPT. Такой целенаправленный подход поможет обеспечить, чтобы модельGPTгенерировала точные и ценные результаты для вашего анализа безопасности.
проверку пассивного сканирования, позволяя пользователям отправлять HTTP-данные в контролируемую OpenAI GPT-модель для анализа через систему плейсхолдеров.GPT-моделей OpenAI для проведения всестороннего анализа трафика, что позволяет обнаруживать различные проблемы, выходящие за рамки только уязвимостей безопасности в сканируемых приложениях.токенов GPT, используемых в анализе, позволяя точно настраивать максимальную длину подсказки (prompt).моделей OpenAI на выбор, позволяя им выбрать ту, которая лучше всего соответствует их потребностям.подсказки (prompts) и открывает безграничные возможности для взаимодействия с моделями OpenAI. Ознакомьтесь с Примерами использования для вдохновения.Операционная система: совместимо с операционными системами Linux, macOS и Windows.
Java Development Kit (JDK): версия 11 или выше.
Burp Suite Professional или Community Edition: версия 2023.3.2 или выше.
[!ВАЖНО] Обратите внимание, что использование любой версии ниже
2023.3.2может привести к ошибке java.lang.NoSuchMethodError. Крайне важно использовать указанную или более новую версию, чтобы избежать этой проблемы.
6.9 или выше (рекомендуется). Файл build.gradle находится в репозитории проекта.JAVA_HOME так, чтобы она указывала на каталог установки JDK.Пожалуйста, убедитесь, что все системные требования, включая совместимую версию Burp Suite, выполнены перед сборкой и запуском проекта. Обратите внимание, что внешние зависимости проекта будут автоматически управляться и устанавливаться Gradle в процессе сборки. Соблюдение требований поможет избежать потенциальных проблем и уменьшит необходимость открытия новых вопросов в репозитории проекта.
Убедитесь, что у вас установлен и настроен Gradle.
Загрузите репозиторий burpgpt:
git clone https://github.com/aress31/burpgpt
cd .\burpgpt\
Соберите автономный jar:
./gradlew shadowJar
Burp SuiteЧтобы установить burpgpt в Burp Suite, сначала перейдите на вкладку Extensions и нажмите кнопку Add. Затем выберите файл burpgpt-all jar, расположенный в папке .\lib\build\libs, для загрузки расширения.
Чтобы начать использовать burpgpt, пользователям необходимо выполнить следующие шаги на панели Settings, доступ к которой можно получить из строки меню Burp Suite:
API-ключ OpenAI.модель.максимальный размер подсказки (max prompt size). Это поле контролирует максимальную длину prompt, отправляемую в OpenAI, чтобы не превысить maxTokens моделей GPT (обычно около 2048 для GPT-3).
После настройки, как описано выше, пассивный сканер Burp отправляет каждый запрос выбранной модели OpenAI через API OpenAI для анализа, создавая результаты уровня серьёзности Informational на основе полученных результатов.
burpgpt позволяет пользователям настраивать prompt для анализа трафика с помощью системы плейсхолдеров. Чтобы включить соответствующую информацию, мы рекомендуем использовать эти плейсхолдеры, которые расширение обрабатывает напрямую, позволяя динамически вставлять конкретные значения в prompt:
Эти плейсхолдеры можно использовать в пользовательском prompt для динамической генерации prompt для анализа запроса/ответа, специфичного для сканируемого запроса.
[!ПРИМЕЧАНИЕ]
Burp Suiteпредоставляет возможность поддерживать произвольныеплейсхолдерыс помощью правил обработки сессий или расширений, таких как Custom Parameter Handler, что позволяет ещё больше настраиватьprompts.
Следующий список примеров использования демонстрирует индивидуальный и высоко настраиваемый характер burpgpt, который позволяет пользователям адаптировать анализ веб-трафика к своим конкретным потребностям.
Выявление потенциальных уязвимостей в веб-приложениях, использующих криптобиблиотеку, затронутую определённым CVE:
Проанализируйте данные запроса и ответа на предмет потенциальных уязвимостей безопасности, связанных с криптобиблиотекой {CRYPTO_LIBRARY_NAME}, затронутой CVE-{CVE_NUMBER}:
URL веб-приложения: {URL}
Название криптобиблиотеки: {CRYPTO_LIBRARY_NAME}
Номер CVE: CVE-{CVE_NUMBER}
Заголовки запроса: {REQUEST_HEADERS}
Заголовки ответа: {RESPONSE_HEADERS}
Тело запроса: {REQUEST_BODY}
Тело ответа: {RESPONSE_BODY}
Определите любые потенциальные уязвимости, связанные с криптобиблиотекой {CRYPTO_LIBRARY_NAME}, затронутой CVE-{CVE_NUMBER}, в данных запроса и ответа и сообщите о них.
Сканирование на наличие уязвимостей в веб-приложениях, использующих биометрическую аутентификацию, путём анализа данных запроса и ответа, связанных с процессом аутентификации:
Проанализируйте данные запроса и ответа на предмет потенциальных уязвимостей безопасности, связанных с процессом биометрической аутентификации:
URL веб-приложения: {URL}
Заголовки запроса биометрической аутентификации: {REQUEST_HEADERS}
Заголовки ответа биометрической аутентификации: {RESPONSE_HEADERS}
Тело запроса биометрической аутентификации: {REQUEST_BODY}
Тело ответа биометрической аутентификации: {RESPONSE_BODY}
Определите любые потенциальные уязвимости, связанные с процессом биометрической аутентификации, в данных запроса и ответа и сообщите о них.
Анализ данных запроса и ответа, которыми обмениваются бессерверные функции, на предмет потенциальных уязвимостей безопасности:
Settings, позволяющее пользователям устанавливать лимит maxTokens для запросов, тем самым ограничивая размер запроса. <- Эксклюзивно для Pro-edition BurpGPT.AI-модели, позволяя пользователям запускать модель и взаимодействовать с ней на своих локальных машинах, что потенциально улучшает время ответа и конфиденциальность данных. <- Эксклюзивно для Pro-edition BurpGPT.maxTokens для каждой модели, чтобы передавать максимально допустимый объём данных и получать наиболее полный ответ GPT.Burp Suite. <- Эксклюзивно для Pro-edition BurpGPT.Расширение находится в стадии разработки, и мы приветствуем отзывы, комментарии и вклад, чтобы сделать его ещё лучше.
Если это расширение сэкономило вам время и избавило от хлопот во время оценки безопасности, подумайте о том, чтобы проявить любовь, спонсируя чашечку кофе ☕ для разработчика. В конце концов, это топливо, которое питает разработку. Просто нажмите блестящую кнопку "Спонсор" в верхней части страницы или нажмите здесь, чтобы внести свой вклад и поддерживать поток кофеина. 💸
Нашли ошибку? Ну, не дайте ей ползать! Давайте раздавим её вместе, как пара шептунов-жуков! 🐛💪
Пожалуйста, сообщайте о любых проблемах на трекере проблем GitHub. Вместе мы сделаем это расширение таким же надёжным, как таракан, переживший ядерный апокалипсис! 🚀
Хотите произвести фурор своими безумными навыками программирования? 💻
Отлично! Вклад приветствуется и высоко ценится. Пожалуйста, отправляйте все PR на трекере пулл-реквестов GitHub. Вместе мы сможем сделать это расширение ещё более потрясающим! 🚀
См. LICENSE.
Burp Suite, предоставляя все встроенные функции для предварительной и последующей обработки, включая отображение результатов анализа непосредственно в интерфейсе Burp для эффективного анализа.Журнал событий Burp, позволяя пользователям быстро решать проблемы связи с API OpenAI.| Плейсхолдер | Описание |
|---|
{REQUEST} | Сканируемый запрос. |
{URL} | URL сканируемого запроса. |
{METHOD} | Метод HTTP-запроса, используемый в сканируемом запросе. |
{REQUEST_HEADERS} | Заголовки сканируемого запроса. |
{REQUEST_BODY} | Тело сканируемого запроса. |
{RESPONSE} | Сканируемый ответ. |
{RESPONSE_HEADERS} | Заголовки сканируемого ответа. |
{RESPONSE_BODY} | Тело сканируемого ответа. |
{IS_TRUNCATED_PROMPT} | Логическое значение, программно устанавливаемое в true или false, чтобы указать, был ли prompt обрезан до Максимального размера подсказки, заданного в Настройках. |
Проанализируйте данные запроса и ответа, которыми обмениваются бессерверные функции, на предмет потенциальных уязвимостей безопасности:
URL бессерверной функции A: {URL}
URL бессерверной функции B: {URL}
Заголовки запроса бессерверной функции A: {REQUEST_HEADERS}
Заголовки ответа бессерверной функции B: {RESPONSE_HEADERS}
Тело запроса бессерверной функции A: {REQUEST_BODY}
Тело ответа бессерверной функции B: {RESPONSE_BODY}
Определите любые потенциальные уязвимости в данных, которыми обмениваются две бессерверные функции, и сообщите о них.
Анализ данных запроса и ответа на предмет потенциальных уязвимостей безопасности, специфичных для фреймворка одностраничных приложений (SPA):
Проанализируйте данные запроса и ответа на предмет потенциальных уязвимостей безопасности, специфичных для фреймворка SPA {SPA_FRAMEWORK_NAME}:
URL веб-приложения: {URL}
Название фреймворка SPA: {SPA_FRAMEWORK_NAME}
Заголовки запроса: {REQUEST_HEADERS}
Заголовки ответа: {RESPONSE_HEADERS}
Тело запроса: {REQUEST_BODY}
Тело ответа: {RESPONSE_BODY}
Определите любые потенциальные уязвимости, связанные с фреймворком SPA {SPA_FRAMEWORK_NAME}, в данных запроса и ответа и сообщите о них.
GPTмодель уязвимости