π©Mr. Robot
Reconocimiento
Empezamos haciendo un escaneo de puertos con Nmap:
sudo nmap -sSVC --open --min-rate 5000 -Pn -v 10.10.191.192 -oN escaneo.txt
Analizando los resultados vemos que los puertos 80 HTTP y 443 HTTPS estΓ‘n abiertos.
Visitamos la pΓ‘gina web y no topamos con una interfaz muy interesante

Fuzzing web
Usamos Gobuster para encontrar directorios.

El fuzzing nos da muchos resultados de interΓ©s. En lo personal /robots.txt siempre es de las primeras rutas que me gusta revisar ya que nos puede dar informaciΓ³n extra.
El archivo robots.txt revelΓ³ informaciΓ³n ΓΊtil.

Nos encontramos con un archivo que al parecer contiene una lista de contraseΓ±as o usuarios.

TambiΓ©n encontramos con la ruta /key-1-of-3.txt donde encontramos la primer flag.

DespuΓ©s no movemos a la ruta /wp-login, en donde tratamos poner algunas de las credenciales tΓpicas como admin:admin pero ninguna funciona.

Fuerza bruta
Como no funcionΓ³ alguna de estas combinaciones, ahora intentaremos un ataque de fuerza bruta. Para esto usaremos BurpSuite, aunque tambien es posible hacerlo con hydra.
Primero interceptamos el login con el proxy y enviamos el request lo enviamos al intruder y ahΓ agregamos el marcador de payload al campo del usuario que es el que queremos encontrar.

DespuΓ©s entramos a la pestaΓ±a de payloads cargamos la lista (fsocity.dic) que habΓamos descargado anteriormente en /robots.txt, una vez cargada el archivo damos clic en start attack.

En los resultados filtramos por length, encontrΓ‘ndonos con que el usuario Elliot es el ΓΊnico diferente y en la respuesta confirmamos que es un usuario correcto.

Ahora buscaremos alguna contraseΓ±a vΓ‘lida para esto tambiΓ©n hay muchas herramientas que podemos utilizar, en este caso usaremos wpscan con el mismo diccionario descargado.
Dado que estaba tomando mucho tiempo en encontrando la contraseΓ±a, podemos aprovechar para explorar los otros directorios encontrados con Gobuster. DespuΓ©s de revisar un rato, en /license hallamos un texto en lo que parece base64.

Copiamos el texto y lo decodificamos:
Y al parecer tenemos la contraseΓ±a del usuario elliot.

Probamos las credenciales y listo logramos entrar sin tener que esperar a que wpscan termine. De igual forma si quieren encontrar la contraseΓ±a con fuerza bruta les recomiendo que empiecen por el final del diccionario fsocity.

ExplotaciΓ³n
Una vez encontrada la contraseΓ±a entramos al panel de administrador y hacemos un poco de exploraciΓ³n. En la pestaΓ±a Appearance/Editor podemos editar templates de cΓ³digo PHP.

En una de las plantillas , cargamos una reverse shell la cual conseguimos en pentestmonkey, solo editamos los campos de de $ip y $port.

Nos ponemos en escucha con nc -lvnp 4444 y como la reverse shell la cargamos en la plantilla de 404, podemos poner cualquier cosa que llame este script.

Le damos un tratamiento a la terminal para que sea un poco mΓ‘s interactiva y nos dirigimos al directorio del usuario encontrado en /home, donde hay dos archivos un txt donde esta la segunda flag, en el otro archivo hay un hash que parece ser del usuario robot.

En esta pΓ‘gina podemos descifrar el contenido de este hash.

Con la contraseΓ±a obtenida migramos al usuario robot y vemos el valor de la segunda flag dentro de key-2-of-3.txt.

Escalada de privilegios
Para escalar privilegios, primero intentamos ejecutar el comando sudo -l pero el usario robot no puede ejecutar comandos sudo, por lo que procedemos a buscar archivos con privilegios SUID.
Dentro de los archivos encontrados hay uno que esta fuera de lo comΓΊn: Nmap.

Haciendo una bΓΊsqueda por internet hallamos como podemos abusar de este archivo. Simplemente ejecutando:
obtenemos una shell como root, la tercera flag estΓ‘ dentro del directorio /root.

Recomendaciones de MitigaciΓ³n
EnumeraciΓ³n de directorios:
SoluciΓ³n: Deshabilitar o restringir el acceso a
/robots.txty archivos sensibles.Mejora: Configurar reglas de firewall para evitar escaneos automatizados.
ProtecciΓ³n contra fuerza bruta:
SoluciΓ³n: Implementar lΓmites de intentos fallidos y CAPTCHA en formularios de login.
Mejora: Utilizar autenticaciΓ³n multifactor (MFA).
ExplotaciΓ³n de plugins vulnerables:
SoluciΓ³n: Mantener los plugins y CMS siempre actualizados.
Mejora: Usar polΓticas de revisiΓ³n antes de instalar nuevos plugins.
Escalada de privilegios:
SoluciΓ³n: Revisar y eliminar archivos con permisos SUID innecesarios para prevenir escaladas de privilegios.
Mejora: Implementar el principio de privilegio mΓnimo.
Reverse shell:
SoluciΓ³n: Monitorizar logs y conexiones sospechosas.
Mejora: Usar soluciones de detecciΓ³n de intrusiones (IDS) para identificar shells remotas.
Last updated