
Uma extensão do Burp Suite que integra o GPT da OpenAI para realizar uma varredura passiva adicional para descobrir vulnerabilidades altamente personalizadas e permite executar análise baseada em tráfego de qualquer tipo.
[!IMPORTANT] Anunciamos o lançamento do BurpGPT Pro, a edição especialmente desenvolvida para atender às necessidades de profissionais e boutiques de cibersegurança. Descubra uma série de funcionalidades poderosas e uma interface amigável que aprimora suas capacidades e garante uma experiência de usuário ideal. Para acessar esses benefícios, visite nosso site e leia a documentação para mais informações.
[!WARNING] Observe que a edição Comunitária não é mais mantida nem funcional. Para continuar recebendo atualizações, novos recursos, correções de bugs e melhorias, considere atualizar para a edição Pro. Não é mais útil registrar
Issuespara a edição Comunitária.
O burpgpt aproveita o poder da IA para detectar vulnerabilidades de segurança que os scanners tradicionais podem deixar passar. Ele envia o tráfego da web para um modelo da OpenAI especificado pelo usuário, permitindo uma análise sofisticada dentro do scanner passivo. Esta extensão oferece prompts personalizáveis que possibilitam uma análise de tráfego web adaptada às necessidades específicas de cada usuário. Confira a seção Exemplos de Casos de Uso para se inspirar.
A extensão gera um relatório de segurança automatizado que resume possíveis problemas de segurança com base no prompt do usuário e nos dados em tempo real das requisições emitidas pelo Burp. Ao alavancar a IA e o processamento de linguagem natural, a extensão simplifica o processo de avaliação de segurança e fornece aos profissionais de segurança uma visão geral de alto nível do aplicativo ou endpoint escaneado. Isso permite que eles identifiquem mais facilmente possíveis problemas de segurança e priorizem sua análise, ao mesmo tempo que cobrem uma superfície de ataque potencial maior.
[!WARNING] O tráfego de dados é enviado para a
OpenAIpara análise. Se você tiver preocupações sobre isso ou estiver usando a extensão para aplicações críticas de segurança, é importante considerar isso cuidadosamente e revisar a Política de Privacidade da OpenAI para obter mais informações.
[!WARNING] Embora o relatório seja automatizado, ele ainda requer triagem e pós-processamento por profissionais de segurança, pois pode conter falsos positivos.
[!WARNING] A eficácia desta extensão depende fortemente da qualidade e precisão dos prompts criados pelo usuário para o modelo
GPTselecionado. Essa abordagem direcionada ajudará a garantir que omodelo GPTgere resultados precisos e valiosos para sua análise de segurança.
verificação de scanner passivo, permitindo que os usuários enviem dados HTTP para um modelo GPT controlado pela OpenAI para análise através de um sistema de placeholders.modelos GPT da OpenAI para realizar análises abrangentes de tráfego, permitindo a detecção de vários problemas além de apenas vulnerabilidades de segurança em aplicações escaneadas.tokens GPT usados na análise, permitindo ajustes precisos do comprimento máximo do prompt.modelos OpenAI para escolher, permitindo que selecionem o que melhor atende às suas necessidades.prompts e liberar possibilidades ilimitadas para interagir com os modelos OpenAI. Navegue pelos Exemplos de Casos de Uso para se inspirar.Sistema Operacional: Compatível com sistemas operacionais Linux, macOS e Windows.
Java Development Kit (JDK): Versão 11 ou superior.
Burp Suite Professional ou Community Edition: Versão 2023.3.2 ou superior.
[!IMPORTANT] Observe que o uso de qualquer versão inferior à
2023.3.2pode resultar em um java.lang.NoSuchMethodError. É crucial usar a versão especificada ou uma mais recente para evitar esse problema.
Versão 6.9 ou superior (recomendado). O arquivo build.gradle está disponível no repositório do projeto.JAVA_HOME para apontar para o diretório de instalação do JDK.Certifique-se de que todos os requisitos de sistema, incluindo uma versão compatível do Burp Suite, sejam atendidos antes de compilar e executar o projeto. Observe que as dependências externas do projeto serão gerenciadas e instaladas automaticamente pelo Gradle durante o processo de compilação. Aderir aos requisitos ajudará a evitar possíveis problemas e reduzirá a necessidade de abrir novas issues no repositório do projeto.
Certifique-se de ter o Gradle instalado e configurado.
Baixe o repositório do burpgpt:
git clone https://github.com/aress31/burpgpt
cd .\burpgpt\
Compile o jar independente:
./gradlew shadowJar
Burp SuitePara instalar o burpgpt no Burp Suite, primeiro vá para a aba Extensions e clique no botão Add. Em seguida, selecione o arquivo burpgpt-all.jar localizado na pasta .\lib\build\libs para carregar a extensão.
Para começar a usar o burpgpt, os usuários precisam concluir as seguintes etapas no painel de Configurações, que pode ser acessado na barra de menus do Burp Suite:
chave de API OpenAI válida.modelo.tamanho máximo do prompt. Este campo controla o comprimento máximo do prompt enviado para a OpenAI para evitar exceder o maxTokens dos modelos GPT (tipicamente em torno de 2048 para GPT-3).
Uma vez configurado conforme descrito acima, o scanner passivo do Burp envia cada requisição para o modelo OpenAI escolhido através da API OpenAI para análise, produzindo descobertas de severidade do tipo Informational com base nos resultados.
O burpgpt permite que os usuários personalizem o prompt para análise de tráfego usando um sistema de placeholders. Para incluir informações relevantes, recomendamos o uso destes placeholders, que a extensão manipula diretamente, permitindo a inserção dinâmica de valores específicos no prompt:
Esses placeholders podem ser usados no prompt personalizado para gerar dinamicamente um prompt de análise de requisição/resposta específico para a requisição escaneada.
[!NOTE] O
Burp Suiteoferece a capacidade de suportarplaceholdersarbitrários através do uso de Regras de manipulação de sessão ou extensões como Custom Parameter Handler, permitindo uma personalização ainda maior dosprompts.
A lista a seguir de exemplos de casos de uso demonstra a natureza personalizada e altamente customizável do burpgpt, que permite aos usuários adaptar a análise de tráfego web às suas necessidades específicas.
Identificando possíveis vulnerabilidades em aplicações web que usam uma biblioteca criptográfica afetada por um CVE específico:
Analyse the request and response data for potential security vulnerabilities related to the {CRYPTO_LIBRARY_NAME} crypto library affected by CVE-{CVE_NUMBER}:
Web Application URL: {URL}
Crypto Library Name: {CRYPTO_LIBRARY_NAME}
CVE Number: CVE-{CVE_NUMBER}
Request Headers: {REQUEST_HEADERS}
Response Headers: {RESPONSE_HEADERS}
Request Body: {REQUEST_BODY}
Response Body: {RESPONSE_BODY}
Identify any potential vulnerabilities related to the {CRYPTO_LIBRARY_NAME} crypto library affected by CVE-{CVE_NUMBER} in the request and response data and report them.
Escaneando vulnerabilidades em aplicações web que usam autenticação biométrica analisando dados de requisição e resposta relacionados ao processo de autenticação:
Analyse the request and response data for potential security vulnerabilities related to the biometric authentication process:
Web Application URL: {URL}
Biometric Authentication Request Headers: {REQUEST_HEADERS}
Biometric Authentication Response Headers: {RESPONSE_HEADERS}
Biometric Authentication Request Body: {REQUEST_BODY}
Biometric Authentication Response Body: {RESPONSE_BODY}
Identify any potential vulnerabilities related to the biometric authentication process in the request and response data and report them.
Analisando os dados de requisição e resposta trocados entre funções serverless em busca de possíveis vulnerabilidades de segurança:
Analyse the request and response data exchanged between serverless functions for potential security vulnerabilities:
Serverless Function A URL: {URL}
Serverless Function B URL: {URL}
Serverless Function A Request Headers: {REQUEST_HEADERS}
Serverless Function B Response Headers: {RESPONSE_HEADERS}
Serverless Function A Request Body: {REQUEST_BODY}
Serverless Function B Response Body: {RESPONSE_BODY}
Identify any potential vulnerabilities in the data exchanged between the two serverless functions and report them.
Configurações que permite aos usuários definir o limite maxTokens para requisições, limitando assim o tamanho da requisição. <- Exclusivo da edição Pro do BurpGPT.modelo de IA, permitindo que os usuários executem e interajam com o modelo em suas máquinas locais, potencialmente melhorando os tempos de resposta e a privacidade dos dados. <- Exclusivo da edição Pro do BurpGPT.maxTokens para cada modelo a fim de transmitir a quantidade máxima de dados permitida e obter a resposta GPT mais extensa possível.Burp Suite. <- Exclusivo da edição Pro do BurpGPT.A extensão está atualmente em desenvolvimento e recebemos feedback, comentários e contribuições para torná-la ainda melhor.
Se esta extensão economizou seu tempo e trabalho durante uma avaliação de segurança, considere mostrar seu apoio patrocinando um café ☕ para o desenvolvedor. É o combustível que impulsiona o desenvolvimento, afinal. Basta clicar no botão brilhante de Patrocinar no topo da página ou clique aqui para contribuir e manter a cafeína fluindo. 💸
Encontrou um bug? Bem, não deixe ele rastejar por aí! Vamos esmagá-lo juntos como dois sussurradores de bugs! 🐛💪
Por favor, relate quaisquer problemas no rastreador de issues do GitHub. Juntos, vamos tornar esta extensão tão confiável quanto uma barata sobrevivendo a um apocalipse nuclear! 🚀
Quer causar um impacto com suas habilidades de codificação? 💻
Ótimo! Contribuições são bem-vindas e muito apreciadas. Envie todos os PRs no rastreador de pull requests do GitHub. Juntos podemos tornar esta extensão ainda mais incrível! 🚀
Consulte o LICENSE.
Burp Suite, fornecendo todos os recursos nativos para pré e pós-processamento, incluindo a exibição dos resultados da análise diretamente na interface do Burp para análise eficiente.Burp Event Log nativo, permitindo que os usuários resolvam rapidamente problemas de comunicação com a API OpenAI.| Placeholder | Descrição |
|---|
{REQUEST} | A requisição escaneada. |
{URL} | A URL da requisição escaneada. |
{METHOD} | O método de requisição HTTP usado na requisição escaneada. |
{REQUEST_HEADERS} | Os cabeçalhos da requisição escaneada. |
{REQUEST_BODY} | O corpo da requisição escaneada. |
{RESPONSE} | A resposta escaneada. |
{RESPONSE_HEADERS} | Os cabeçalhos da resposta escaneada. |
{RESPONSE_BODY} | O corpo da resposta escaneada. |
{IS_TRUNCATED_PROMPT} | Um valor booleano que é definido programaticamente como true ou false para indicar se o prompt foi truncado para o Tamanho Máximo do Prompt definido nas Configurações. |
Analisando os dados de requisição e resposta em busca de possíveis vulnerabilidades de segurança específicas a um framework de Aplicação de Página Única (SPA):
Analyse the request and response data for potential security vulnerabilities specific to the {SPA_FRAMEWORK_NAME} SPA framework:
Web Application URL: {URL}
SPA Framework Name: {SPA_FRAMEWORK_NAME}
Request Headers: {REQUEST_HEADERS}
Response Headers: {RESPONSE_HEADERS}
Request Body: {REQUEST_BODY}
Response Body: {RESPONSE_BODY}
Identify any potential vulnerabilities related to the {SPA_FRAMEWORK_NAME} SPA framework in the request and response data and report them.
GPTModelo de Vulnerabilidade