
Questo repository contiene un modello Nuclei completo e validato per rilevare CVE-2019-18935 (deserializzazione RCE in Telerik UI for ASP.NET AJAX), creato per il programma bounty di ProjectDiscovery.
CVE-2019-18935 è una vulnerabilità critica di deserializzazione .NET in Progress Telerik UI for ASP.NET AJAX (versioni dalla 2011.1.315 alla 2019.3.1023) che consente esecuzione di codice remoto non autenticata. Questa vulnerabilità:
.
├── 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)
✅ Implementazione POC completa - Non solo rilevamento della versione
✅ Validazione multi-stadio - Scoperta handler + controllo versione + prova di sfruttamento
✅ Basso numero di falsi positivi - Condizione AND su più matcher
✅ Non distruttivo - Test sicuro senza sfruttamento effettivo
✅ Estrazione completa - Info versione, dettagli errore, fasi di rilevamento
✅ Ben documentato - Metodologia completa e guide di test incluse
# 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
Il modello utilizza un processo di rilevamento in tre fasi:
Fase 1 - Scoperta dell'handler:
/Telerik.Web.UI.WebResource.axd?type=rauFase 2 - Enumerazione della versione:
rauPostData non validoFase 3 - Prova di sfruttamento:
__typeTutte e tre le fasi devono avere successo per un rilevamento positivo (condizione AND).
Consulta documentation/METHODOLOGY.md per i dettagli tecnici completi.
⚠️ Importante: Questo modello è etichettato come intrusivo perché:
Utilizza questo modello solo contro:
La conformità legale è una tua responsabilità.
curl http://target/Telerik.Web.UI.WebResource.axd?type=raupython3 scripts/telerik_exploit_poc.py <url>nuclei -t template.yaml -u <url> -debugdocker-compose logsConsulta TESTING.md per la guida completa alla risoluzione dei problemi.
Questo modello è stato creato per il programma bounty di ProjectDiscovery. Per miglioramenti o problemi:
Questo lavoro è fornito esclusivamente per ricerca sulla sicurezza e test autorizzati. Usalo in modo responsabile e legale.
Creato per il Programma Bounty di ProjectDiscovery
Data di ricerca: Dicembre 2025
Stato: Pronto per l'invio ✅