Blunder HackTheBox (Writeup)

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 (80)

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 (Blunder):

Scan de répertoires

Utilisez Gobuster pour trouver des répertoires intéressants :

  • Résultat : Découverte du répertoire /admin.

Identification du CMS

En accédant à /admin, le CMS Bludit (version 3.9.2) est détecté.

Exploitation de Bludit CMS

Recherche de vulnérabilités

Utilisez searchsploit pour trouver des vulnérabilités connues :

Vulnérabilité détectée : CVE-2019-17240

L'exploit vise à exploiter une vulnérabilité dans la mitigation des attaques par force brute sur Bludit, une plateforme CMS (Content Management System). La vulnérabilité, identifiée comme CVE-2019-17240, permet à un attaquant de contourner les protections contre les attaques par force brute mises en œuvre dans les versions de Bludit antérieures ou égales à la 3.9.2.

searchsploit -m php/webapps/48942.py

Fichier texte trouvé

Effectuez une recherche supplémentaire avec Gobuster :

Contenu : Utilisateur identifié : fergus.

Brute Force sur Bludit

Une fois l’utilisateur fergus découvert, utilisez un dictionnaire pour lancer une attaque par force brute :

Aucune correspondance trouvée avec le fichier rockyou.txt.

Dictionnaire personnalisé

Utilisez Cewl pour générer un dictionnaire basé sur le site web :

Relancez l’attaque brute force avec le dictionnaire personnalisé :

  • Mot de passe trouvé : fergus:RolandDeschain

Explotation Directory Traversal Image File Upload:

Une fois authentifié, ce CMS est vulnérable à une attaque de type Directory Traversal permettant l'upload de fichiers malveillants.

Nous pouvons spécifier l'emplacement du fichier téléchargé en modifiant la valeur du uuid, puis charger une image malveillante dans le dossier temporaire.

Après l'authentification, il est possible de télécharger un nouvel exploit via searchsploit dans multiple/webapps/48701.txt, qui fournit les étapes pour exploiter cette vulnérabilité.

Étapes pour l'exploitation

  1. Créer un fichier malveillant (evil.png) contenant du code PHP :

  1. Modifier le script pour l'adapter à la situation (adresse IP de la victime, nom d'utilisateur, mot de passe...).

  1. Exécuter l'exploit:

Script Python d'exploitation :

  1. Accéder au fichier malveillant : Une fois l'image téléchargée, il suffit de se rendre sur /bl-content/tmp/temp/evil.png pour exécuter des commandes.

  1. Écouter sur le port 443 avec Netcat :

  1. Exécuter une reverse shell :

Gestion de la session terminal :

Élévation de privilèges

En explorant les fichiers, on découvre un fichier users.php dans le dossier databases contenant des identifiants hachés pour les utilisateurs fergus et admin :

admin:bfcc887f62e36ea019e3295aafb8a3885966e265

fergus:be5e169cdf51bd4c878ae89a0a89de9cc0c9d8c7

En utilisant CrackStation pour tenter de cracker ces hachages, il apparaît que ceux-ci ne sont pas reconnus.

En revanche, à la racine du site internet, une version plus récente de Bludit est trouvée, contenant les mêmes fichiers de configuration, mais avec des identifiants différents :

  • hugo : faca404fd5c0a31cf1897b823c695c85cffeb98d

hugo:Password120

Flag user.txt:

Abusing sudo privilege (CVE-2019-14287):

Lors de l'examen des privilèges sudo, nous avons découvert une configuration vulnérable dans le fichier sudoers. En utilisant la commande sudo -l, nous avons identifié un privilège qui permet de se connecter à tous les utilisateurs, sauf root, avec la commande /bin/bash :

Cette vulnérabilité affecte toutes les versions de sudo antérieures à la version 1.8.27.

Dans notre cas, la version de sudo est inférieure à 1.8.27, ce qui rend cette vulnérabilité exploitable.

Pour exploiter cette vulnérabilité, il suffit d'exécuter la commande suivante :

Cette commande permet d'exécuter une shell en tant que l'utilisateur -1, ce qui correspond à l'utilisateur root.

Flag root.txt :)

Mis à jour

Ce contenu vous a-t-il été utile ?