Traverxec HackTheBox (Writeup)
Skills:
Nostromo Exploitation
Abusing Nostromo HomeDirs Configuration
Exploiting Journalctl (Privilege Escalation)
Reconnaissance
Création de l'espace de travail :
Nous établirons notre espace de travail en créant trois dossiers pour stocker les contenus importants, les exploits et les résultats de la reconnaissance à l'aide de Nmap.

Vérification de la Connectivité VPN
Vérification de la connexion VPN pour assurer une communication stable avec la machine cible.

Recherche des ports ouverts avec Nmap :
Exploration des ports ouverts et exportation dans le fichier "allPorts" dans le répertoire Nmap:

Analyse des ports ouverts avec extractPorts:
Utilisation de la fonction extractPorts pour afficher de manière synthétique les ports ouverts et les copier dans le clipboard.

Scan de la version des ports avec Nmap:
Utilisation de Nmap pour scanner la version des ports et extraction des informations dans le fichier "targeted" :

Pour résoudre les noms de domaine en adresses IP via DNS, on insère dans le fichier /etc/hosts le nom de domaine associé à son adresse IP

Port 80:

En utilisant whatweb, on identifie la version 1.9.6 de Nostromo :

Nostromo Exploitation
Recherche d’Exploit : Sur searchploit, trouve un exploit RCE pour Nostromo 1.9.6 (CVE-2019-16278).

Télécharge le script sur GitHub.
Exécution du Script : Utilise le script suivant pour exécuter des commandes sur le serveur

Obtention d’un Reverse Shell

Amélioration du Terminal
Pour rendre le terminal interactif :
Élévation de privilège:
Accès aux Fichiers de Configuration de Nostromo :
Dans le fichier nhttpd.conf, on trouve une directive indiquant un fichier .htpasswd dans /var/nostromo/conf qui contient des informations d’authentification.


david:$1$e7NfNpNi$A6nCwOTqrNR2oDuIKirRZ/
Décryptage du Mot de Passe :
Utilise john pour déchiffrer le mot de passe :
david:Nowonly4me

Nostromo HomeDirs Configuration


En parcourant ce fichier, on découvre également la mention d’un dossier public_www comme emplacement par défaut pour le contenu web des utilisateurs.

En accédant à http://traverxec.htb/~david, nous trouvons un dossier caché protected-file-area contenant un fichier .tgz.

Téléchargement et Extraction du Contenu :
Télécharge le fichier backup-ssh-identity-files.tgz :

Extrayons le contenu pour récupérer une clé SSH:
tar -xzf backup-ssh-identity-files.tgz

Décryptage de la Clé SSH :
La clé SSH extraite est protégée par un mot de passe. Nous utilisons ssh2john pour convertir la clé au format utilisable par john et lançons une attaque par force brute :



Mot de passe trouvé : hunter.

Flag user.txt

Exploiting Journalctl:

Recherche de Vulnérabilité dans GTFOBins :
En consultant GTFOBins, nous découvrons que
journalctlpeut être utilisé pour élever des privilèges en lançant une commande shell.

Conditions d’Exécution :
Pour déclencher cette exploitation, il faut restreindre la taille de la fenêtre de terminal afin d'activer le mode de pagination less dans journalctl. Ce mode permet d'exécuter des commandes shell via !.

Une fois dans le mode less, entre la commande suivante pour obtenir un shell root :

Flag root.txt :)


Mis à jour
Ce contenu vous a-t-il été utile ?
