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
CVE-2017-5638 — Este script destina-se a validar a vulnerabilidade do Apache Struts 2 (CVE-2017-5638), também conhecida como Struts-Shock. | Kitploit
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

  2. 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