Les scanneurs de vulnérabilité et Metasploit
Introduction
Un scanneur de vulnérabilités est un outil permettant d’identifier la présence de vulnérabilités sur un périmètre cible que celui-ci soit de l’ordre de la machine isolée ou bien du réseau complet.
Le fonctionnement d’un scanneur de vulnérabilités reste relativement simple. En effet, ce dernier commence par les actions suivantes :
-
Identifier les machines actives sur le réseau.
-
Réaliser un scan de ports TCP/UDP sur les machines précédemment identifiées.
-
Identifier les services s’exécutant sur chaque port.
Rien de bien nouveau actuellement donc. Néanmoins, les scanneurs de vulnérabilités ne s’arrêtent pas là. En effet, dès lors que les services sont identifiés, la fonctionnalité la plus importante de ces outils est de sélectionner des modules propres au scanneur utilisé pour exploiter diverses vulnérabilités.
L’ensemble de ces modules (ou exploits) est packagé au sein des scanneurs de vulnérabilités afin de disposer d’un rendu clair et compréhensif sur la possibilité d’exploiter la vulnérabilité ou non.
Les scanneurs de vulnérabilités étant des logiciels tout aussi complexes que Metasploit, seules quelques commandes de base sont mises...
Nessus
Nessus, de la société Tenable Network Security, est un scanneur de vulnérabilités multiplateforme (Windows, Unix, Mac). Actuellement, Nessus intègre pas moins de 45 000 CVE (Common Vulnerabilities and Exposures) ainsi que 100 000 plugins faisant de lui l’un des scanneurs de vulnérabilités les plus utilisés dans le cadre des tests d’intrusion automatisés.
1. Installation de Nessus
Comme Metasploit, Nessus dispose de plusieurs versions. Au sein de ce livre, la version gratuite (Home) a été utilisée. Cette dernière peut être téléchargée à l’adresse suivante : https://www.tenable.com/downloads/nessus
L’installation sous Kali Linux peut se faire directement via le binaire au format deb (format de fichier propre à la distribution Debian sur laquelle se base Kali Linux) :
Même dans le cadre d’une version gratuite, il est nécessaire d’obtenir un code d’activation.
Une fois le code d’activation obtenu, il est possible d’installer Nessus en ligne de commande :
root@kali:/tmp# dpkg -i Nessus-8.3.1-debian6_amd64.deb
Sélection du paquet nessus précédemment désélectionné.
(Lecture de la base de données... 339606 fichiers et répertoires déjà
installés.)
Préparation du dépaquetage de Nessus-8.3.1-debian6_amd64.deb ...
Dépaquetage de nessus (8.3.1) ...
Paramétrage de nessus (8.3.1) ...
Unpacking Nessus Scanner Core Components...
- You can start Nessus Scanner by typing /etc/init.d/nessusd start
- Then go to https://kali:8834/ to configure your scanner
Traitement des actions différées (« triggers ») pour systemd (240-4) ...
Comme l’indiquent les dernières lignes, Nessus est maintenant disponible à l’adresse https://kali:8834/ une fois le serveur démarré. Après avoir validé le code d’activation et téléchargé l’ensemble des plugins, il est alors possible d’accéder à l’interface principale de Nessus :
2. Utilisation de Nessus
Nessus dispose d’une interface particulièrement épurée....
Nexpose
Nexpose, dans sa version Community Edition est un scanneur de vulnérabilités comparable à Nessus, développé par la société Rapid7, éditrice du framework Metasploit.
Attention, pour fonctionner dans les meilleures conditions, Nexpose demande certaines ressources système telles que 80 Go d’espace disque ainsi que 8 Go de mémoire.
1. Installation de Nexpose
La dernière version de Nexpose dans sa version d’essai de 30 jours peut être téléchargée depuis le site officiel à l’adresse suivante : https://www.rapid7.com/info/nexpose-trial
Une fois l’inscription réalisée, il est possible de télécharger Nexpose dans sa version 64 bits sous Linux pour l’installer sur Kali :
root@kali:~# wget
http://download2.rapid7.com/download/InsightVM/Rapid7Setup-Linux64.bin
--2019-01-25 20:18:54--
http://download2.rapid7.com/download/InsightVM/Rapid7Setup-Linux64.bin
Resolving download2.rapid7.com (download2.rapid7.com)...
104.73.156.147
Connecting to download2.rapid7.com
(download2.rapid7.com)|104.73.156.147|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/octet-stream]
Saving to: ‘Rapid7Setup-Linux64.bin'
Rapid7Setup-Linux64.bin [ <=> ]
781.99M 379KB/s in 27m 12s
2019-01-25 20:46:06 (491 KB/s) - ‘Rapid7Setup-Linux64.bin' saved
[819978612]
root@kali:~# chmod +x Rapid7Setup-Linux64.bin
root@kali:~# ./Rapid7Setup-Linux64.bin
[...]
****************************************************************
Installation is complete!
****************************************************************
If you chose to start the Security Console...
OpenVAS
OpenVAS (Open Vulnerability Assessment System) est un scanneur de vulnérabilités comparable à Nessus, à la différence que celui-ci est sous licence GNU GPL (open source). Il a été créé suite à l’arrêt du développement de Nessus en open source en 2005.
Le côté open source ainsi que l’utilisation d’une base de vulnérabilités connues (50 000 vulnérabilités) font d’OpenVAS un outil particulièrement utile au cours des tests d’intrusion automatisés.
1. Installation d’OpenVAS
Comme Nessus, OpenVAS n’est pas installé par défaut sous Kali. Pour ce faire, il est nécessaire de suivre les commandes suivantes :
root@kali:~# apt-get update
root@kali:~# apt-get install openvas
root@kali:~# openvas-setup
[>] Updating OpenVAS feeds
[*] [1/3] Updating: NVT
[...]
[*] [2/3] Updating: Scap Data
[...]
[*] [3/3] Updating: Cert Data
[...]
[>] Stopping OpenVAS services
[>] Starting openvassd
[>] Migrating openvassd
[>] Rebuilding openvassd
[>] Stopping openvassd
[*] Please wait for the OpenVAS services to start.
[*]
[*] You might need to refresh your browser once it opens.
[*]
[*] Web UI (Greenbone Security Assistant): https://127.0.0.1:9392
[*] Opening Web UI (https://127.0.0.1:9392) in: 5... 4... 3... 2... 1...
[>] Checking for admin user
[*] Creating admin user
User created with password 'de70edc2-284b-49fd-ab8c-972ebd6cf3c9'.
[+] Done
2. Intégration d’OpenVAS à Metasploit
Comme évoqué dans la section Les commandes de base au chapitre Premiers pas avec Metasploit, il est possible, au sein de Metasploit, de charger des modules externes permettant d’interagir avec des outils tiers. L’un des modules en question permet l’interaction avec OpenVAS :
msf6 > load openvas
[*] Welcome to OpenVAS integration by kost and averagesecurityguy.
[*]
[*] OpenVAS integration requires a database connection. Once the
[*] database is ready, connect to the OpenVAS server using
openvas_connect.
[*] For additional...