
Escáner en Python para CVE-2025-49132 que explota un path traversal en el endpoint de locale de Pterodactyl Panel para extraer datos de configuración de base de datos expuestos.
Esta herramienta se utiliza para escanear instancias del panel Pterodactyl, intentando obtener su información de configuración de base de datos. Mediante la explotación de una vulnerabilidad específica de salto de ruta, es posible obtener datos de configuración sensibles del panel.
Este proyecto es una herramienta de solicitudes HTTP de alto rendimiento, diseñada específicamente para detectar y recopilar información de configuración de instancias del panel Pterodactyl expuestas en Internet. Envía solicitudes específicas al servidor objetivo, verifica si la respuesta contiene información de configuración de base de datos y guarda los resultados clasificados.
requests para realizar solicitudes HTTPaiohttp para implementar soporte de solicitudes asíncronasThreadPoolExecutor para implementar procesamiento multihilo.
├── main.py # 主程序文件
├── url.txt # 目标主机列表文件
├── json/ # 输出目录
│ ├── ✔️正确/ # 包含目标数据的结果保存目录
│ └── ❌错误/ # 错误或无效结果保存目录
└── README.md # 项目说明文档
Antes de ejecutar el programa, es necesario instalar las bibliotecas de Python requeridas:
pip install requests aiohttp urllib3
python main.py
De forma predeterminada, lee la lista de hosts del archivo url.txt y procesa en modo multihilo.
python main.py [--file FILE] [--mode MODE] [--workers WORKERS]
参数说明:
-f, --file: especifica la ruta del archivo de lista de hosts (predeterminado: url.txt)-m, --mode: modo de ejecución, valores opcionales: threading(multihilo), async(asíncrono), single(monohilo) (predeterminado: threading)-w, --workers: número de hilos de trabajo (predeterminado: 5)# 使用默认设置
python main.py
# 指定自定义主机文件
python main.py --file hosts.txt
# 使用异步模式处理
python main.py --mode async
# 使用单线程模式
python main.py --mode single
# 设置工作线程数为10
python main.py --workers 10
En la clase Config del archivo main.py se pueden modificar las siguientes configuraciones:
PROXY: dirección del servidor proxy (predeterminado: http://127.0.0.1:7899)TIMEOUT: tiempo de espera de la solicitud (predeterminado: 30 segundos)MAX_RETRIES: número máximo de reintentos (predeterminado: 3 veces)MAX_WORKERS: número máximo de hilos de trabajo (predeterminado: 5)USER_AGENT: User-Agent de la solicitud (predeterminado: Mozilla/5.0 Windows AppleWebKit/537.36)/locales/locale.json para cada hostlocale: ../../../pterodactylnamespace: config/databasejson/✔️正确/json/❌错误/Los resultados se guardan en formato JSON e incluyen la siguiente información:
success: si la solicitud se realizó correctamentestatus_code: código de estado HTTPresponse_time: tiempo de respuestaurl: URL real de la solicitudheaders: información de las cabeceras de respuestadata: datos de respuestasize: tamaño de la respuestacontains_target_data: si contiene los datos objetivodatabase_info: información de la base de datos extraídaUna vez finalizada la ejecución, el programa mostrará información estadística detallada: