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
Java-Deserialization-Scanner — Plugin all-in-one para Burp Suite para a detecção e a exploração de vulnerabilidades de desserialização Java | Kitploit
Ferramentas/GitHubGitHub/federicodotta/java-deserialization-scanner
Frameworks de ExploraçãoGeração de PayloadsAnálise de VulnerabilidadesExploração de Aplicações WebTestes de Penetração
GitHubfedericodotta/java-deserialization-scanner

Java-Deserialization-Scanner

Plugin all-in-one para Burp Suite para a detecção e a exploração de vulnerabilidades de desserialização Java

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
Ver Repositório
802175há 4 anosRevisado pelo Kitploit

Java Deserialization Scanner

O Java Deserialization Scanner é um plugin do Burp Suite destinado a detetar e explorar vulnerabilidades de desserialização de Java. Foi escrito por Federico Dotta, Analista Principal de Segurança na HN Security.

O plugin é composto por três componentes distintos:

  1. Integração com o scanner ativo e passivo do Burp Suite
  2. Testador manual, para a deteção de vulnerabilidades de desserialização de Java em pontos de inserção personalizados
  3. Explorador, que permite explorar ativamente vulnerabilidades de desserialização de Java, usando o ysoserial de frohoff (https://github.com/frohoff/ysoserial)

Autor

  • Federico Dotta, Analista Principal de Segurança na HN Security

Contribuidores

  • Jeremy Goldstein
  • Andras Veres-Szentkiralyi

Mini passo a passo (24/05/17)

Um breve artigo contendo um mini passo a passo sobre como utilizar os vários componentes do plugin pode ser encontrado no seguinte URL: https://web.archive.org/web/20201130104913/https://techblog.mediaservice.net/2017/05/reliable-discovery-and-exploitation-of-java-deserialization-vulnerabilities/

Integração com o scanner ativo e passivo do Burp Suite

O Java Deserialization Scanner utiliza payloads personalizados gerados com uma versão modificada do "ysoserial", ferramenta criada por frohoff e gebl, para detetar vulnerabilidades de desserialização de Java. A ferramenta original (https://github.com/frohoff/ysoserial) gera payloads para a execução de comandos no sistema, usando a função Runtime.exec. Normalmente, no entanto, não é possível ver o resultado do comando e, consequentemente, não é simples escrever um scanner baseado neste tipo de função. Por esta razão, é utilizada uma versão modificada do ysoserial para gerar diferentes tipos de payloads, úteis para a deteção do problema em vez da exploração:

  1. Payloads que executam uma função de suspensão síncrona, a fim de verificar a presença do problema com base no tempo de resposta
  2. Payloads que executam uma resolução de DNS, a fim de verificar a presença do problema usando o Burp Suite Collaborator integrado no Burp Suite

Atualmente, as verificações passivas do Java Deserialization Scanner reportam a presença de objetos Java serializados nos pedidos HTTP, e as verificações ativas procuram ativamente a presença de funções de desserialização frágeis em conjunto com a presença das seguintes bibliotecas vulneráveis:

  1. Apache Commons Collections 3 (até 3.2.1), com cinco cadeias diferentes
  2. Apache Commons Collections 4 (até 4.4.0), com duas cadeias diferentes
  3. Spring (até 4.2.2), com duas cadeias diferentes
  4. Java 6 e Java 7 (até Jdk7u21) sem qualquer biblioteca vulnerável
  5. Hibernate 5
  6. JSON
  7. Rome
  8. Java 8 (até Jdk8u20) sem qualquer biblioteca vulnerável
  9. Apache Commons BeanUtils
  10. Javassist/Weld
  11. JBoss Interceptors
  12. Mozilla Rhino (duas cadeias diferentes)
  13. Vaadin

Além disso, o payload URLSNDS foi introduzido para detetar ativamente a desserialização de Java sem quaisquer bibliotecas vulneráveis. Se o plugin encontrar apenas o problema URLDNS (e nenhuma biblioteca vulnerável), o atacante provavelmente poderá executar ataques de DoS, mas para alcançar a Execução Remota de Código é necessário mais esforço. Consulte este link para mais detalhes.

Todos os componentes do plugin suportam as seguintes codificações:

  1. Raw
  2. Base64
  3. Ascii Hex
  4. GZIP
  5. Base64 GZIP

Na pasta de teste existem algumas aplicações de servidor Java simples que podem ser utilizadas para testar o plugin. Cada aplicação utiliza uma biblioteca Java vulnerável diferente.

Testador manual

O plugin oferece um separador dedicado para lançar a deteção com os payloads de suspensão e de DNS em pontos de inserção personalizados, a fim de verificar as vulnerabilidades de desserialização de Java em situações particulares em que pontos de entrada invulgares não permitem a deteção com o scanner. Os resultados do testador manual podem ser inseridos entre os resultados do scanner do Burp Suite.

O testador manual oferece um método de deteção extra: deteção por CPU. O método de deteção por CPU baseia-se no trabalho SerialDOS de Wouter Coekaerts (https://gist.github.com/coekie/a27cc406fc9f3dc7a70d) e é capaz de detetar problemas de desserialização sem a presença de qualquer biblioteca vulnerável, usando um objeto que consome muitos ciclos de CPU na tarefa de desserialização e verificando o tempo de resposta. O método de deteção por CPU não está incluído por predefinição nas verificações de análise ativa, porque deve ser utilizado com cautela: enviar um grande número de payloads SerialDOS “leves” pode ainda assim causar problemas em sistemas antigos ou muito carregados.

Explorador

Depois de encontrada uma vulnerabilidade de desserialização de Java, é possível explorar ativamente o problema com o separador dedicado “Exploiting”. O separador “Exploiting” oferece uma interface conveniente para explorar vulnerabilidades de desserialização. Este separador usa a ferramenta ysoserial para gerar vetores de exploração e inclui o payload gerado num pedido HTTP. O ysoserial recebe como argumento uma biblioteca vulnerável e um comando e gera um objeto serializado em formato binário que pode ser enviado para a aplicação vulnerável, para executar o comando no sistema alvo (obviamente, se a aplicação alvo for vulnerável). O separador “Exploiting” suporta os mesmos formatos de codificação que as secções de deteção do plugin.

Captura de ecrã

alt tag

Instalação

  1. Descarregue o Burp Suite: http://portswigger.net/burp/download.html
  2. Instale o Java Deserialization Scanner a partir da BApp Store ou siga estes passos:
  3. Descarregue a última versão do Java Deserialization Scanner
  4. Abra o Burp -> Extender -> Extensions -> Add -> Escolha o ficheiro JavaDeserializationScannerXX.jar

Guia do Utilizador

  1. Após a instalação, as verificações ativas e passivas do Java Deserialization Scanner serão adicionadas ao scanner do Burp Suite (é possível desativar as verificações no separador de opções)
  2. Basta executar o scanner ativo ou passivo para verificar também a existência de desserialização de Java vulnerável
  3. Com o separador dedicado "Manual testing" é possível definir o ponto de injeção e executar o ataque com todos os payloads
  4. Com o separador dedicado "Exploiting" é possível explorar ativamente vulnerabilidades de desserialização de Java
  5. O separador "Configuration" contém toda a configuração necessária para o correto funcionamento do plugin

Melhorar o Java Deserialization Scanner

Para melhorar esta extensão, por favor reporte qualquer problema encontrado no plugin. Além disso, se quiser, reporte-me qualquer biblioteca Java divulgada que seja útil para a exploração desta fraqueza e, se tiver tempo, adicionarei uma verificação ativa para a mesma no meu plugin.

Aviso legal

Este software foi criado puramente para fins de investigação académica e para o desenvolvimento de técnicas defensivas eficazes, e não se destina a ser utilizado para atacar sistemas, exceto quando explicitamente autorizado. Os mantenedores do projeto não são responsáveis pelo uso indevido do software. Utilize com responsabilidade.

Licença MIT

Copyright (c) 2020 Java Deserialization Scanner

É concedida permissão, gratuitamente, a qualquer pessoa que obtenha uma cópia deste software e dos ficheiros de documentação associados (o "Software"), para lidar com o Software sem restrição, incluindo, sem limitação, os direitos de usar, copiar, modificar, fundir, publicar, distribuir, sublicenciar e/ou vender cópias do Software, e para permitir que as pessoas a quem o Software é fornecido o façam, sujeito às seguintes condições:

O aviso de direitos de autor acima e este aviso de permissão devem ser incluídos em todas as cópias ou partes substanciais do Software.

O SOFTWARE É FORNECIDO "COMO ESTÁ", SEM GARANTIA DE QUALQUER TIPO, EXPRESSA OU IMPLÍCITA, INCLUINDO, MAS NÃO SE LIMITANDO ÀS GARANTIAS DE COMERCIABILIDADE, ADEQUAÇÃO A UM DETERMINADO FIM E NÃO VIOLAÇÃO. EM NENHUM CASO OS AUTORES OU TITULARES DE DIREITOS DE AUTOR SERÃO RESPONSÁVEIS POR QUALQUER RECLAMAÇÃO, DANOS OU OUTRA RESPONSABILIDADE, SEJA NUMA AÇÃO DE CONTRATO, ATO ILÍCITO OU OUTRA, DECORRENTE DE, OU EM CONEXÃO COM, O SOFTWARE OU O USO OU OUTRAS NEGOCIAÇÕES NO SOFTWARE.

Baixar ferramenta