OPENVAS 9 – audit de vulnérabilité
Concept d’OpenVAS
Il peut être utile de rappeler que cet outil ne peut être utilisé sur son propre réseau, uniquement à destination de son environnement, à l’exclusion de tout autre serveur, application, site web tiers.
Installation/Configuration
Préparation de Kali :
- mise à jour complète (prévoir de patienter…)
-
sudo apt-get clean && sudo apt-get update && sudo apt-get upgrade --fix-missing -y && sudo apt-get dist-upgrade --fix-missing -y
-
- Installation de NMAP 5.51.6 : la version 7 installée n’est réellement supportée que pour des scan « Full & Fast », si vous prévoyez d’utiliser les NVT NSE alors installez la version NMAP recommandée.
-
wget http://nmap.org/dist-old/nmap-5.51.tgz
-
tar xzvf nmap-5.51.tgz
-
cd nmap-5.51
-
./configure
-
sudo make && sudo make install
-
cd ..
-
sudo ldconfig
-
sudo apt-get install alien nsis rpm
-
Options :
Vous pouvez choisir d’installer les packages suivants pour la partie reporting (polices de caractère et génération de documents PDF) :
-
sudo apt-get install texlive-latex-extra --no-install-recommends
-
sudo apt-get install texlive-fonts-recommended
Si vous prévoyez des scans d’environnement Windows, notamment sur des partages SMB, installez le client SMB (normalement déjà installé sous Kali):
-
sudo apt-get install smbclient
Installation de OpenVas :
- Installation :
-
sudo apt-get install openvas
-
- Le Setup (le script intégra la mise à jour des bases de vulnérabilité depuis 2002, et plus de 1.2 Go de données, donc prévoir un peu de temps, voire un peu plus sur un PI3 ….) :
-
sudo openvas-setup
-
- Vérification que l’installation s’est bien déroulée : il ne doit y avoir aucun warning.
-
sudo openvas-check-setup
-
- Par la suite, il sera nécessaire d’effectuer les mises à jour des bases de vulnérabilités avec les commandes ci-dessous :
-
sudo greenbone-scapdata-sync
-
sudo greenbone-certdata-sync
-
sudo greenbone-nvt-sync
sudo openvasmd --update
-
Configuration d’OPENVAS
- Pour changer le mot de passe Admin de la console Web :
-
sudo openvasmd --user=admin --new-password=le-nouveau-motdepasse
-
- Pour pouvoir vous connecter sur l’interface Web depuis une IP autre que KALI, il faut modifier l’IP 127.0.0.1 par l’IP de KALI :
-
sudo nano /lib/systemd/system/greenbone-security-assistant.service
-
- Complétez les modifications sur ces fichiers par un :
-
sudo systemctl daemon-reload
-
C’est fini, le re-démarrage d’OpenVAS se fait par la commande :
sudo openvas-stop && sudo openvas-start
Time out au démarrage d’OpenVAS ?
Si vous avez ce message d’erreur au démarrage du service openvas :
Redirecting to /bin/systemctl start openvas-scanner.service.service
Job for openvas-scanner.service failed because a timeout was exceeded.
See "systemctl status openvas-scanner.service" and "journalctl -xe" for details.
- Effacer le fichier
dump.rdb
(dans/var/run/redis
) - Sur le fichier redis.conf (/etc/redis), retirez le commentaire devant
save xy z
- Faites un flush de votre base de données redis
redis-cli -s /var/run/redis/redis.sock flushall
- Redémarrez redis :
service redis-server restart
- Redémarrez le Scanner (
openvassd
)
Mon premier scan !
La connexion à l’interface se fait via https://@ip:9392 avec le login admin et le mot de passe défini plus haut.
Deux méthodes pour lancer un audit depuis Openvas :
- la plus rapide (et la moins efficace)
- la plus complète : cf paragraphe ci-dessous.
Un scan « complet »
Le principe d’un scan dans Openvas consiste à configurer au préalable son environnement de test ; cela consiste à définir au préalable les éléments suivants :
- le type de scan (listés dans Configuration / Scan Configs) qui définir le nombre de vulnérabilités testées (nombre de NVTs actives), ce qui aura un impact sur la richesse des résultats, la lenteurs d’exécution,.. il est possible de créer, personnaliser son propre scan en utilisant le bouton News Scan Config (étoile blanche/bleue en haut à gauche).
- les identifiants (dans Configuration/ Credentials). Pour le cas, où vous avez déjà des indices sur les identifiants, mots de passe à utiliser pour l’exécution de certains tests applicatifs : vous pouvez déclarez ceux-ci en créant un nouveau « Credential »
- la liste des ports (dans Configuration/ Port Lists) ; un certain nombre de listes de port est déjà préconfigurée, mais vous pouvez ajouter/créer une liste de ports personnalisés comme par exemple vouloir scanner que ce qui touche au HTTPS (en ajouter une nouvelle liste, déclarer dans port range : T:443 pour ne scanner que le port 443 sur TCP).
- et enfin, les cibles (dans Configuration / targets) ; ici vous déclarer vers quelles IP l’audit va s’exécuter, en se basant sur quels ports (présents dans Port Lists), en utilisant quelle authentification (parmi celles présentent dans Credential) et enfin avec quelle méthode de détection (Alive Test) : le choix par défaut « Scan Config Default » est trop souvent bien inadapté, il est préférable de test avec TCP-ACK Service Ping ou ICMP & TCP-Ack Service Ping (voire ARP Ping si vous êtes sur un réseau local direct).
- Quand vous avez précisé tous les paramètres, cliquez sur CREATE.
- Allez ensuite dans Scans /Tasks, puis cliquez sur l’icone NEW TASK
- Nommez votre tâche d’audit, sélectionnez la TARGET créée précédemment, choisissez le type de scan (Full, Fast, ou personnalisé), si vous avez plusieurs IP vous pouvez choisir un scan basé sur un choix séquentiel ou aléatoire, et enfin vous pouvez ajuster (baisser) le nombre d’IP scannée en simultanée ainsi que le nombre de tests de vulnérabilités simultanés par IP.
- Puis créez la tâche en finissant sur Create.
- Retournez dans le menu Scans / Tasks puis au regard de votre nouvelle tâche, cliquez sur le bouton Play pour lancer l’exécution de l’audit. Celui-ci sera terminé lorsque le status passera à DONE.
- la colonne Reports indiquera le nombre d’audit exécuté, la dernière date de l’audit et le niveau de sévérité détecté.
- En cliquant sur la date der dernier audit vous afficherez le résultat de l’audit
- En cliquant sur chacune des vulnérabilités, vous aurez accès au résumé, au détail de la détection, la solution proposées, les logiciels affectés, la méthode de détection ainsi que les références CVE/CERT ou autres organisme.
- Sur la page de report, en haut à gauche, vous pourrez exporter le rapport complet au format XML, HTML ou PDF (entre autres).
Exemple PDF
Exemple d’un scan sur un Windows 2008R2 standard, mise à jour en date de 07/2016, donc vulnérable à Wannacry
Richesse d’Openvas
Ce qu’on voit ici est puissant et plutôt basique : OPENVas offre des fonctionnalités à ne pas négliger comme, la programmation régulière d’audit afin d’identifier automatiquement si de nouvelles vulnérabilités sont trouvées (par exemple après une livraison ou mise à jour applicative) ; il est également possible de générer des alertes par mail au delà d’un certain seuil, …
Liens complémentaires :
http://wiki.networksecuritytoolkit.org/index.php/OpenVAS
https://www.blackmoreops.com/2014/03/03/20-things-installing-kali-linux/
http://docs.kali.org/general-use/kali-linux-sources-list-repositories
https://hackertarget.com/openvas-9-install-ubuntu-1604/
Article sous licence Creative Commons « CC-NC »
Salut, comme je peux faire pour installer nmap 5.51.6 svp?
la commande wget http://nmap.org/dist/nmap-5.51.6.tgz ne fonctionne plus merci
bonjour,
effectivement, la version 5.51 n’est plus disponible. Essayez avec une version 6 comme https://nmap.org/dist/nmap-6.47.tgz . Merci de votre retour si cela fonctionne.
Bonjour,
La version NMAP 5.51 est valable au niveau du site web officiel de NMAP https://nmap.org/dist-old/
J’ai essayé avec la version 6.47 mais ça ne marche pas correctement (au niveau du scan via les scripts NSE de NMAP), j’ai suivi le tutoriel et j’ai téléchargé la version 5.51.6 du site que je viens de mentionner, le plugin NMAP NASL Wrapper marche correctement (détection des ports ouverts) mais les scripts NSE de NMAP ne marchent toujours pas.
Finalement, il fallait télécharger NMAP 5.51 (non pas 5.51.6) pour utiliser les scripts NSE.
bonjour,
Merci pour cette précision. Je viens de mettre à jour.
Bonne continuation.
Bonjour,
Merci pour ce tuto !
De mon côté, j’ai du reconstruire la db NVT pour que cela fonctionne après avoir mis à jour les bases de vulnérabilités:
https://www.securityorb.com/featured/update-openvas-plugins-nvt-cert-data-scap-data-automatically/
openvasmd –update –verbose –progress
Bonjour,
Merci pour le complément (et le lien) -> je me permet de l’ajouter dans le tuto.
Bonne soirée.
Merci pour se tuto.
Je suis stagiaire en charge de mener une opération d’audit d’une plateforme de service. Donc j’ai besoin de conseil sur l’outils idéal et les étapes a suivre si possible svp.