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
HTTPSignatures — Uma extensão do Burp Suite que implementa o rascunho Signing HTTP Messages draft-ietf-httpbis-message-signatures-01. | Kitploit
Ferramentas/GitHubGitHub/nccgroup/httpsignatures
Proxies Web e InterceptaçãoTestes de Segurança de APIsSegurança WebCriptografiaAutenticaçãoSegurança de API
GitHubnccgroup/httpsignatures

HTTPSignatures

Uma extensão do Burp Suite que implementa o rascunho Signing HTTP Messages draft-ietf-httpbis-message-signatures-01.

Ver Repositório
42106há 4 anosRevisado pelo Kitploit

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 →
Site
Compartilhar

Extensão HTTPSignatures para Burp Suite

HTTPSignatures é uma extensão do Burp Suite que implementa o documento preliminar da especificação Signing HTTP Messages draft-ietf-httpbis-message-signatures-01. Isso permite que os usuários do Burp Suite testem perfeitamente aplicações que exigem HTTP Signatures.

Características

  • Cria automaticamente uma nova assinatura e digest no Burp Repeater, Intruder e Scanner quando a extensão detecta um cabeçalho HTTP Signature existente.
  • Suporta o algoritmo rsa-sha256 para assinar mensagens (RSASSA-PKCS1-v1_5 [RFC8017] usando SHA-256 [RFC6234]) e SHA-256 para o cabeçalho digest.
  • A extensão funciona no Burp Suite Professional e na edição gratuita Burp Suite Community Edition.

Uso

Instalação

Baixe o arquivo da última versão JAR e adicione-o no Burp Suite por meio da aba Extender / Extensions / Add.

Configuração

  1. Após carregar a extensão, um novo item de menu HTTP Signatures será adicionado ao Burp.
  2. Abra a aba de configuração (clique no item de menu HTTP Signatures).
  3. A configuração mínima exige que Header Name, keyId e Private key file name and path estejam configurados. Veja abaixo a descrição detalhada.
  4. Agora você pode usar Burp Proxy, Repeater, Intruder e Scanner. A extensão criará uma nova assinatura para cada requisição que contenha o Header Name configurado.

Uso

Após o HTTPSignatures ser configurado corretamente, a extensão do Burp Suite substituirá o valor do cabeçalho HTTP configurado na definição Header Name (ex.: Signature) por uma nova assinatura para cada requisição HTTP enviada por meio do Burp Proxy, Repeater, Intruder e Scanner.

Configuração do HTTPSignatures

Documentação

A extensão do Burp Suite deve ser configurada antes de poder ser usada. A configuração do HTTPSignatures pode ser encontrada no menu do Burp depois que ela é carregada (geralmente à direita do menu Help). O Header Name, o keyId e o Private key file name and path precisam estar configurados corretamente para que a extensão funcione. As demais configurações podem ser ajustadas opcionalmente.

  • Header Name: (valores de exemplo: Authorization, Signature): O nome do cabeçalho da requisição HTTP que contém a assinatura. O rascunho do IETF usa o nome de cabeçalho Signature. O Oracle Cloud (OCI) usa o nome de cabeçalho Authorization.

  • keyId: O parâmetro keyId é uma string US-ASCII usada por um verificador para identificar e/ou obter a chave de verificação da assinatura. Valores de exemplo podem ser https://mastodon.example.com/users/myUser (para ActivityPub) ou ocid1.tenancy.oc1.../ocid1.user.oc1.../{fingerprint} para OCI.

  • Private key file name and path: O caminho completo e o nome do arquivo que contém a chave privada (ex.: /home/${USER}/private_key.pem).

  • Digest Header Name: O nome do cabeçalho que contém o digest. Deve ser x-content-sha256 (para OCI) ou digest para a maioria das outras implementações.

  • Header Names to Sign: GET: Os nomes de cabeçalho a incluir nas requisições GET (ex.: date (request-target) host). O valor (request-target) é um identificador especial composto pelo método da requisição e pelo caminho e query da URI da requisição (ex.: get /foo?param=value).

  • Header Names to Sign: HEAD: Os nomes de cabeçalho a incluir nas requisições HEAD (ex.: date (request-target) host).

  • Header Names to Sign: DELETE: Os nomes de cabeçalho a incluir nas requisições DELETE (ex.: date (request-target) host).

  • Header Names to Sign: PUT: Os nomes de cabeçalho a incluir nas requisições PUT (ex.: date (request-target) host content-length content-type digest).

  • Header Names to Sign: POST: Os nomes de cabeçalho a incluir nas requisições POST (ex.: date (request-target) host content-length content-type digest).

  • Include query parameters in Signature: Este valor booleano especifica se os parâmetros de query (ex.: ?param=value) devem ser incluídos na assinatura. Embora o padrão do rascunho especifique que os parâmetros de query fazem parte do identificador (request-target), nem todas as implementações incluem parâmetros de query. O valor padrão é true.

  • Include the port in Signature: Algumas implementações não incluem a porta no cabeçalho host (ex.: localhost:8080). Esta configuração permite remover a porta do valor do cabeçalho host se definida como false. O valor padrão é true.

Perfis

A configuração do HTTPSignatures permite configurar vários perfis em abas. Crie uma nova aba clicando na aba .... Você pode nomear as abas clicando duas vezes em uma aba. Para salvar uma aba, clique no botão "Save". Para marcar uma aba como o perfil ativo, clique no botão "Use this profile". A aba ativa (perfil) é marcada com fonte e borda vermelhas.

Configurações Globais

A seção de configuração global contém configurações que se aplicam a todos os perfis.

  • Enable the extension for the following Burp Suite tools: A extensão pode ser ativada ou desativada para as seguintes ferramentas do Burp Suite:

    • Proxy (padrão: desativado)
    • Scanner (padrão: ativado)
    • Intruder (padrão: ativado)
    • Repeater (padrão: ativado)

    O proxy fica desativado por padrão. As outras ferramentas ficam ativadas por padrão. A ferramenta de proxy normalmente só deve ser ativada ao usar o recurso de interceptação. A extensão não atualizará a assinatura quando estiver desativada.

  • Enable Debug Logs: Marcar esta caixa de seleção exibirá logs de depuração na saída padrão. A saída pode ser configurada no Burp Suite em Extender -> Extensions e, em seguida, selecione a extensão Signing HTTP Messages. Na aba Output, você pode selecionar onde a saída padrão será exibida. O padrão é Shown in UI, em que a saída será exibida dentro do Burp Suite.

Exemplos de Configuração

ActivityPub

ActivityPub usa HTTP Signatures para autenticação e autorização servidor a servidor.

  • Header Name: Signature
  • keyId: O keyId deve apontar para o ator para que o campo publicKey possa ser recuperado: https://mastodon.online/users/viktor. Você pode usar curl para recuperar a chave: curl https://mastodon.online/users/viktor -H 'Accept: application/activity+json'|jq
  • Private key file name and path: /home/user/private_key.pem
  • Digest Header Name: digest
  • Header Names to Sign: GET: date (request-target) host
  • Header Names to Sign: HEAD: date (request-target) host
  • Header Names to Sign: DELETE: date (request-target) host
  • Header Names to Sign: PUT: date (request-target) host content-length content-type digest
  • Header Names to Sign: POST: date (request-target) host content-length content-type digest
  • Include query parameters in Signature: true
  • Include the port in Signature: true

Oracle Cloud Infrastructure (OCI)

Todas as requisições de API do Oracle Cloud Infrastructure (OCI) exigem HTTP Signatures. A implementação é baseada no rascunho da especificação com algumas modificações.

  • Header Name: Authorization
  • keyId: <TENANCY OCID>/<USER OCID>/<KEY FINGERPRINT>, ex.: ocid1.tenancy.oc1..<unique_ID>/ocid1.user.oc1..<unique_ID>/<key_fingerprint>
  • Private key file name and path: /home/user/private_key.pem
  • Digest Header Name: x-content-sha256
  • Header Names to Sign: GET: date (request-target) host
  • Header Names to Sign: HEAD: date (request-target) host
  • Header Names to Sign: DELETE: date (request-target) host
  • Header Names to Sign: PUT: date (request-target) host content-length content-type x-content-sha256
  • Header Names to Sign: POST: date (request-target) host content-length content-type x-content-sha256
  • Include query parameters in Signature: true
  • Include the port in Signature: true

Compilando com IntelliJ IDEA

  1. Clone este repositório e Open or Import a pasta HTTPSignatures no IntelliJ IDEA.
  2. Compile o projeto (Build -> Build Project)
  3. Crie um arquivo JAR para importar no Burp Suite: Vá em File -> Project Structure, selecione Project Settings -> Artifacts.
  4. Clique no sinal de mais para criar um novo arquivo JAR "From modules with dependencies" e clique em OK.
  5. Marque a caixa de seleção "Include in project build" para criar automaticamente um arquivo JAR ao compilar o projeto e clique em OK.
  6. Compile o projeto novamente (Ctrl+F9 ou ⌘+F9).
  7. O arquivo JAR é criado na pasta do projeto em out/artifacts/HTTPSignatures_jar/HTTPSignatures.jar.
  8. Carregue o arquivo JAR no Burp por meio de Extender Tab -> Extensions -> Add.

Compilando pela Linha de Comando usando Maven

  1. Clone este repositório.
  2. Compile o projeto e crie um arquivo JAR com o comando mvn package assembly:single.
  3. O arquivo JAR é criado na pasta do projeto em target/HTTPSignatures-1.0-SNAPSHOT-jar-with-dependencies.jar.
  4. Carregue o arquivo JAR no Burp por meio de Extender Tab -> Extensions -> Add.

Dependências

Três dependências são necessárias para compilar o projeto Java:

  • Apache HttpClient (https://hc.apache.org/httpcomponents-client-ga/)
  • Tomitribe's HTTP Signatures Java Client (https://github.com/tomitribe/http-signatures-java)
  • Burp Extender API (https://github.com/PortSwigger/burp-extender-api)
Baixar ferramenta