Abuse traditional vulnerabilities via untraditional means.
L’adresse IP de la victime peut être amenée à changer, c’est normal je l’ai fait en deux fois
Phase d’énumération
Pour commencer la box, rien de tel qu’un petit nmap sur l’adresse IP de la victime pour voir quels services tournent sur le serveur :

On voit que le port FTP accepte les connexions anonymes, on peut donc essayer de se servir de ça pour voir ce qu’il contient.
Phase d’exploitation

On voit qu’il contient un dossier « ftp », une image en .jpg et une fichier texte « notice.txt », récupérons le tout pour voir ce qu’ils contiennent plus tard.

Le dossier « ftp » ne contient rien, passons à l’analyse des deux fichiers récupérés :


Nous apprenons donc deux choses avec ce document texte, en premier lieu qu’ils hébergent bien un site internet et en second lieu que nous pouvons télécharger des documents depuis leur site donc qu’il est bien actif.

Voyons voir quels sont les dossiers « cachés » que nous pourrions découvrir sur le site :


Nous retrouvons la structure du serveur, essayons d’inclure un fichier sur le serveur qui nous permettrai de récupérer un accès légitime au serveur
Petit test avec un fichier ne contenant rien :

Le fichier s’étant bien importé, nous pouvons désormais essayer avec un fichier malicieux en .php contenant un reverse shell :


Comme nous retrouvons bien nos fichiers sur le site, exploitons la faille:


Je récupère bien un accès, maintenant c’est reparti pour une phase de reconnaissance afin de repérer ce qui pourrait m’être utile pour faire un mouvement latéral et récupérer l’accès d’un utilisateur:


Je récupère le premier flag THM :

Je crée un mini serveur web pour pouvoir récupérer les différents fichiers du dossier « incidents » vers ma machine attaquante :


Nous n’avons pu récupérer que la recette et un fichier .pcapng mais pour l’instant voyons voir si le compte par défaut peut faire une élévation de privilèges en analysant le serveur avec linpeas :



Après analyse du résultat du script, je n’ai rien trouvé de facilement exploitable, voyons voir si une autre solution est possible.

En me baladant sur le serveur je découvre qu’un utilisateur du serveur a pour nom « lennie », voyons voir si je trouves d’autres choses pour pouvoir faire mon mouvement latéral :
Je tente de regarder ce qui se trouve dans le fichier suspicious.pcapng

Je comprends donc qu’un ancien attaquant est déjà par là et a tenté de rentrer sur le serveur en utilisant un mot de passe non fonctionnel pour le compte « www-data ».

Je tente naïvement de rentrer sur le serveur en tapant le mot de passe précédemment trouvé avec le nom d’utilisateur « lennie » :

Cela a fonctionné, j’ai réussi mon mouvement latéral et peut donc récupérer mon second flag :


Passons maintenant à la phase d’élévation de privilèges avec toutes les informations que je détiens.
Phase d’élévation de privilèges
Dans son dossier home, j’observe un sous-dossier nommé « scripts », allons voir ce qu’il contient :
On voit qu’il y a un script nommé « planner.sh » donc supposément un script qui tourne de manière planifié, regardons ce qu’il exécute :

Le document texte ‘startup_list.txt’ ne contient rien.

En revanche on voit que le script ‘print.sh’ exécute des commandes bash, nous pouvons potentiellement nous en servir pour refaire un reverse shell mais dans un environnement root.


Préparation reverse bash :


Après avoir attendu une minute, j’ai bien un retour du reverse dans l’environnement root.
Je me sers du full TTY (https://hacktricks.boitatech.com.br/shells/shells/full-ttys) pour avoir un environnement fiable dans lequel évoluer.

Grâce à ça je peux récupérer mon dernier flag et terminer la box.


GG !