Escáner CVE-2024-2997

Descripción general

El escáner CVE-2024-2997 es una herramienta avanzada de escaneo de vulnerabilidades diseñada para detectar la vulnerabilidad de inyección de comandos en aplicaciones web. Esta herramienta ayuda a los profesionales de la seguridad a identificar riesgos de seguridad potenciales en sus aplicaciones.
Aviso legal
Esta herramienta es solo para fines educativos. Úsela únicamente en aplicaciones que le pertenezcan o para las que tenga permiso de prueba. El autor no es responsable de ningún uso indebido o daño causado por esta herramienta.
Características
- Escaneo de alto rendimiento: utiliza múltiples subprocesos (hasta 20) para un escaneo rápido
- Generación integral de URL: genera una amplia gama de URL potencialmente vulnerables
- Seguimiento de progreso en tiempo real: muestra el progreso del escaneo con una barra de progreso dinámica
- Informes detallados: genera informes de resultados del escaneo tanto en texto como en HTML
- Clasificación de vulnerabilidades: categoriza los hallazgos por nivel de confianza (Bajo, Medio, Alto, Crítico)
- Detección inteligente: identifica tanto CVE-2024-2997 como vulnerabilidades similares
- Procesamiento por lotes: procesa las URL en lotes para evitar la sobrecarga del sistema
- Configuración personalizable: subprocesos, tiempos de espera, retardos y tamaños de lote ajustables
- Informes HTML con tema oscuro: informes profesionales y modernos con información detallada de vulnerabilidades
- Gestión de sesiones: capacidad de guardar y reanudar sesiones de escaneo
Instalación
- Clone el repositorio:
git clone https://github.com/lfillaz/CVE-2024-2997.git
cd CVE-2024-2997
- Ejecute el script con las opciones de línea de comandos:
python CVE-2024-2997.py -u http://example.com -v
- O ejecútelo de forma interactiva y siga las instrucciones en pantalla:
python CVE-2024-2997.py
Opciones de línea de comandos
El escáner admite las siguientes opciones de línea de comandos:
| Opción | Descripción |
|---|
-u, --url | URL base a escanear |
-p, --proxy | URL del proxy (p. ej., http://127.0.0.1:8080) |
-v, --verbose | Habilita el modo verboso |
-o, --output | Archivo de salida para las URL vulnerables (predeterminado: sus.txt) |
-d, --details | Archivo de salida para los detalles de vulnerabilidades (predeterminado: vulnerable_details.txt) |
-s, --scan-delay | Retardo de escaneo en segundos (predeterminado: 0.1) |
-t, --threads | Número de subprocesos a utilizar (predeterminado: 20) |
-r, --resume | Reanuda el escaneo desde el scope.txt existente |
--timeout | Tiempo de espera de la solicitud en segundos (predeterminado: 5) |
--user-agent | Cadena User-Agent personalizada |
--batch-size | Número de URL a escanear en cada lote (predeterminado: 50) |
Cómo funciona
- El script imprime un banner de arte ASCII e inicia el proceso de escaneo.
- Comprueba si existe un archivo de sesión anterior
scope.txt:
- Si existe, el usuario puede elegir continuar escaneando las URL de la sesión anterior o iniciar una nueva sesión.
- Si no existe, se inicia una nueva sesión.
- El usuario introduce la URL base (o la proporciona mediante la línea de comandos).
- El script genera una amplia gama de URL basadas en la URL base, incluyendo:
- Rutas de administración
- Endpoints de API
- Rutas de autenticación
- Rutas de gestión de contenidos
- Rutas comunes de CMS
- Rutas vulnerables conocidas
- El escaneo comienza con una barra de progreso en tiempo real que muestra el estado de finalización.
- El script escanea cada URL en busca de la vulnerabilidad de inyección de comandos, mostrando los resultados en un formato codificado por colores:
- Las URL vulnerables se muestran en rojo con el nivel de confianza.
- Las URL seguras se muestran en verde (cuando el modo verboso está habilitado).
- Después del escaneo, se genera un informe HTML completo con:
- Estadísticas resumidas del escaneo
- Detalles de vulnerabilidades con niveles de confianza
- Indicadores visuales de la gravedad de la vulnerabilidad
- Diseño adaptable con tema oscuro
Interpretación de los resultados
El escáner clasifica las vulnerabilidades por nivel de confianza:
- Crítico: vulnerabilidad confirmada con múltiples payloads
- Alto: indicadores sólidos de vulnerabilidad encontrados
- Medio: posible vulnerabilidad o problema similar detectado
- Bajo: indicadores débiles que requieren investigación adicional
Archivos de salida
- sus.txt: contiene una lista de las URL vulnerables
- vulnerable_details.txt: contiene información detallada sobre cada vulnerabilidad
- report.html: informe HTML interactivo con resultados completos del escaneo
- scope.txt: contiene todas las URL generadas para la sesión actual/anterior
- response_*.txt: contiene las respuestas sin procesar de los endpoints vulnerables (para vulnerabilidades confirmadas)
Comunidad
Únase a nuestra comunidad de Discord para recibir actualizaciones, soporte y debates:

Licencia
Este proyecto está licenciado bajo la Licencia MIT; consulte el archivo LICENSE para obtener más detalles.