
Este repositório contém um template Nuclei completo e validado para detecção da CVE-2019-18935 (RCE por desserialização no Telerik UI for ASP.NET AJAX), criado para o programa de bounty da ProjectDiscovery.
CVE-2019-18935 é uma vulnerabilidade crítica de desserialização .NET no Progress Telerik UI for ASP.NET AJAX (versões 2011.1.315 a 2019.3.1023) que permite execução remota de código sem autenticação. Esta vulnerabilidade:
.
├── README.md # This file
├── BOUNTY_PLAN.md # Original planning document
├── nuclei-templates/
│ └── cves/
│ └── 2019/
│ └── CVE-2019-18935.yaml # Main Nuclei template
├── docker-environment/ # Vulnerable test environment
│ ├── Dockerfile
│ ├── docker-compose.yml
│ ├── web.config
│ ├── Default.aspx
│ └── README.md
├── scripts/ # Exploitation and validation scripts
│ ├── RAU_crypto.py # Encryption helper module
│ ├── telerik_version_detect.py # Version detection tool
│ └── telerik_exploit_poc.py # POC validation script
├── documentation/ # Technical documentation
│ ├── TESTING.md # Testing guide
│ └── METHODOLOGY.md # Detection methodology
├── debug-output/ # Debug logs and results (to be generated)
└── payloads/ # Test payloads (optional)
✅ Implementação de POC Completa - Não apenas detecção de versão
✅ Validação em Múltiplos Estágios - Descoberta do handler + verificação de versão + prova de exploração
✅ Baixos Falsos Positivos - Condição AND entre múltiplos matchers
✅ Não Destrutivo - Teste seguro sem exploração real
✅ Extração Abrangente - Informações de versão, detalhes de erro, estágios de detecção
✅ Bem Documentado - Metodologia completa e guias de teste incluídos
# Install Nuclei
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest
# Install Python dependencies (for validation scripts)
pip3 install -r requirements.txt
# Install Docker (for test environment)
# See: https://docs.docker.com/get-docker/
# Test against a single target
nuclei -t nuclei-templates/cves/2019/CVE-2019-18935.yaml \
-u http://target.com \
-v
# Test with debug output
nuclei -t nuclei-templates/cves/2019/CVE-2019-18935.yaml \
-u http://target.com \
-debug -v
# Test against multiple targets
nuclei -t nuclei-templates/cves/2019/CVE-2019-18935.yaml \
-l targets.txt \
-json -o results.json
# Navigate to docker environment
cd docker-environment
# Important: Obtain Telerik.Web.UI.dll first (see docker-environment/README.md)
# Place the DLL in this directory
# Build and start
docker-compose up -d
# Verify it's running
curl http://localhost:8080/Telerik.Web.UI.WebResource.axd?type=rau
# Test the template
nuclei -t nuclei-templates/cves/2019/CVE-2019-18935.yaml \
-u http://localhost:8080 \
-debug -v \
2>&1 | tee debug-output/test-run.log
[CVE-2019-18935] [http] [critical] http://localhost:8080/Telerik.Web.UI.WebResource.axd
[EXTRACTED]
telerik_version: 2017.2.503.40
detection_stage: Handler detected in request 1, Version in request 2, Deserialization in request 3
error_details: Exception at Telerik.Web.UI...
cd scripts
# Detect Telerik version and check vulnerability
python3 telerik_version_detect.py http://target.com
# Output:
# [+] Handler found: http://target.com/Telerik.Web.UI.WebResource.axd?type=rau
# [+] Detected version: 2017.2.503
# [!] VULNERABLE: Version in range 2011.1.315 - 2019.3.1023
# Run non-destructive POC
python3 telerik_exploit_poc.py http://target.com/Telerik.Web.UI.WebResource.axd?type=rau
# Output:
# [+] Handler is accessible
# [+] Upload capability confirmed
# [+] Deserialization processing detected
# [!] VULNERABILITY: CONFIRMED
O template usa um processo de detecção em três estágios:
Estágio 1 - Descoberta do Handler:
/Telerik.Web.UI.WebResource.axd?type=rauEstágio 2 - Enumeração de Versão:
rauPostData inválidoEstágio 3 - Prova de Exploração:
__typeTodos os três estágios devem ter sucesso para detecção positiva (condição AND).
Consulte documentation/METHODOLOGY.md para obter detalhes técnicos completos.
⚠️ Importante: Este template é marcado como intrusivo porque ele:
Use este template apenas contra:
A conformidade legal é sua responsabilidade.
curl http://target/Telerik.Web.UI.WebResource.axd?type=raupython3 scripts/telerik_exploit_poc.py <url>nuclei -t template.yaml -u <url> -debugdocker-compose logsConsulte TESTING.md para o guia completo de solução de problemas.
Este template foi criado para o programa de bounty da ProjectDiscovery. Para melhorias ou problemas:
Este trabalho é fornecido apenas para pesquisa de segurança e testes autorizados. Use com responsabilidade e dentro da lei.
Criado para o Programa de Bounty da ProjectDiscovery
Data da Pesquisa: Dezembro de 2025
Status: Pronto para submissão ✅