original in en Georges Tarbouriech
en to fr Georges Tarbouriech
Georges est un vieil utilisateur d'Unix. Il pense que la s�curit�
informatique est l'un des grands d�fis de ce si�cle.
Nessus est un scanner de s�curit� libre, disponible depuis http://www.nessus.org. Renaud Deraison est le cr�ateur et le mainteneur du projet. Au moment de cet article, la version stable est la 1.09 et la version exp�rimentale la 1.14. Le logiciel est publi� sous GPL et de nombreuses personnes contribuent au projet, particuli�rement pour ce qui concerne les plugins... pendant que d'autres profitent du travail de nessus sans m�me en mentionner le nom (plus d'information sur ce sujet � la fin de l'article). Nessus fonctionne sous de nombreuses saveurs d'Unix en tant que client et serveur et sous Win32 en tant que client. Regardons de plus pr�s ce fabuleux outil.
En allant sur http://www.nessus.org, vous pouvez t�l�charger
ce superbe logiciel. Un client nessus �tant disponible pour Win32, pr�cisons
que nous parlerons ici de la version Posix, bien �videmment.
Pour utiliser nessus, il vous faut nmap et Gtk (le Gimp Toolkit). Le site de
nessus propose des liens vers ces derniers. Cela dit, vous pouvez utiliser
nessus � partir de la ligne de commande, par cons�quent Gtk n'est pas
obligatoire.
Vous pouvez r�cup�rer nessus de trois mani�res diff�rentes : la bonne, la
mauvaise et la pire.
La bonne, c'est le standard. En clair, vous t�l�chargez les archives �
partir du site ftp le plus proche de chez vous. Vous disposez de quatre
archives : les biblioth�ques nessus, les biblioth�ques nasl, le programme
nessus proprement dit et les plugins. Une fois d�compact�es, vous les
compilez et les installez comme d'habitude : ./configure, make, make
install, dans l'ordre des archives cit�es au-dessus. Si une pr�c�dente
version de nessus est install�e sur votre machine, vous devez la supprimer.
Nessus vous propose un script de d�sinstallation devant �tre lanc� apr�s le
premier "./configure", soit celui des biblioth�ques nessus. Ex�cutez ce
script avant de taper "make". Faites la m�me chose pour chaque paquetage
(sauf ex�cuter le script de d�sinstallation, bien s�r) et c'est fini.
La mauvaise m�thode consiste � ex�cuter un script t�l�chargeable nomm�
nessus-installer.sh. Taper "sh nessus-installer.sh" installera
automatiquement le paquetage. Les quatre paquetages sont devenus un seul.
La pire : si lynx est install� sur votre machine et si vous �tes connect�
� Internet, tapez simplement "lynx -source http://install.nessus.org | sh"
et c'est tout. Vous ne devez PAS �tre root pour ce faire.
De toute �vidence, la m�thode recommand�e est la "bonne"... Enfin, puisque
vous t�l�chargez nessus, nous supposons que vous vous sentez concern�s par
la s�curit� ! Et puisque nous parlons de s�curit�, n'oubliez pas de
t�l�charger le checksum MD5.
Nessus fournit diff�rents utilitaires (nasl, un langage de script,
nessus-adduser, nessus-build...). Chaque utilitaire poss�de sa page de
manuel, de m�me pour les programmes client et serveur. De la documentation
suppl�mentaire est disponible dans la distribution (README, INSTALL...) et
sur le site de nessus.
Pour rendre les choses plus faciles � comprendre, nous nous servirons d'exemples de la version X11 de nessus, autrement dit, celle utilisant Gtk.
Le serveur nessusd
Pour d�marrer nessus, vous devez, bien �videmment, lancer le d�mon serveur,
soit nessusd. Lorsque vous l'ex�cutez pour la premi�re fois, vous devez
d�clarer un nom d'utilisateur et un mot de passe en utilisant la commande
nessus-adduser.
Si le paquetage des biblioth�ques nessus a �t� compil� avec l'option
"--enable-cipher" (recommand�, pour ne pas dire obligatoire !), une cl�
priv�e est g�n�r�e. Cette cl� peut �tre prot�g�e par une passphrase. De
nombreuses options existent pour lancer le serveur et vous trouverez tout
dans la page de manuel de nessusd.
De l�, vous cr�ez la base de donn�es des utilisateurs et les r�gles
correspondantes. Autrement dit, qui est autoris� � ex�cuter le d�mon serveur, qui
a le droit de scanner (une machine, un r�seau...). Les r�gles sont de la
forme "accept" ou "deny" suivi de l'adresse IP du r�seau et de son netmask.
Par exemple : accept 192.168.1.0/24, permet � l'utilisateur de scanner
l'ensemble du r�seau 192.168.1.
Il est aussi possible de d�finir un seul utilisateur sans r�gles du tout. Si
vous souhaitez autoriser plusieurs utilisateurs � lancer nessusd, soyez
tr�s prudents sur ce que vous leur permettez de faire. Vous ne pouvez pas
autoriser n'importe quoi � n'importe qui sur votre r�seau, n'est-il pas ?
Enfin, nessusd d�pend d'un fichier de configuration situ� (normalement) dans
/usr/local/etc/nessus/nessusd.conf. Vous pouvez le modifier manuellement si
vous savez ce que vous faites.
Vous pouvez maintenant d�marrer le client nessus pour vous connecter sur le
serveur nessusd. Pour lancer le client, il suffit de taper "nessus &" dans
un shell. Ceci ouvre la fen�tre de configuration de nessus apr�s vous avoir
demand� la passphrase mentionn�e plus haut. Cette fen�tre propose sept
onglets.
Le premier onglet se nomme "nessusd host". Depuis ce panneau, vous pouvez
vous connecter sur l'h�te nessusd en cliquant sur le bouton "Log in". Bien
s�r, cela suppose que vous �tes autoris� � vous connecter sous ce nom
d'utilisateur, en d'autres termes, que votre nom d'utilisateur est bien d�clar�
dans la base de donn�es.
Lorsque vous d�marrez le scan, nessus ouvre une fen�tre affichant le status
dudit scan. Imaginons par exemple, que vous testiez le r�seau
192.168.1.0/24 dans son int�gralit�. Huit machines (h�tes) seront affich�es
en m�me temps, et vous pourrez voir chaque plugin utilis� pour chaque
machine ainsi qu'une jauge de progression. Voici � quoi �a ressemble :
Les plugins sont le "coeur" de nessus. Ce sont des tests de s�curit�, autrement
dit, un moyen de d�couvrir une vuln�rabilit� donn�e.
NASL (Nessus Attack Scripting Language) est le langage recommand� pour �crire
des tests de s�curit�. Vous trouverez tout sur NASL en visitant l'URL :
NASL.
En cons�quence, si vous souhaitez contribuer au projet nessus en �crivant
des plugins, c'est l� que vous trouverez l'information ad hoc (comme... non, je ne
la ferai pas, j'aurais honte... quoique !). Au moment de cet article, il y a
756 plugins dans la base de donn�es !
Il y a presque 20 familles de plugins : les backdoors, les d�nis de service,
les acc�s root distants... Comme d�j� pr�cis�, chaque plugin fournit des
informations. Il vous dit ce qui ne va pas et propose des solutions pour
corriger le(s) probl�me.
Nous ne pouvons pas parler des plugins sans mentionner CVE
(Common Vulnerabilities and Exposures). C'est une �norme base de donn�es
disponible �
http://cve.mitre.org. Vous y trouverez tout
sur les risques de s�curit� connus. Un autre lieu incontournable pour le
partage des connaissances. Un tel site est la r�f�rence absolue � visiter.
Bien s�r, il y aurait des tas de choses � dire sur les plugins mais un livre
n'y suffirait pas. Un bon moyen de comprendre leur fonctionnement, comment
ils sont �crits, consiste � les lire dans le r�pertoire
/usr/local/lib/nessus/plugins.
Encore une fois, merci � Renaud Deraison et aux contributeurs pour ce
superbe travail.
M�me si ce titre �voque Monty Python, il n'y a malheureusement aucun
humour l�-dedans. Les trois ou quatre personnes qui lisent mes articles
connaissent mes phrases hors-sujet : cette fois-ci, c'est un paragraphe entier
! Est-ce vraiment hors-sujet, c'est une autre histoire. Allons-y.
Comme je m'int�resse � la s�curit� informatique, je visite souvent les sites
d�di�s. Ce peut �tre pour d�couvrir de nouvelles vuln�rabilit�s ou pour
d�couvrir de nouveaux outils de s�curit�. Par hasard, j'ai d�couvert quelques
produits bas�s sur des sevices de scan en ligne. En fait, ils se nomment
eux-m�mes (au moins pour l'instant) ASP (Application Service Provider). Si
vous allez un peu plus loin, vous d�couvrez rapidement que le moteur derri�re
le service n'est autre que nessus. Jusque l�, �a va. Par contre, si vous
essayez de trouver une information explicite, vous ne trouverez m�me pas le
mot "nessus". C'est l� que je ne marche plus et que j'ai vraiment envie de me
f�cher !
La plupart des gens travaillant pour la communaut� du logiciel libre font �a
gratuitement et non pour vivre. Le seul salaire qu'ils per�oivent se
nomme : cr�dit (pas au sens bancaire !). Nessus est distribu� sous GPL. En
clair, tout le monde peut utiliser le produit, le modifier, l'adapter... tant
que l'auteur(s) original est cit�. Bien s�r, cette licence en dit beaucoup
plus. Si vous ne la connaissez pas, jetez un oeil
l�.
Pour moi, cela ressemble � du vol. Je n'ai m�me pas besoin d'une licence pour
cr�diter le travail d'autres personnes. J'ai beaucoup de respect pour ces gens
qui travaillent gratuitement (presque toujours) et qui partagent avec une
communaut� (sans doute mon c�t� soixante-huitard attard�). Ils m�ritent
r�ellement la reconnaissance de cette communaut�. C'est encore plus vrai,
lorsque certains essaient de gagner de l'argent � partir du travail de
quelqu'un d'autre. Appelez �a respect, reconnaissance, �a n'a aucune
importance. Le fait est que ces mots semblent avoir perdu leur signification.
Bien s�r, nous pourrions accuser la GPL d'�tre responsable de ce comportement.
Mais, avec l'ASP, vous n'�tes pas consid�r�s comme vendant le logiciel. De
plus, selon le pays concern�, la GPL peut n'avoir aucune valeur l�gale.
Un d�but de solution au probl�me serait que les utilisateurs de tels ASP
demandent le nom du moteur de scan effectuant r�ellement le travail. La r�ponse
permettrait au moins de savoir si les gens proposant le service sont
"honn�tes". S'ils ne r�pondent pas ou s'ils vous disent qu'ils ont "invent�" le
moteur (dans lequel vous avez reconnu nessus), n'utilisez pas le service !
Installez plut�t nessus (le vrai), de toute mani�re ce sera plus s�r.
Encore une fois, avons-nous besoin d'une licence pour dire "merci" � des gens
ayant accompli un travail formidable et souvent �norme ? Au fait, Renaud
Deraison ne veut pas changer de licence : nessus restera GPL.
Pardon pour cette longue digression, mais je crois que ce devait �tre dit.
Malgr� ce dernier paragraphe, ce qui est � retenir de cet article c'est le degr�
de qualit� de nessus. C'est un logiciel vraiment impressionant. Utilis� avec
nmap, il devient incontournable lorsque la s�curit� est une priorit�. C'est un
outil tr�s fiable qui �volue en permanence. Merci � Renaud et � ses pairs pour
leur mise � jour constante des plugins.
Aujourd'hui, un administrateur peut difficilement travailler sans nessus et
nmap. Ces outils sont capables de d�couvrir des vuln�rabilit�s dont vous pensiez
vous �tre d�barrass�s. Ca se v�rifie pour la plupart des OS pr�sents dans votre
r�seau. Et lorsque vous savez que certains OS sont des passoires, nessus vous
permet de respirer un peu.
Encore mieux, nessus peut vous aider � comprendre la mani�re dont un r�seau (ou
un machine) peut �tre compromis.
Si vous lisez attentivement les rapports produits, les prenez en compte et
apportez les corrections adapt�es, vous am�liorerez consid�rablement la s�curit�
de votre r�seau (ou machine). J'ai bien dit "am�liorerez" : votre
r�seau ne sera pas s�curis� � 100% simplement parce que vous utilisez nessus. La
route vers la s�curit� est tr�s longue et nous sommes loin d'en voir le bout.
Encore une fois, merci � la communaut� du logiciel libre pour son �norme travail
sur la s�curit�.
Concernant les charmantes personnes qui essaient de faire de l'argent � partir
du travail des membres de la communaut� du logiciel libre, je souhaiterais
ajouter quelque chose. Dire "merci" n'a rien de honteux. Est-ce si �pouvantable
d'�tre honn�te ? Si ce type de comportement se r�pand, le risque est soit la fin
de la dite communaut� soit un gros changement dans les licences (et probablement,
de plus en plus de brevets !). Dans les deux cas, vous vous d�brouillerez
seuls et les choses deviendront beaucoup plus compliqu�es pour vous. Et
malheureusement, nous n'aurons plus la possibilit� d'utiliser du logiciel libre.
Cela ne signifie en rien que vous aurez l'opportunit� de vendre votre produit.
Pensez-y !
Quand je vous dis que nous vivons une �poque formidable !