Rappel : L’article qui va suivre contient des techniques et méthodes qui peuvent s’avérer être illégales et dangereuses si elles sont utilisées à mauvais escient. Ce tutoriel ne doit en aucun cas être utilisé contre un particulier, une entreprise, une organisation à but non lucratif ou une administration publique de quelconque pays. Je me dédouane de toute responsabilité en cas de problèmes ou d’incidents de quelque nature que ce soit après le visionnage de cet article.

**FOR EDUCATIONAL PURPOSES ONLY**

I. Introduction

Bonjour à tous ! Aujourd’hui, nous allons voir comment exploiter une vulnérabilité d’un service FTP disponible sous Linux, par l’intermédiaire du framework de sécurité metasploit. La faille de sécurité que nous allons exploiter concerne le service VSFTP en version 2.3.4. Pour cet article, nous allons utiliser la machine vulnérable metasploitable, qui dispose déjà de ce service installé.

II. Description du lab virtuel

III. Analyse (rapide) des vulnérabilités de metasploitable

Deux choix s’offrent à nous :

  • Éxecuter un scan rapide depuis nmap
  • Éxecuter un scan plus complet et précis avec l’outil nessus.

A. Scan avec nmap

nmap -A 192.168.130.147

Après quelques secondes, nous obtenons le résultat suivant :

B. Scan avancé avec nessus

a. Résultat du scan avec nessus

Après le processus de scan de la machine cible, on peut constater que nessus nous affiche un ensemble de vulnérabilités. Afin de gagner en visibilité, je trie les résultats en fonction du service ftp.

J’applique un filtre FTP, pour obtenir les résultats concernant ce service. En cliquant sur la ligne vsftpd détection, on constate que le service vsftp est bel et bien détecté comme étant la version 2.3.4. Malheureusement, nessus ne détecte pas ici la CVE associée a cette faille connue… Comme quoi dans certains cas, rien ne vaut l’œil humain ^^


IV. Tentative d’exploitation de la faille de sécurité

Les deux informations à retenir sont donc le type de service :

  • service VSFTP version 2.3.4 utilisant le protocole FTP

Nous allons vérifier si le framework metasploit référence cette vulnérabilité dans sa base de données, et contrôler si il dispose d’un exploit « tout prêt », pour profiter de cette faille. Lancez metasploit avec la commande suivante :

msfconsole

Puis cherchez si le service vsftp a déjà subit une faille de sécurité (Le cas échéant référencé dans l’index de metasploit)

search vsftp

Nous constatons qu’une vulnérabilité pour la version 2.3.4 existe bel et bien, et qu’un exploit est associé et utilisable dans notre cas. (Elle est pas belle la vie ?)

Par défaut, metasploit va utiliser le payload cmd/unix/interact. Fixez l’adresse ip de la machine metasploitable, puis lancez l’attaque par le biais de la commande exploit. (ou run) Patientez quelques secondes, le temps que metasploit tente de s’infiltrer dans metasploit par le biais de l’exploit

use 0

Puis, tapez la commande show options, afin de voir toutes les options paramétrables pour cet exploit à savoir :

  • RHOST* : L’ip de la victime : 192.168.130.147 (set RHOST 192.168.130.147)
  • RPORT : 21 (par défaut, donc pas besoin de le changer)
  • Payload option : cmd/unix/interact (par défaut)

*Les exploit qui ont besoin uniquement d’un RHOST et d’un RPORT utilisent le principe du « Bind shell ». (C’est nous qui nous connectons à lui pour profiter d’une vulnérabilité et non l’inverse). Pour plus d’information, consulter ce lien :

https://le-guide-du-secops.fr/index.php/2021/06/01/corrompre-un-fichier-deb-pour-prendre-le-controle-dun-serveur-linux-debian-ubuntu/

Puis, entrez la commande exploit, afin de lancer l’attaque :

exploit

Euréka ! Nous avons réussi à profiter de la faille de sécurité de vsftpd 2.3.4. Comme vous pouvez le constater cette exploit nous permet d’obtenir un accès root sur la machine victime. Nous sommes le capitaine du navire dès à présent 🙂

++

Geoffrey


Geoffrey Sauvageot-Berland

Ingénieur diplômé par l’état en Informatique et Cybersécurité. Généraliste, à l'origine administrateur systèmes et réseaux, j’occupe actuellement un poste d’auditeur en sécurité offensive. J’apprécie également la programmation/automatisation. Fondateur du blog : "Le Guide du SecOps", anciennement "Le Guide du SysOps"