Scanner de vulnérabilité : Nessus
17 Sep. 2006
- Auteur : Hyacinthe MENIET
- Responsable : TrustRobot
- Score ( voter ) :



- Connexes : Même auteur | Même responsable | Historique
- La possibilité d'utiliser les techniques classiques d'évasion d'IDS (encodage des séquences d'attaques...)
- Il peut sauvegarder des sessions de scan sur le serveur
- Vous pouvez effectuer les scans en parallèle (gain de rapidité et de performance)
- Vous pouvez utiliser les "safe checks" pour les plugins de test.
1. Pré-requis :
Pour utiliser, Nessus vous devez disposer des logiciels qui vont suivre, ils sont en principe présent sur les CDS de votre distribution et souvent installé par défaut :- GTK 1.2, qui correspond à gnome 1.x
- Nmap, un scanner de ports
- OpenSSL une librairie utiliser pour les communications sécurisées.
- Les sources des logiciels de la suite Nessus : nessus-libraries, libnasl, nessus-core, nessus-plugins téléchargeables ici. Téléchargez les sources de la version la plus récente de nessus. Au moment où j'écrivais ce document, c'était la 1.2.7, je suis donc allé dans : nessus-1.2.7/src/
2. Installation :
Commencez par décompresser les sources des logiciels :
tar -xzvf /où_est/nessus-libraries-1.2.7.tar.gz
tar -xzvf /où_est/libnasl-1.2.7.tar.gz
tar -xzvf /où_est/nessus-core-1.2.7.tar.gz
tar -xzvf /où_est/nessus-plugins-1.2.7.tar.gz
Compilez et installez nessus-librairies :
cd nessus-libraries/
./configure --prefix=/usr
make
make install
Compilez et installez libnasl :
cd ../libnasl/
./configure --prefix=/usr
make
make install
Compilez et installez nessus-core :
cd ../nessus-core/
./configure --prefix=/usr
make
make install
Compilez et installez nessus-plugins :
cd ../nessus-plugins/
./configure --prefix=/usr
make
make install
3. Utilisation et Configuration :
Nessus fonctionne en client/serveur. Le serveur s'appelle nessusd, un daemon, et le client nessus. Le serveur est généralement sur une machine, Unix ou Linux. Le serveur pouvant être sous windows. Il n'est pas nécesaire que le client et le serveur soit sur la même machine. Les paquetages que vous venez d'installer, comprennent les 2.3.1 Configuration et lancement du serveur :
Avant de lancer le daemon nessusd, il faut rajouter, au moins, un utilisateur et son mot de passe. Vous êtes obligé d'être root pour ça, mais l'utilisateur peut ne pas s'appeler root. Pour ce faire tapez : nessus-adduser . Voici le détail du dialogue chez moi :
Using /var/tmp as a temporary file holder
Add a new nessusd user
----------------------
Login : Kernel
Authentication (pass/cert) [pass] : pass
Login password : xxxxxx
User rules
----------
nessusd has a rules system which allows you to restrict the hosts
that Kernel has the right to test. For instance, you may want
him to be able to scan his own host only.
Please see the nessus-adduser(8) man page for the rules syntax
Enter the rules for this user, and hit ctrl-D once you are done :
(the user can have an empty rules set)
Login : kernel
Password : xxxxxx
DN :
Rules :
Is that ok ? (y/n) [y] y
user added.
Je n'ai mis aucune règle, cela signifie que l'utilisateur kernel a le droit de scanner n'importe quelle machine. Pour valider les règles c'est [ctrl]+[d] . Vous pouvez bien-sûr définir d'autres utilisateurs, avec des droits différents. Voici des exemples de règles :
l'utilisateur a le droit de scanner uniquement les classes d'adresses sus-mentionnée :
accept 192.168.1.0/24
accept 192.168.3.0/24
accept 172.22.0.0/16
default deny
l'utilisateur peut scanner tout sauf le réseau : 192.168.1.0/24 :
deny 192.168.1.0/24
default accept
l'utilisateur n'a le droit de scanner que sa machine :
accept client_ip
default deny
A ce stade le serveur est presque finalisé, il vous faut maintenant générer, le certificat SSL et les clés privés. Pour ce faire, tapez :
nessus-mkcert
Répondez aux questions. Quand vous êtes satisfait, tapez :
nessusd -s
Il affichera le fichier de config de nessus, à savoir, /usr/etc/nessus/nessusd.conf. Maintenant, vous pouvez lancer le daemon par :
/usr/sbin/nessusd -D
Vérifiez que tout c'est bien passé en tapant :
ps aux | grep nessusd
root 16409 0.0 0.6 5400 3452 ? S 19:04 0:00 /usr/sbin/nessusd -D
Si vous obtenez cette dernière ligne c'est que tout s'est bien passé.
3.2 Configuration et lancement du client :
Nessus compilé avec le support gtk, propose un client graphique que vous pouvez lancer en simple utilisateur par :
nessus &
Vous obtenez une fenêtre comme celle-là :

3.3 Un scan :
Quand tout est au point, toujours dans la fenêtre de nessus, cliquez sur "start the scan" pour lancer le scan. Il apparaît alors la fenêtre suivante :
3.4 Post-installation :
Si vous souhaitez que nessusd soit lancé au démarrage de l'ordinateur, il vous suffit de rajouter la ligne suivante :
/usr/sbin/nessusd -D
Dans votre /etc/rc.d/rc.local. Vous pouvez supprimer un utilisateur, en utilisant la commande :
/usr/sbin/nessus-rmuser
Pour finir, le fichier /usr/etc/nessus/nessusd.conf, fourni de précieuses informations sur votre installation, il vous indique notamment que vos logs sont consignés dans /usr/var/nessus/logs/nessusd.messages.