Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
generator-burp-extension — Tudo o que você precisa sobre Burp Extension Generation | Kitploit
Ferramentas/GitHubGitHub/rsrdesarrollo/generator-burp-extension
Scripting e AutomaçãoSegurança WebTestes de PenetraçãoUtilitários e Frameworks
GitHubrsrdesarrollo/generator-burp-extension

generator-burp-extension

Tudo o que você precisa sobre Burp Extension Generation

Ver Repositório

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
15827há 3 anosRevisado pelo Kitploit

Gerador de Extensões Burp NPM version

Instalação

Primeiro, instale o Yeoman e o generator-burp-extension usando npm (assumimos que já tem o node.js instalado).

root@kitploit:~
npm install -g yo
npm install -g generator-burp-extension

Depois gere o seu novo projeto:

root@kitploit:~
yo burp-extension

Funcionalidades da Extensão Burp

Quando gere o seu projeto de plugin, o generator perguntará quais funcionalidades devem ser incluídas no seu plugin. Se está familiarizado com o desenvolvimento de extensões Burp, os nomes das funcionalidades serão suficientemente descritivos, mas, se é novo em extensões Burp, aqui está uma breve descrição do que pode ser feito com cada funcionalidade.

GUI da Tab de Extensão

Aba personalizada que será adicionada à interface do Burp. Normalmente é usada para adicionar alguma funcionalidade (como a extensão logger++) ou apenas para permitir ao utilizador configurar a extensão.

GUI da Tab do Editor de Mensagens

Aba personalizada do editor de mensagens que será adicionada à interface do Editor de Mensagens do Burp (Repeater, Intruder...). Normalmente é usada para fornecer algum tipo de funcionalidade personalizada de edição/visualização em payloads de pedidos/respostas. Um exemplo é a extensão JSON Beutifier.

GUI do Menu de Contexto

Um menu de contexto personalizado será adicionado à interface do Burp em praticamente qualquer lugar, ao clicar com o botão direito. O Burp permite mostrar menus de contexto em qualquer uma destas situações:

  • Resultados de ataque do Intruder.
  • Editor de posições de payload do Intruder.
  • Editor de pedidos.
  • Editor de respostas.
  • Visualizador de pedidos não editável.
  • Visualizador de respostas não editável.
  • Histórico do Proxy.
  • Resultados do Scanner.
  • Janela de resultados de pesquisa.
  • Mapa do site alvo (tabela).
  • Mapa do site alvo (árvore).

Um exemplo simples desta funcionalidade é a extensão copy-as-python-requests, que permite copiar um pedido como código Python (apenas um exemplo).

Ouvinte HTTP / Ouvinte de Proxy

O ouvinte será notificado de pedidos e respostas processados pela ferramenta Proxy (Ouvinte de Proxy) ou feitos por qualquer ferramenta do Burp (Ouvinte HTTP). As extensões podem realizar análise ou modificação personalizada destas mensagens.

Por outras palavras, os Ouvintes de Proxy intercetam os pedidos que vêm do navegador para o Burp e as respostas que vão do Burp para o navegador. Um Ouvinte HTTP interceta pedidos de saída do Burp para o servidor web e respostas de entrada vindas do servidor web.

Um exemplo de plugin real que usa esta funcionalidade da extensão é o AutoRepeater

Gerador de payloads do Intruder

Estenda os payloads do Intruder adicionando capacidades personalizadas de geração. Um possível uso desta funcionalidade poderia ser gerar números IBAN válidos aleatórios. Um exemplo real é a extensão Intruder file payload generator (não uso, é apenas um exemplo)

Processador de payloads do Intruder

Estenda os payloads do Intruder adicionando capacidades personalizadas de processamento. Um possível exemplo poderia ser realizar uma encriptação AES baseada numa chave estática.

Verificação do Scanner

Ao realizar a digitalização, o Burp pedirá à verificação para realizar a digitalização ativa ou passiva no pedido base e reportar quaisquer problemas identificados pelo Scanner.

Fornecedor de pontos de inserção do Scanner

Quando um pedido é digitalizado ativamente, o Scanner invocará isto, e o fornecedor deve fornecer uma lista de pontos de inserção personalizados que serão usados na digitalização.

Ação de tratamento de sessão

Cada ação registada estará disponível na interface de regras de tratamento de sessão para o utilizador selecionar como ação de regra. Os utilizadores podem optar por invocar uma ação diretamente por si só, ou após a execução de uma macro.

Ouvinte de estado da extensão

O ouvinte será notificado quando a extensão for descarregada do Burp. Nota: Quaisquer extensões que iniciem threads em segundo plano ou abram recursos do sistema (como ficheiros ou ligações a bases de dados) devem registar um ouvinte e terminar threads / fechar recursos quando a extensão for descarregada.

Ouvinte do Scanner

O ouvinte será notificado de novos problemas reportados pela ferramenta Scanner. As extensões podem realizar análise personalizada ou registo de problemas do Scanner registando um ouvinte do Scanner.

Ouvinte de alteração de âmbito

O ouvinte será notificado sempre que ocorrer uma alteração ao âmbito alvo de toda a suíte do Burp.

Provavelmente inútil porque o Burp não permite aceder à definição de âmbito global.

Compensações

Esta secção explica algumas decisões no desenvolvimento do template.

Porquê Java e não Python/Ruby

Antes de mais, não sou fã de Java

Como deve saber, o BurpSuite permite desenvolver extensões em três linguagens principais: Java, Python e Ruby. Na verdade, isto não é totalmente verdade. O Burp permite desenvolver em Jython e JRuby. O verdadeiro problema aqui é que, quando se usa Jython ou JRuby numa extensão Burp, ainda é necessário pensar em Java (porque é a linguagem principal do Burp), então, no final, estará a desenvolver em Python e Java, mas com muitos problemas para integrar o seu projeto com um IDE verdadeiro, com autocompletar e esse tipo de coisas modernas.

Outra boa razão para usar Java em vez de Jython é porque é baseado em Python 2.7, e não estou a usar JRuby porque não gosto de Ruby, é só isso.

Tudo é um Singleton (artigo principal)

Como deve ter reparado, todas as implementações de uma Interface Burp seguem um padrão Singleton; a principal razão para isto é completamente subjetiva.

A questão é que o Burp é uma excelente ferramenta, mas é um pouco obscuro sobre os seus internos e provavelmente um pouco confuso. Assim, por exemplo, o Burp permite registar vários IHTTPListeners, mas perderá decisões importantes como a ordem de chamada destes ouvintes. Este tipo de situações, na minha humilde opinião, pode obscurecer e dificultar a compreensão de uma Extensão Burp e a manutenibilidade do código.

Pode ver cada classe singleton como um ponto de ligação necessário com o Burp, que deve ser único. A partir desse ponto de ligação, pode controlar o seu código, realizando qualquer tipo de design orientado a objetos.

Licença

MIT © Raul Sampedro

Baixar ferramenta