
Этот репозиторий содержит полный проверенный шаблон Nuclei для обнаружения CVE-2019-18935 (Telerik UI for ASP.NET AJAX Deserialization RCE), созданный для программы вознаграждений ProjectDiscovery.
CVE-2019-18935 — это критическая уязвимость десериализации .NET в Progress Telerik UI for ASP.NET AJAX (версии с 2011.1.315 по 2019.3.1023), которая позволяет удалённо выполнять код без аутентификации. Эта уязвимость:
.
├── 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)
✅ Полная реализация POC — не просто определение версии
✅ Многоэтапная проверка — обнаружение обработчика + проверка версии + подтверждение эксплуатации
✅ Низкий уровень ложных срабатываний — условие AND для нескольких матчеров
✅ Неразрушающее тестирование — безопасная проверка без фактической эксплуатации
✅ Комплексное извлечение данных — информация о версии, детали ошибок, этапы обнаружения
✅ Хорошо документирован — полная методология и руководства по тестированию включены
# 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
Шаблон использует трёхэтапный процесс обнаружения:
Этап 1 — обнаружение обработчика:
/Telerik.Web.UI.WebResource.axd?type=rauЭтап 2 — определение версии:
rauPostDataЭтап 3 — подтверждение эксплуатации:
__typeДля положительного результата должны успешно завершиться все три этапа (условие AND).
Полные технические детали см. в documentation/METHODOLOGY.md.
⚠️ Важно: этот шаблон помечен как intrusive, поскольку он:
Используйте этот шаблон только против:
Соблюдение законодательства — ваша ответственность.
curl http://target/Telerik.Web.UI.WebResource.axd?type=raupython3 scripts/telerik_exploit_poc.py <url>nuclei -t template.yaml -u <url> -debugdocker-compose logsПолное руководство по устранению неполадок см. в TESTING.md.
Этот шаблон создан для программы вознаграждений ProjectDiscovery. Для улучшений или сообщений о проблемах:
Эта работа предоставлена исключительно для исследований в области безопасности и авторизованного тестирования. Используйте ответственно и законно.
Создано для программы вознаграждений ProjectDiscovery
Дата исследования: декабрь 2025
Статус: готово к подаче ✅