Delivery 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 (22,80,8085)

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" :

Port 80:

Identification des informations avec WhatWeb :

L'exécution de WhatWeb nous révèle un utilisateur jane avec l'adresse email [email protected].

Nous trouvons également un domaine delivery.htb et un sous-domaine helpdesk.delivery.htb.

Configuration du fichier /etc/hosts

Nous ajoutons l'adresse IP de la cible à notre fichier /etc/hosts pour faciliter les résolutions DNS locales.

Support Center - HelpDesk :

Le sous-domaine helpdesk.delivery.htb permet de créer des tickets d'assistance. Nous essayons de créer un compte avec les informations suivantes :

Ouverture d'un ticket

Un nouveau ticket est ouvert, et nous recevons un email contenant un identifiant :

Lors de la vérification du ticket, nous utilisons notre propre adresse email ([email protected]), bien que nous ne l'ayons pas créée, ainsi que le numéro du ticket reçu (7990131).

Cela nous permet d'accéder à la boîte mail associée.

Port 8065 - Mattermost

Découverte de Mattermost :

Le port 8065 héberge un CMS Mattermost.

Tentative de création de compte :

Nous tentons de créer un compte, nous utilisons alors l'adresse email : [email protected] nom : jordan1 password Jordan1234#

Nous recevons un message de vérification contenant un token pour activer le compte :

Après validation, nous nous connectons avec nos identifiants et accédons au panel de gestion de Mattermost.

Récupération d’identifiants

Dans la section "Switch Channels", nous trouvons un message contenant un identifiant et un mot de passe :

  • Nom d'utilisateur : maildeliverer

  • Mot de passe : Youve_G0t_Mail!

Nous tentons alors une connexion SSH avec ces identifiants :

Flag user.txt :)

Élévation de privilèges

Nous allons à la racine du système, dans le dossier /var/www/html/osticket, et nous filtrons par le mot password :

Nous ne trouvons rien d’intéressant.

Nous allons maintenant chercher des informations pour Mattermost en filtrant les processus en cours :

Nous repérons que Mattermost est installé dans /opt et trouvons un fichier config.json.

En l’ouvrant, nous découvrons des identifiants pour la base de données SQL :

  • Username: mmuser

  • Password: Crack_The_MM_Admin_PW

Connexion à MySQL

Nous utilisons ces identifiants pour nous connecter à la base de données :

Nous listons les bases de données :

Nous listons les tables disponibles et décrivons la structure de la table Users :

Enfin, nous sélectionnons les colonnes Username et Password :

Nous trouvons alors le hash du mot de passe de root:

$2a$10$VM6EeymRxJ29r8Wjkr8Dtev0O.1STWb4.4ScG.anuu7v0EFJwgjjO

1. Brute Force - Hash

Nous utilisons hashid pour identifier le type de hash :

On constate que c'est bcrypt.

Avec John the Ripper, nous allons lancer une attaque par force brute en spécifiant le format bcrypt :

Cependant, cela ne fonctionne pas avec rockyou.txt, aucun mot de passe n'est trouvé.

En observant le chat du groupe, nous remarquons qu'ils disent directement que le mot de passe "PleaseSubscribe!" est réutilisé. Ce mot de passe n'apparaît pas dans rockyou.txt, mais un hacker pourrait utiliser hashcat pour générer des variantes.

Password Variants - Hashcat

Génération de variantes avec Hashcat

Avec hashcat, nous allons créer des variantes du mot de passe :

Nous allons ensuite tenter de cracker le hash en utilisant hashcat et le nouveau dictionnaire :

Le mot de passe trouvé est : PleaseSubscribe!21

2. Brute Force sur "su" - sucrack

Nous allons lancer une attaque contre su :

Il nous indique que le mot de passe est bien : PleaseSubscribe!21

Nous réussissons à nous connecter en tant que root.

Flag root.txt :)

Mis à jour

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