Editorial | Hack The Box

En este tutorial voy a mostrar como obtuve la bandera root en la maquina Editorial de Hack The Box. Esta propiedad se presenta como un desafío de nivel fácil.

Editorial

14 de septiembre de 2024

Enumeración


Comienzo realizando un escaneo de puertos con nmap y me encuentro con el puerto 22 y 80 que están abiertos:

Nmap

El puerto 80 se esta ejecutando en el servidor nginx, así que voy a ingresar en el servidor para ver de que se trata:

Web

Al hacer click en el enlace "Publish With Us" (el cual se encuentra en el menú de navegación) me lleva a una página donde puedo cargar un libro mediante un archivo o pasando una url.

send url

Investigando un poco veo que se puede tratar de una vulneravilidad SSRF. Para mas información sobre esta vulnerabilidad pueden visitar esta pagina: https://www.ikusi.com/mx/blog/ssrf/#:~:text=La%20vulnerabilidad%20de%20seguridad%20web,dominio%20elegido%20por%20el%20atacante.

Explotación


Para comprobar si es posible explotar esta vulnerabilidad voy a utilizar Burpsuite y así ver que es lo que sucede cuando envío el enlace.

Al enviar la url noto que no hay ninguna autenticación, con lo cual podemos enviar la url que queramos. Para llevar a cabo el ataque SSRF coy a pasarle una url local acompañado de un puerto, el cual lo determinamos gracias al intruder de burpsuite.

Burpsuite port

Y de respuesta me devuelve lo siguiente:

Burpsuite Response

Lo unico que me resulto interesante del resultado fue la api "authors", ya que puedo llegar a encontrar algun usuario. De todas maneras voy a ingresar en cada una de las APIs para ver su información.

Url Authors

En la API authors encuentro un mensaje de bienvenida que me indica la contraseña por defecto del usuario "dev":

Authors

Usando el usuario y la contraseña voy a acceder mediante SSH:

Ingreso SSH

Y ahora con solo listar los archivos ya me encuentro con la bandera user.

Escalamiento de Privilegios


Para continuar realice algunas enumeraciones y encontre que hay un una carpeta llamada "apps" que contiene una carpeta ".git", la cual tiene algunos commit.

Usando el comando git show pude ver mas informacion sobre los commit y note que uno de los cambios esta relacionado con un usuario de nombre "prod".

.git

De esta forma encontre la contraseña del usuario "prod" asi que ahora voy a ingresar mediante SSH.

Con el usuario prod tengo acceso total al archivo clone_prod_change.py, el cual me llamo la atencion y decidi investigar un poco mas hasta encontrar un CVE asociado a este archivo, CVE-2022-24439.

Estuve un buen tiempo investigando un exploit para esta vulnerabilidad y encontré lo siguiente:

Final

De esta forma obtengo la bandera root.

Felicidades! Espero que te haya servido el tutorial.