
Proof-of-concept script for CVE-2020-3452 — Cisco ASA/FTD Path Traversal vulnerability. Supports automated extraction of known file targets with a hard limit on successful downloads for safety. Intended for authorized security testing and research purposes only.
Скрипт Proof-of-concept для CVE-2020-3452 — уязвимости Path Traversal в Cisco ASA/FTD. Поддерживает автоматизированное извлечение известных целевых файлов с жёстким ограничением на количество успешных загрузок для безопасности. Предназначен только для авторизованного тестирования безопасности и исследовательских целей.
Скрипт proof-of-concept для CVE-2020-3452 — уязвимости Path Traversal в Cisco ASA/FTD. Поддерживает автоматизированное извлечение известных целевых файлов с жёстким ограничением на количество успешных загрузок для безопасности. Предназначен только для авторизованного тестирования безопасности и исследовательских целей.
# CVE-2020-3452 PoC — Path Traversal в Cisco ASA/FTD
Это модифицированный скрипт proof-of-concept эксплуатации для [CVE-2020-3452](https://nvd.nist.gov/vuln/detail/CVE-2020-3452), уязвимости directory traversal, затрагивающей устройства Cisco ASA и FTD.
Уязвимость позволяет неаутентифицированному удалённому злоумышленнику **читать произвольные файлы** на уязвимых системах с помощью специально сформированного HTTP-запроса. Этот скрипт автоматизирует процесс, пытаясь получить предопределённый список распространённых конфигурационных, портальных и HTML-файлов, и сохраняет успешные ответы локально.
> **⚠️ Только для авторизованного тестирования и исследований. Используйте ответственно.**
---
## ✅ Возможности
- 🔁 Проходит по подготовленному списку путей целевых файлов, известных на системах ASA/FTD.
- ✅ Сохраняет только ответы с **HTTP 200** и **ненулевым содержимым**.
- 🧮 Автоматически останавливается после **200 успешных загрузок**, чтобы предотвратить злоупотребление или шум.
- 🗂️ Записывает все файлы в каталог `output/`, создавая его автоматически.
- 🔒 Санирует все имена выходных файлов для предотвращения случайного traversal или инъекции.
- 🧼 Подавляет предупреждения SSL (сертификаты ASA часто самоподписанные).
---
## 🖥️ Использование
```bash
# Установка зависимостей
pip install requests
# Запуск скрипта
python3 cve_2020_3452.py <целевой-хост>
Пример:
python3 cve_2020_3452.py firewall.example.com
Все успешные файлы будут сохранены в папку output/.
Вы также можете запустить скрипт в интерактивном режиме:
python3 cve_2020_3452.py
| Переменная | Описание |
|---|---|
MAX_SUCCESS_WRITES | Останавливает скрипт после этого количества сохранённых файлов (HTTP 200); по умолчанию 200. |
OUTPUT_DIR | Каталог, куда будут записываться файлы (по умолчанию: output/). |
Вы можете безопасно изменить эти значения в начале скрипта.
CVE: CVE-2020-3452
Затрагиваемые версии:
Воздействие: Позволяет неаутентифицированное раскрытие файлов через манипуляцию путём в URL.
Этот скрипт предоставляется только для образовательных и авторизованных исследовательских целей в области безопасности.
Лицензия MIT — подробности см. в файле LICENSE.
---
## 📦 requirements.txt
Добавьте это в ваш репозиторий для упрощения настройки:
```txt
requests
MIT License
Copyright (c) 2025
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction...