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
Ferramentas/GitHubGitHub/readloud/cve-2017-5638
Scanners de VulnerabilidadesGeração de PayloadsExploraçãoExploração de Aplicações WebTestes de PenetraçãoAprendizado e Educação
GitHubreadloud/cve-2017-5638

CVE-2017-5638

Este script destina-se a validar a vulnerabilidade do Apache Struts 2 (CVE-2017-5638), também conhecida como Struts-Shock.

Ver Repositório
1há 4 anosAinda não revisado

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

CVE-2017-5638

Este script destina-se a validar a vulnerabilidade do Apache Struts 2 (CVE-2017-5638), também conhecida como Struts-Shock. É completamente inofensivo, pois não injeta nenhum payload malicioso; apenas injeta um cabeçalho HTTP chamado 'STRUTS2-VALIDATION' para validar se o alvo é vulnerável.

Devido à sua capacidade multithread, é capaz de executar mais de 2.5k+ aplicações espalhadas pelo mundo em menos de 10 minutos. Portanto, pode ser muito útil para validar aplicações empresariais em grande escala.

cve-2017-5638

cve-2017-5638 Amostra de site vulnerável

Este projeto tem como objetivo demonstrar a exploração do CVE-2017-5638 para fins educacionais. Para mais informações, consulte https://cwiki.apache.org/confluence/display/WW/S2-045

Aviso Legal

Este projeto é feito apenas para fins educacionais e de testes éticos. Atacar alvos sem consentimento mútuo prévio é ilegal. É de responsabilidade do usuário final obedecer a todas as leis locais, estaduais e federais aplicáveis. Os desenvolvedores não assumem nenhuma responsabilidade e não se responsabilizam por qualquer uso indevido ou dano causado por este programa.

Começando

  1. Inicie o contêiner Docker :

docker run -d -p 8080:8080 jrrdev/cve-2017-5638:latest

  1. Baixe o script de exploit na máquina do atacante aqui

  • Execute o script de exploit Python a partir da máquina do atacante :

  • python exploit.py http://<DOCKER_HOST>:8080/hello "ls -l"

    Uso

    Há duas maneiras de executar este script: com e sem threading. A única diferença será o tempo de execução. Para ativar o recurso de threading, basta passar o parâmetro thread. O primeiro parâmetro deve ser um arquivo TXT contendo todas as URLs alvo, uma por linha. Observe que essas URLs devem ser completas, por exemplo, https://target.com/admin/myStrutsPage.action

    Aqui está um exemplo de uso sem threading:

    root@kitploit:~
    struts-shock-validation.py target_urls.txt
    

    Agora usando o recurso de threads:

    root@kitploit:~
    struts-shock-validation.py target_urls.txt thread
    

    CVE-2017-5638

    http://struts.apache.org/docs/s2-016.html https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017

    Módulo de Exploit do Metasploit Framework para a exploração do Apache Struts via Content-Type. Não foi testado contra um servidor Windows, mas foi testado contra um servidor Linux usando o payload generic/shell_bind_tcp

    CVE-2017-5638 Código PoC em Python | DORK: ext:action

    Exemplo de Código PoC para CVE-2017-5638 | Exploit do Apache Struts | DORK: ext:action

    USO: python struts.py https://victim.site dir

    O script Python inicial que foi postado não formatava corretamente o cabeçalho Content-Type. Eu recodifiquei o cabeçalho Content-Type para formatar adequadamente Content-Type:%20{Exploit}. Também adicionei logging e Requests e, em seguida, despejei as propriedades do objeto para stdout.

    EXEMPLO DE SAÍDA

    Check for CVE-2017-5638 by XSS.Cx

    Volume in drive D has no label. Volume Serial Number is 2A7B-A245 Directory of d:\Program Files\Apache Software Foundation\Tomcat 9.0

    CVE-2017-5638

    Sumário

    1. Visão Geral
    2. Dependências
    3. Uso

    Visão Geral

    Este projeto é uma prova de conceito para a vulnerabilidade do Apache Struts. O objetivo era criar um software que pudesse gerar e testar IPs aleatórios para a vulnerabilidade descrita acima.

    Use este projeto por sua conta e risco e apenas para fins educacionais.

    Dependências

    • cURL

      • cURL é usado para enviar o cabeçalho forjado para um determinado endereço IP em uma determinada porta.
    • Nmap

      • Nmap é usado para criar os endereços IP aleatórios que contêm uma porta 80 ou 443 aberta.

    Uso

    Gere IPs aleatórios e salve-os em um arquivo de texto.

    root@kitploit:~
    ./get_ip.sh [Number of hosts to scan] [What port to scan] [Filename to write output]
    
    root@kitploit:~
    ./get_ip.sh 10000 80 output.txt
    

    Verifique a vulnerabilidade de um endereço IP específico.

    root@kitploit:~
    ./struts_check.sh [ip address] [port]
    
    root@kitploit:~
    ./struts_check.sh 127.0.0.1 80
    

    Verifique a vulnerabilidade de uma lista de endereços IP.

    root@kitploit:~
    ./main.sh [Text file containing IP adresses] [Port]
    
    root@kitploit:~
    ./main.sh output.txt 443
    

    Execute um comando em um servidor sem o patch de vulnerabilidade do Apache Struts

    root@kitploit:~
    ./struts_attack.sh [IP Adres] [Command]
    
    root@kitploit:~
    ./struts_attack.sh https://127.0.0.1 whoami
    
    # CVE-2017-5638 Código PoC em Python | DORK: ext:action
    Exemplo de Código PoC para CVE-2017-5638 | Exploit do Apache Struts | DORK: ext:action
    
    USO: python struts.py https://victim.site dir
    
    O script Python inicial que foi postado não formatava corretamente o cabeçalho Content-Type.
    Eu recodifiquei o cabeçalho Content-Type para formatar adequadamente Content-Type:%20{Exploit}.
    Também adicionei logging e Requests e, em seguida, despejei as propriedades do objeto para stdout.
    
    EXEMPLO DE SAÍDA
    
    Check for CVE-2017-5638 by XSS.Cx
    
    Volume in drive D has no label.
    Volume Serial Number is 2A7B-A245
    Directory of d:\Program Files\Apache Software Foundation\Tomcat 9.0
    
    ## Resultados
    ele criará automaticamente uma pasta chamada results, e a cada execução criará uma pasta com data contendo o resultado da execução. Se o threading estiver ativado, será criado um arquivo por thread chamado thread_<number>, que pode ser ignorado, pois, ao concluir, consolidará todos os resultados das threads em um único arquivo TXT com o mesmo nome (data/timestamp) da pasta de execução.
    
    Baixar ferramenta