Blunder HackTheBox (Writeup)
Skills:
Bludit CMS Exploitation
Bypassing IP Blocking (X-Forwarded-For Header)
Directory Traversal Image File Upload (Playing with .htaccess)
Abusing sudo privilege (CVE-2019-14287)
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

Créer un fichier malveillant (
evil.png) contenant du code PHP :
Modifier le script pour l'adapter à la situation (adresse IP de la victime, nom d'utilisateur, mot de passe...).

Exécuter l'exploit:
Script Python d'exploitation :

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

Écouter sur le port 443 avec Netcat :
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