Writeup — Máquina Build (Tarea #2)
Resolución completa de la máquina Build de VulnYX. Video arriba con el paso a paso, resumen técnico abajo.
1. Setup
Importar el .ova en VirtualBox y configurar el adaptador de red en
red SEGINFO (la red NAT que creamos en el writeup anterior, ver
Wicca si no la tienen lista).
Tras iniciar ambas VMs:
| Máquina | IP |
|---|---|
| Kali | 10.0.3.5 |
| Build | 10.0.3.6 |
2. Enumeración
sudo nmap -sV 10.0.3.6
Servicios expuestos:
- 80/tcp — IIS (página por defecto, no aporta).
- 5985/tcp — WinRM.
- 8080/tcp — Jenkins.
3. Acceso a Jenkins — credenciales por defecto
Entrando a http://10.0.3.6:8080/ aparece el login de Jenkins.
Probamos las credenciales por defecto típicas:
admin : admin
Funciona. Quedamos como administrador del Jenkins → ya tenemos RCE prácticamente garantizada.
4. RCE vía Script Console (Groovy)
En Manage Jenkins → Script Console se puede ejecutar código Groovy con los privilegios del proceso Jenkins. Generamos una reverse shell desde revshells.com filtrando por Groovy.
En Kali, listener:
nc -lvnp 9001
Primer intento con un payload tipo /bin/sh falla (la víctima es
Windows, no existe sh). Cambiamos el payload a uno que invoque cmd
(o powershell) y lo ejecutamos en la Script Console.
Shell recibida:
C:\Windows\System32> whoami
nt authority\system
Privilegios máximos directo desde Jenkins. Las flags están en:
C:\Users\builder\Desktop\user.txtC:\Users\Administrator\Desktop\root.txt
5. Lectura de las flags
Vía principal — login gráfico en la VM
Como tenemos nt authority\system, podemos cambiar la contraseña del
usuario Administrator desde la reverse shell:
net user Administrator NuevaPass123!
Ahora vamos directo a la ventana de la VM de Windows en VirtualBox
(que ya está mostrando la pantalla de login) y entramos como
Administrator con la nueva contraseña. Desde el escritorio gráfico
abrimos los .txt con el explorador y ahí están ambas flags.
Alternativa — desde la reverse shell
Si prefieren no salir de la shell:
- Con payload
cmd:more C:\Users\builder\Desktop\user.txt - Con payload
powershell(otra opción de revshells.com):catfunciona como en Linux.
Tip de informe
Como siempre, en las capturas usen echo con su apodo antes del comando
para evitar que el profe sospeche que el writeup es copiado. Ver el
post sobre cambiar el hostname de Kali.
Resumen del ataque
nmap -sV→ identificar Jenkins en:8080.- Probar credenciales por defecto
admin:admin→ entra. - Manage Jenkins → Script Console (Groovy) → reverse shell con payload Windows.
- Shell directa como
nt authority\system. - Leer ambas flags (login gráfico tras
net usero directamente desde la shell).
Vulnerabilidad clave: credenciales por defecto en un servicio crítico.
Lección: nunca dejen Jenkins (ni nada) con admin:admin.