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
ator — Plugin Burp Suite para extração e substituição automatizada de tokens em requisições HTTP, suportando JSON, XML, cookies e parâmetros de URL para agilizar a varredura autenticada. | Kitploit
Ferramentas/GitHubGitHub/portswigger/ator
Testes de Segurança de APIsSegurança WebTestes de PenetraçãoAutenticação
GitHubportswigger/ator

ator

Plugin Burp Suite para extração e substituição automatizada de tokens em requisições HTTP, suportando JSON, XML, cookies e parâmetros de URL para agilizar a varredura autenticada.

Ver Repositório
387há 2 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 →
Compartilhar

Extensor de Obtenção e Substituição de Token de Autenticação

Introdução

No mundo dos testes de segurança web, a automação é fundamental, e o Burp Suite é a escolha certa. No entanto, para realmente aproveitar o poder do Burp para varreduras automatizadas, você precisa dos plugins certos. É aí que entra o ATOR. Este plugin Burp de código aberto foi projetado para revolucionar suas capacidades de varredura, simplificando o gerenciamento e a substituição de tokens para vários cenários, incluindo:

  1. Gerenciamento de Token de Acesso e Atualização
  2. Substituição de Token em Corpos de Requisição XML e JSON
  3. Substituição de Token em URL e Cookies

Tradicionalmente, realizar essas tarefas exigia macros complexos, regras de sessão ou extensores personalizados, especialmente ao lidar com dados JSON ou XML. Nosso plugin simplifica esse processo, oferecendo várias vantagens importantes:

Vantagens principais:

  1. Substituição de Token em Memória: Elimine requisições de login duplicadas substituindo tokens diretamente na memória, aumentando a eficiência da varredura.
  2. UX Amigável: Extraia facilmente dados de mensagens de resposta e substitua-os em requisições usando expressões regulares. Essa flexibilidade é inestimável para lidar com diversos cenários envolvendo JSON, XML, dados de formulário e mais.
  3. Velocidade de Varredura Aprimorada: Alcance velocidades de varredura mais rápidas evitando requisições de login desnecessárias. O plugin emprega um mecanismo de "Trigger Request" para identificar condições de erro, como um código de resposta 401 com um corpo contendo "Unauthorized request."

A inspiração para o plugin veio do plugin ExtendedMacro: https://github.com/FrUh/ExtendedMacro

Primeiros Passos

Para usar este plugin, siga estes passos:

  1. Instale Java e Maven.
  2. Clone este repositório.
  3. Execute o comando "mvn clean install" no diretório do repositório clonado onde o pom.xml está localizado.
  4. Obtenha o arquivo JAR gerado com dependências da pasta "target".

Pré-requisitos

Antes de usar o plugin, certifique-se do seguinte:

  1. Certifique-se de que o ambiente Java está configurado em sua máquina.
  2. Configure o Burp Suite para escutar o tráfego do Proxy.
  3. Configure o ambiente Java na guia extender do BURP.

Para uso com aplicação de teste (Instale esta aplicação de teste (aplicação Tiredful) de https://github.com/payatu/Tiredful-API)

Passos

  1. Identifique a requisição que gera o erro
  2. Identifique o Padrão de Erro (detalhes na seção abaixo)
  3. Obtenha os dados da resposta usando regex (veja exemplos de regex)
  4. Substitua esses dados na requisição (use o mesmo regex do passo 3 junto com o nome da variável)

Padrão de Erro:

No total, existem 4 maneiras diferentes de especificar a condição de erro.

  1. Código de Status: 401, 400
  2. Erro no Corpo: forneça qualquer texto do conteúdo do corpo (Exemplo: Access token expired)
  3. Erro no Cabeçalho: forneça qualquer texto do cabeçalho (Exemplo: Unauthorized)
  4. Formulário Livre: use este para dar múltiplas condições (st=400 && bd=Access token expired || hd=Unauthorized)

Detalhamento em testes ponta a ponta

  1. Encontrando a requisição inválida:
    • http://HOST:PORT/api/v1/exams/MQ==/ com token Bearer inválido.
  2. Identificando o Padrão de Erro:
    • A requisição acima lhe dará 401, aqui a condição de erro é Código de Status = 401
  3. Corresponder regex com os dados da requisição
    • Authorization: Bearer \w* - esta regex corresponderá ao token de acesso que é passado.
  4. Substituição - Como substituir
    • Substitua o texto correspondido (regex do passo 3) pelo valor extraído (configuração de extração discutida abaixo, digamos que o nome da variável seja "token")
    • Authorization: Bearer token - o token extraído será substituído.

Uso com aplicação de teste

Ideia: Grave a requisição da aplicação Tiredful no BURP, configure o extensor ATOR, verifique se o token é substituído pelo ATOR.

  1. Abra a aplicação de teste no navegador que você configurou com o BURP
    • Gere um token de http://HOST:PORT/handle-user-token/
    • Envie a requisição http://HOST:PORT/api/v1/exams/MQ==/ passando o token Bearer de Autorização (obtenha do passo acima)
  2. Adicione o arquivo JAR do ATOR como um extensor no BURP
  3. Clique com o botão direito na requisição (/handle-user-token) no histórico do Proxy e envie para o Extensor de Obtenção e Substituição de Token de Autenticação
  4. Adicione uma nova entrada na configuração de Extração selecionando o valor "access_token" e dê o nome como "token" (pode ser qualquer nome) Nota: Para esta aplicação, uma requisição é suficiente para gerar um token. O token também pode ser gerado após múltiplas requisições.
  5. CONDIÇÃO DE GATILHO:
    • Os passos da macro serão executados se a condição for correspondida.
    • Após a execução dos passos, substitua a requisição recebida pegando valores de "Padrão" e "Área de Substituição", se especificado.
    • Para nosso teste,
      • A condição de erro é 401 (Código de Status)
      • O padrão é "Authorization: Bearer \w*" (Especifique o padrão regex de como você deseja substituir pelos valores de extração)
      • A área de substituição é "Authentication: Bearer <NOME que você deu no PASSO 4>"
    • Clique no botão "Adicionar".
  6. Para este exemplo, uma substituição é suficiente para tornar a requisição recebida válida, mas você pode adicionar múltiplas substituições para uma única condição.
  7. Envie a requisição inválida do Repeater e verifique os fluxos de req/res no FLOW/Logger++
    • O token Bearer inválido (http://HOST:PORT/api/v1/exams/MQ==/) do Repeater faz a resposta ser 401.
    • O extensor corresponderá a essa condição e começará a executar os passos gravados, extraindo o "access_token"
    • Substitui o token de acesso (do passo ii) na resposta real (do Repeater) e torna esta requisição inválida em válida.
    • No console do Repeater, você vê a resposta 200 OK.
  8. Faça o Passo7 novamente e verifique o fluxo
    • Desta vez, o extensor não invocará os passos porque o token existente é válido e, portanto, usa esse.

Construído Com

  • SWING - Usado para adicionar painel

Contribuição

Por favor, leia CONTRIBUTING.md para detalhes sobre nosso código de conduta e o processo para enviar pull requests para nós.

Versionamento

v2.3.0

Autores

  • **https://github.com/FrUh/ExtendedMacro ** - Trabalho inicial

Synopsys

Licença

Este software é lançado pela Synopsys sob a licença MIT.

Agradecimentos

  • https://github.com/FrUh/ExtendedMacro ExtendedMacro foi um ótimo começo - modificamos a UI para lidar com cenários mais complexos. Também corrigimos bugs e melhoramos a velocidade substituindo tokens em memória.
Baixar ferramenta