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…)
-
apt-get clean && apt-get update && apt-get upgrade --fix-missing -y && 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 recommandée.
-
wget http://nmap.org/dist-old/nmap-5.51.tgz
-
tar xzvf nmap-5.51.tgz
-
cd nmap-5.51
-
./configure
-
make && make install
-
cd ..
-
ldconfig
-
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) :
-
apt-get install texlive-latex-extra --no-install-recommends
-
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):
-
apt-get install smbclient
Installation de OpenVas :
- Installation :
-
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 ….) :
-
Openvas-setup
-
- Vérification que l’installation s’est bien déroulée : il ne doit y avoir aucun warning.
-
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 :
-
greenbone-scapdata-sync
-
greenbone-certdata-sync
-
greenbone-nvt-sync
-
Configuration d’OPENVAS
- Pour changer le mot de passe Admin de la console Web :
-
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 :
-
nano /lib/systemd/system/greenbone-security-assistant.service
-
- Complétez les modifications sur ces fichiers par un :
-
systemctl daemon-reload
-
C’est fini, le re-démarrage d’OpenVAS se fait par la commande :
openvas-stop && 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 audit « complet »
Le principe d’un audit 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/