
Ambiente de teste vulnerável do ThinkPHP 8.0.4 para validação de template nuclei do CVE-2024-44902
Ambiente vulnerável para validação de nuclei-templates.
| Campo | Valor |
|---|
| CVE ID | CVE-2024-44902 |
| Severidade | Crítica (CVSS 9.8) |
| Produto | ThinkPHP |
| Versões Afetadas | 6.1.3 - 8.0.4 |
| Tipo | Desserialização Insegura → RCE |
| CWE | CWE-502 |
As versões 6.1.3 a 8.0.4 do ThinkPHP contêm uma vulnerabilidade de desserialização insegura. Quando a extensão Memcached do PHP está instalada, atacantes podem executar código arbitrário enviando dados serializados maliciosos para um endpoint que chama unserialize() em entrada do usuário.
O exploit utiliza uma cadeia de gadgets através das classes internas do ThinkPHP:
ResourceRegister → DbManager → Memcached → Pivot → Model
git clone https://github.com/KrE80r/CVE-2024-44902-env.git
cd CVE-2024-44902-env
docker compose up -d
# Verifique se a aplicação está rodando
curl http://localhost:8080/
# Teste com template nuclei
nuclei -t CVE-2024-44902.yaml -u http://localhost:8080 -debug
# Limpeza
docker compose down
Este ambiente é uma aplicação ThinkPHP criada com composer create-project:
topthink/think:v8.0.0topthink/framework:8.0.4 (vulnerável)/api/import?data=<serialized_payload>O controlador vulnerável simula cenários onde aplicações:
Esta é uma estrutura adequada de aplicação ThinkPHP com padrões de roteamento e controlador padrão.
$ nuclei -t CVE-2024-44902.yaml -u http://localhost:8080
[CVE-2024-44902] [http] [critical] http://localhost:8080/api/import?data=...
$ nuclei -t CVE-2024-44902.yaml -u http://localhost:8090 # httpd:latest
# Nenhum resultado
Este é um ambiente DELIBERADAMENTE VULNERÁVEL apenas para testes de segurança.