Consulenza, servizi, ingegneria informatica. Implementazione di soluzioni tecnologiche e di sostegno alle imprese.

Valutazione attuale: 5 / 5

Stella attivaStella attivaStella attivaStella attivaStella attiva
 

Concept d’OpenVAS

OpenVAS est  un framework, et un fork (ou une branche dérivée) de NESSUS. Nessus étant sous licence propriétaire, OpenVAS s’est développé sous licence GNU GPL.
Il est
constitué d’éléments Backoffice :
– Scanner en charge du scan des vulnérabilités
-Manager qui contient toute l’intelligence du framework, il contrôle notamment le scanner, écrit dans la base SQLite. Il planifie, les audits, génère les reports, …
– Administator qui se charge de la gestion des utilisateurs, de l’alimentation en modèle de vulnérabilités ou en plugins,
D’éléments FrontEnd :
o Interface CLI en ligne de commande pour transmettre les ordres d’audit au Manager
o Greenbone Security Desktop, l’interface complète qui suit via un tableau de bord l’état des audits, des vulnérabilités. Disponible pour Linux comme pour Windows.
o GreenBone Security Assistant, un client http/HTTPS pour le Manager.
A noter que la solution OpenVAS s’appuie sur un ensemble de vulnérabilités connues (environ +55000 NVTs connues en 2017).
Le schéma présente les différents composants de l’architecture d’OpenVAS ainsi que les sources d’alimentation des NVTs.
Depuis 2017, il existe 2 éditions bien distinctes : l’edition Entreprise (GSF = Greenbone Security Feed) et l’édition Communautaire (GCF = Greenbone Communauty Feed). Le tableau ci-dessous précise  les NVTs auxquels vous pourrez souscrire.

 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

L’installation documentée est sur une base KALI 2018.4 avec OpenVas 9.

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.

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.

  1. Effacer le fichier  dump.rdb (dans /var/run/redis )
  2. Sur le fichier redis.conf (/etc/redis), retirez le commentaire devant save xy z
  3. Faites un flush de votre base de données redis  redis-cli -s /var/run/redis/redis.sock flushall
  4. Redémarrez redis :  service redis-server restart
  5. 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)
    1. aller dans le menu Scans / Tasks
    2. cliquer sur l’icone assistant et sélectionnez Task  Wizard
    3. saisir l’adresse IP à scanner et cliquer sur Start Scan
  • 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

reportW2K8

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/