Catégories
HackTheBox Machines

HTB { Blue }

Pour ce writeup, nous allons nous attaquer à la machine Blue. Elle est classée facile sur hackthebox et retirée.

1 – Scan de port

Lors du Scan de port via Nmap, voici ce qui nous est retourné.

Nous voyons que le port 445 qui est utilisé pour le protocole SMB, utilise une version qui est un microsoft ds Windows 7 Professionnel. De plus, nous voyons que l’OS est un Windows 7 professionnel Service Pack 1 via le script Nmap.

SMB (Server Message Block) est un protocole serveur-client réglant l’accès à des fichiers, à des répertoires complets et à d’autres ressources du réseau comme les imprimantes, les routeurs ou les interfaces partagées dans le réseau.

Une recherche sur google en mettant port 445 windows 7 exploit nous indique une faille appelée EternalBlue.

EternalBlue est un exploit développé par la NSA. Il est révélé et publié par le groupe de hackers The Shadow Brokers le 14 avril 2017. Cet exploit utilise une faille de sécurité présente dans la première version du protocole SMB (SMBv1). Bien que cette faille de sécurité ait déjà été résolue par Microsoft par une mise à jour de sécurité publiée le 14 mars 2017, de nombreux utilisateurs de Windows n’avaient toujours pas installé ce correctif de sécurité lorsque, le 12 mai 2017, le ransomware « WannaCry » utilise cette faille de sécurité pour se propager.

Cette vulnérabilité est un cas d’école et porte le lourd fardeau de certaines des plus grandes attaques informatique moderne (Wannacry, NotPetya, …). Saint-Gobain en a payé le plus lourd tribut avec un montant estimé à près de 350 millions d’euros.

Pour avoir confirmation, il existe un script Nmap ou un scanner sur Metasploit.

Nous entrons les données requises.

La cible est bien vulnérable à cet exploit.

Il existe deux façons: la façon de facilité via le framework Metasploit, et la façon réaliste ou nous utilisons du code d’exploitation disponible sur Github ou sur ExploitDb.

Pour la première méthode,

Nous cherchons donc l’exploit correspondant sur Metasploit et le lançons.

Bingo, nous sommes dans la machine. En regardant l’id de l’utilisateur, nous sommes administrateur de la machine.

Pour la deuxième méthode, je modifierai l’article dès que je le pourrais.

EDIT: Deuxième Méthode.

Pour la deuxième méthode, j’ai utilisé ce GitHub.

git clone https://github.com/worawit/MS17-010.git

A l’intérieur de celui-ci, il existe plusieurs exploits en fonction du système d’exploitation et d’autres paramètres. Il y a également un dossier shellcode.

Pour utiliser cet exploit sur notre machine, nous allons utiliser le script eternalblue_exploit7.py

Cet exploit demande deux paramètres, l’adresse ip de la machine à compromettre et le payload (code qui sera exécuté sur la cible une fois celle-ci compromise via un exploit).

Ce payload sera constitué de deux bouts de programme:

  1. Le programme permettant de devenir administrateur à partir de la faille “eternalblue”.
  2. Le programme permettant d’avoir un terminal pour éxecuter des commandes à distance.

Le premier programme nous est fourni par worawit via le dossier shellcode. Le deuxième programme sera créé par nos soins.

Nous allons faire deux payload pour les 2 types d’architectures: x64 et x86.

Nous avons un fichier kshellcode_x64.asm et nous utilisons la commande suivante pour compiler le shellcode: 

nasm -f bin kernel_shell_x64.asm

Ensuite nous créons un payload via msfvenom pour avoir un reverse tcp.

Ensuite nous combinons les deux fichiers en un.

Nous faisons de même pour le x86

Une fois ceci fait, nous avons un script python à l’intérieur du dossier shellcode pour « merger » les deux fichiers en un.

Enfin, nous lançons le script eternalblue avec l’adresse ip et le fichier créé par le script précédent, en n’oubliant pas avant de lancer la commande

nc -lnvp 4444

pour récupérer le reverse shell

Et voilà, nous avons accès à la machine.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *