Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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
Enigm-Writeup — Guía completa de pruebas de penetración y detalles de explotación para la máquina Enigma de Hack The Box, que abarca la enumeración local, la inyección de comandos en OliveTin CVE-2026-27626 y la escalada de privilegios a root | Kitploit
Herramientas/GitHubGitHub/abdelhakimgafernetworksec/enigm-writeup
Escalada de PrivilegiosReconocimientoAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPost-ExplotaciónCTFPruebas de PenetraciónAprendizaje y Educación

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
Labs y Práctica
GitHubabdelhakimgafernetworksec/enigm-writeup

Enigm-Writeup

Guía completa de pruebas de penetración y detalles de explotación para la máquina Enigma de Hack The Box, que abarca la enumeración local, la inyección de comandos en OliveTin CVE-2026-27626 y la escalada de privilegios a root

Ver Repositorio
11hace 0 díasAún no revisado

Hack The Box: Enigma - Informe exhaustivo de pruebas de penetración y write-up

1. Resumen ejecutivo

Enigma es una máquina Linux de nivel intermedio alojada en Hack The Box. La metodología de evaluación sigue un ciclo de vida estándar de pruebas de penetración: reconocimiento, enumeración, acceso inicial mediante la recolección de credenciales, enumeración local y escalada de privilegios a root a través de una vulnerabilidad en la capa de servicio (CVE-2026-27626 en OliveTin). Este write-up detalla el análisis vectorial paso a paso, los conjuntos de herramientas, las estrategias de ejecución de código y las directrices de remediación necesarias para comprometer completamente el objetivo y asegurar el control administrativo.


2. Recopilación de información y reconocimiento

2.1 Escaneo de puertos de red (Nmap)

La evaluación comenzó con un escaneo TCP SYN para identificar los puertos abiertos y los servicios en ejecución en el host objetivo.

root@kitploit:~
nmap -p- --min-rate=1000 -T4 <TARGET_IP>

Hallazgos del escaneo:

  • Puerto 22/tcp (SSH): Abierto, demonio OpenSSH en ejecución.
  • Puerto 80/tcp (HTTP): Abierto, servidor web Nginx/Apache que aloja una aplicación web.
  • Puerto 2049/tcp (NFS): Abierto, servicio de compartición de archivos en red.

2.2 Enumeración web y fuerza bruta de directorios

Utilizando herramientas de descubrimiento de directorios (gobuster / ffuf), escaneamos el servicio web en el puerto 80 para descubrir endpoints ocultos, portales administrativos o artefactos de configuración.

  • Se descubrió una presencia web de acceso público y publicaciones de blog de desarrolladores que describían componentes de infraestructura interna.
  • Se identificaron posibles rutas de aplicación relacionadas con archivos de configuración de bases de datos y scripts de automatización.

3. Acceso inicial (compromiso a nivel de usuario)

3.1 Descubrimiento de credenciales

Mediante un análisis detallado de los archivos de la aplicación web y recursos compartidos auxiliares de NFS, descubrimos credenciales de desarrollador válidas.

  • Nombre de usuario: haris
  • Contraseña: bestfriends

3.2 Establecimiento del shell de usuario mediante SSH

Con las credenciales descubiertas, nos autenticamos contra el servicio SSH para establecer un shell interactivo de bajo privilegio en el sistema objetivo:

root@kitploit:~
ssh haris@<TARGET_IP>
  • Shell interactivo obtenido: haris@enigma:~$
  • Se localizó y recuperó con éxito la flag de usuario (user.txt).

4. Enumeración local y descubrimiento de escalada de privilegios

4.1 Auditoría de servicios internos

Tras establecer un shell a nivel de usuario, revisamos los puertos locales a la escucha y los procesos activos para identificar posibles superficies de ataque que no están expuestas externamente:

root@kitploit:~
ss -tulpn

Hallazgo clave:

  • El servicio web de gestión de automatización OliveTin se ejecutaba localmente en 127.0.0.1:1337 con privilegios de root.

4.2 Análisis de la configuración y vulnerabilidades de OliveTin

Una inspección más detallada del archivo de configuración de la aplicación OliveTin (/opt/OliveTin/config.yaml) reveló que las acciones de copia de seguridad de la base de datos se ejecutaban mediante un wrapper de shell. En concreto, la configuración utilizaba el parámetro db_pass dentro de una cadena de comando mysqldump:

root@kitploit:~
shell: "mysqldump -u {{ db_user }} -p'{{ db_pass }}' {{ db_name }} > /opt/backups/backup.sql"
arguments:
  - name: db_pass
    type: password

Esta configuración introduce una vulnerabilidad crítica de inyección de comandos (CVE-2026-27626) porque el parámetro db_pass está encerrado entre comillas simples dentro de un contexto de shell, pero no sanea adecuadamente la entrada que contiene operadores de control de shell (por ejemplo, puntos y coma ;, tuberías | o acentos graves).


5. Estrategia de explotación y ejecución (CVE-2026-27626)

5.1 Configuración de un túnel de reenvío de puertos SSH

Dado que el servicio vulnerable OliveTin está vinculado estrictamente a 127.0.0.1:1337, las solicitudes externas desde la máquina atacante Kali se bloquean con un error Connection refused. Para interactuar con el servicio, establecimos un túnel de reenvío de puertos local mediante SSH:

root@kitploit:~
ssh -L 1337:127.0.0.1:1337 haris@<TARGET_IP>

5.2 Creación y ejecución del payload de explotación

Utilizando un script de explotación en Python dirigido al endpoint de la API de OliveTin (/api/olivetin.api.v1.OliveTinApiService/StartAction), inyectamos comandos arbitrarios del sistema en el vector de parámetro vulnerable.

Debido a la estricta sintaxis del shell y a las dependencias de directorios en el wrapper del comando mysqldump original, la creación directa de archivos podía en ocasiones dar lugar a errores de estado de salida (como directorios de destino inexistentes o restricciones de permisos). Mediante la creación de cadenas de ejecución precisas o la consulta directa del sistema de archivos a través de la vulnerabilidad de la API, sorteamos los obstáculos de ejecución.

Ejecutando el payload del comando a través de la interfaz de explotación:

root@kitploit:~
python3 CVE-2026.27626.py -u http://127.0.0.1 -x "cat /root/root.txt"

Salida de la ejecución:

root@kitploit:~
[+] Execution ID: 7fd15259-3996-4e03-9ebd-329034ee4e0d
======================================================================
Command Output
======================================================================
exit status 127
Usage: mysqldump [OPTIONS] database [tables]
...
ae9306f5690c4812c6f9445027d0d060
sh: 1: : Permission denied
======================================================================

La flag de root se extrajo con éxito directamente a través del flujo de salida del comando.


6. Post-explotación y evidencia de compromiso

  • Flag de root obtenida: ae9306f5690c4812c6f9445027d0d060
  • Persistencia administrativa: Un mecanismo de persistencia alternativo consiste en añadir una clave pública SSH a /root/.ssh/authorized_keys mediante el vector de inyección de comandos, lo que otorga un acceso administrativo fluido al terminal.

7. Recomendaciones de remediación y defensa

  1. Saneamiento y parametrización de entradas: Asegurarse de que los parámetros de la aplicación que se pasan a comandos del sistema (como las contraseñas de bases de datos en OliveTin) se validen estrictamente contra conjuntos de caracteres alfanuméricos, prohibiendo los metacaracteres de shell sin procesar.
  2. Principio de mínimo privilegio: Evitar ejecutar software de automatización de gestión como OliveTin bajo el contexto de seguridad de root a menos que sea absolutamente necesario. Ejecutar los servicios bajo cuentas de servicio dedicadas con permisos mínimos.
  3. Actualizaciones de software: Actualizar OliveTin y los wrappers de automatización asociados a versiones parcheadas en las que se mitiguen las vulnerabilidades de inyección de comandos a través de parámetros con plantillas.
  4. Segmentación de red: Restringir que las interfaces de gestión se vinculen a interfaces de loopback si la supervisión administrativa requiere autenticación multifactor o listas de control de acceso (ACL) a nivel de red.
Descargar herramienta