JenkHack

✍️ Autor: d1se0 🔍 Dificultad: Fácil 📅 Fecha de creación: 05/09/2024

🔍 RECONOCIMIENTO

En primer lugar, tras conectarnos a la máquina, utilizamos el comando:

ping -c 1 172.17.0.2

para verificar la conectividad de red.

A continuación, realizamos el comando:

para realizar un escaneo de puertos y servicios detallado en la dirección IP.

Como podemos observar durante el escaneo que el puerto 80 perteneciente al servicio HTTP, el puerto 443 perteneciente al servicio HTTPS y el puerto 8080 perteneciente al servicio HTTP están abiertos por lo que a continuación se indagará más.

🔎 EXPLORACIÓN

Se utiliza el comando:

para que nos proporcione más información sobre esos puertos específicamente.

Añadimos el dominio al fichero /etc/hosts. Seguimos indagando más sobre los puertos y ahora indagamos sobre el servicio HTTP. Se ingresó la dirección IP en el navegador lo que llevó a que la página web llamada Hacker Nexus.

Revisando el código fuente hay parece unas credenciales del usuario admin.

Miramos el contenido del puerto 8080 y hay un panel de Login de Jenkins. Ingresamos esas credenciales.

🚀 EXPLOTACIÓN

Estamos dentro. Seleccionamos manage jenkins y luego script console que nos permite enviar una reverse shell mediante Groovy mediante nos ponemos en escucha.

Hacemos el tratamiento de la TTYarrow-up-right para trabajar más cómodos.

🔐 PRIVILEGIOS

Al estar dentro y ejecutar:

aún no somos root, por lo que hacemos:

para ver si hay algo para explotar. No tenemos permisos SUDO.

Indagando entre los directorios encontramos un archivo que descodificamos con este páginaarrow-up-right.

Nos logueamos con esas credenciales.

Tenemos permisos SUDO con bash por lo que miramos como elevar los privilegios con esta páginaarrow-up-right. Hay un archivo en el directorio /opt llamado bash.sh. Borramos el archivo y editamos su contenido.

Le damos permiso al archivo.

Ejecutamos.

Last updated