Catégories
CTF

LazyAdmin

« Easy linux machine to practice your skills. »

https://tryhackme.com/room/lazyadmin

Easy linux machine to practice your skills

Phase d’énumération

nmap <ip_address> :

On voit qu’il y a les ports 22:ssh et 80:http. Voyons voir ce qui se trouve sur le serveur web.

contenu du sous dossier /content

On apprend sur le site qu’il est géré par un CMS du nom de SweetRice.
Voyons voir si nous pouvons exploiter ce CMS grâce au site exploit-db.com

Nous allons nous pencher sur une exploitation spécifique: SweetRice 1.5.1 – Backup Disclosure

Elle nous indique que nous pouvons accéder librement au fichier de backup de la base de données du site. Tentons de la récupérer sur notre site afin de voir si des informations pourraient nous être utile à récupérer des identifiants par exemple.

Nous pouvons bien télécharger la backup mysql !

Regardons maintenant à l’intérieur :

Phase d’exploitation

On finit bien par trouver un login/mdp dans le fichier MySQL, testons de nous connecter au CMS:

La connexion est faite.
Notre but est maintenant de mettre un reverse shell en place sur le site, pour cela je me sers du site : revshells.com

On vient placer notre code dans le dossier « Ads » afin de le lancer après.

Dans un terminal, on écoute le port 31337 (port dont je décide moi-même le nombre dans mon reverse shell) grâce à la commande Netcat afin de récupérer le shell quand notre exploit aura été lancé

Et une fois dans le dossier, on peut lancer notre reverse shell:

TIENS ! Nous avons accès à la machine.

Ensuite, on vient mettre en place un full TTY sur le shell en lançant les commandes suivantes :

python3 -c 'import pty; pty.spawn("/bin/bash")'

stty raw -echo; fg; ls; export SHELL=/bin/bash; export TERM=screen; stty rows 38 columns 116;

On a maintenant un vrai shell :

On obtient le flag user.txt :

Phase d’élévation de privilèges

Pour élever nos privilèges voyons les commandes que nous pouvons lancer en compte root :

Voyons voir ce fichier…

Un shell qui se lance avec du perl via le fichier copy.sh, creusons.

Un netcat qui pointe vers l’adresse 192.168.0.190 et pointe sur le port 5554, essayons de changer cela pour le tirer à notre avantage :

On a plus qu’à lancer le fichier en sudo avec une écoute sur un autre terminal et le tour sera joué!

Et voilà, nous sommes passés root sur la machine et pouvons récupérer le flag correspondant!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *