POC详情: 8113da9244a4ca21ba29fbb56e18327841fd7ec9

来源
关联漏洞
标题: Apache Tomcat 环境问题漏洞 (CVE-2025-24813)
描述:Apache Tomcat是美国阿帕奇(Apache)基金会的一款轻量级Web应用服务器。用于实现对Servlet和JavaServer Page(JSP)的支持。 Apache Tomcat 11.0.0-M1至11.0.2版本、10.1.0-M1至10.1.34版本和9.0.0.M1至9.0.98版本存在环境问题漏洞。攻击者利用该漏洞可以远程执行代码或泄露敏感信息。
描述
Este script explora a vulnerabilidade CVE-2025-24813 em versões específicas do Apache Tomcat, permitindo execução remota de código (RCE) através de um vetor de desserialização Java e abuso do método HTTP PUT para gravação arbitrária de arquivos de sessão.
介绍
CVE-2025-24813 – Apache Tomcat RCE Exploit

Descrição
---------
Este script explora a vulnerabilidade CVE-2025-24813 em versões específicas do Apache Tomcat, permitindo execução remota de código (RCE) através de um vetor de desserialização Java e abuso do método HTTP PUT para gravação arbitrária de arquivos de sessão.

A vulnerabilidade afeta:
- Apache Tomcat 11.0.0-M1 até 11.0.2
- Apache Tomcat 10.1.0-M1 até 10.1.34
- Apache Tomcat 9.0.0.M1 até 9.0.98

Funcionamento Interno
---------------------
1. Obtenção do Session ID
   - Acessa /index.jsp para extrair o JSESSIONID válido.
   - Se não encontrar, usa um valor padrão.

2. Teste de Escrita via PUT
   - Envia um arquivo teste (check.txt) para verificar se o servidor aceita requisições PUT com suporte a Content-Range.

3. Geração do Payload
   - Dois modos possíveis:
     - ysoserial → Usa o ysoserial para gerar um objeto serializado malicioso.
     - java → Gera um .jar malicioso em Java que executa o comando desejado.

4. Upload do Payload Malicioso
   - O payload é enviado para o diretório de sessões do Tomcat via path traversal (/uploads/../sessions/{JSESSIONID}.session).

5. Trigger da Execução
   - Ao acessar a aplicação com o JSESSIONID malicioso, o Tomcat desserializa o objeto, executando o comando enviado.

Estrutura do Script
-------------------
get_sid             → Obtém o JSESSIONID do servidor
verify_put          → Testa se o método PUT está habilitado
ysoserial_payload   → Cria payload usando ysoserial
java_payload        → Cria payload usando código Java compilado
send_payload        → Faz o upload do payload para o servidor
run_exploit         → Orquestra toda a exploração

Requisitos
----------
- Python 3.x
- Java JDK
- ysoserial.jar (https://github.com/frohoff/ysoserial)
- Biblioteca requests (pip install requests)

Uso
---
python3 cve_2025_24813_exploit.py <URL_ALVO> \
    --command "<COMANDO>" \
    --ysoserial ysoserial.jar \
    --gadget CommonsCollections6 \
    --payload_type ysoserial

Exemplos:
---------
1. Usando ysoserial para abrir calculadora:
python3 cve_2025_24813_exploit.py http://192.168.0.10:8080 --command "calc.exe"

2. Usando payload Java:
python3 cve_2025_24813_exploit.py http://victim.com --payload_type java --command "id"

Demonstração de Fluxo
---------------------
1. Verificação do PUT:
[+] PUT habilitado: http://192.168.0.10:8080/check.txt

2. Criação do Payload:
[+] Criando payload ysoserial para: calc.exe
[+] Payload salvo: payload.ser

3. Envio do Payload:
[+] Payload enviado (409): http://192.168.0.10:8080/uploads/../sessions/abcd1234.session

4. Execução do Comando:
[+] Execução bem-sucedida!

Aviso Legal
------------
Este código é exclusivamente para fins educacionais e de testes em ambientes controlados (laboratórios e sistemas de sua propriedade).
O uso não autorizado contra sistemas de terceiros é ilegal e pode resultar em sanções civis e criminais.


Contact
------------
Caso queira me contatar ou precise de algum serviço, me encontre nas seguintes plataformas:

Discord User: 4wj.

Instargram: @glowwz9

Email: vliyanie1337@proton.me
文件快照

[4.0K] /data/pocs/8113da9244a4ca21ba29fbb56e18327841fd7ec9 ├── [5.7K] exploit.py └── [3.1K] README.md 0 directories, 2 files
神龙机器人已为您缓存
备注
    1. 建议优先通过来源进行访问。
    2. 如果因为来源失效或无法访问,请发送邮箱到 f.jinxu#gmail.com 索取本地快照(把 # 换成 @)。
    3. 神龙已为您对POC代码进行快照,为了长期维护,请考虑为本地POC付费,感谢您的支持。