Nessus (logiciel)

Page d'aide sur l'homonymie Pour les articles homonymes, voir Nessus.
Nessus
Image illustrative de l'article Nessus (logiciel)

DéveloppeurTenable Network Security
Dernière version7.0.3 ()[1]Voir et modifier les données sur Wikidata
EnvironnementMultiplate-forme
TypeScanner de vulnérabilité
LicenceGNU GPL, puis propriétaire
Site webnessus.org

Nessus est un outil de sécurité informatique. Il signale les faiblesses potentielles ou avérées sur les machines testées. Ceci inclut, entre autres :

  • les services vulnérables à des attaques permettant la prise de contrôle de la machine, l'accès à des informations sensibles (lecture de fichiers confidentiels par exemple), des dénis de service...
  • les fautes de configuration (relais de messagerie ouvert par exemple)
  • les patchs de sécurité non appliqués, que les failles corrigées soient exploitables ou non dans la configuration testée
  • les mots de passe par défaut, quelques mots de passe communs, et l'absence de mots de passe sur certains comptes systèmes. Nessus peut aussi appeler le programme externe Hydra (de) pour attaquer les mots de passe à l'aide d'un dictionnaire.
  • les services jugés faibles (on suggère par exemple de remplacer Telnet par SSH)
  • les dénis de service contre la pile TCP/IP

Architecture et fonctionnement

Nessus détecte les machines vivantes sur un réseau, balaie les ports ouverts, identifie les services actifs, leur version, puis tente diverses attaques.

Nessus se divise en deux parties : nessusd qui est un daemon (service) exécutant les requêtes ainsi que la communication avec la cible, et nessus, une application cliente qui récupère les données et affiche le résultat.

Ce découpage est classique, le daemon tournant avec des privilèges élevés (root) alors que l'interface graphique, plus complexe et donc vulnérable, tourne sous l'identité d'un utilisateur non privilégié. Les tests sont joués par des plugins ; quelques-uns sont en C compilé, mais la majorité sont écrits dans le langage de script NASL (Nessus Attack Scripting Language).

La séquence des opérations est la suivante :

  1. détection des machines vivantes sur le réseau par ping_host.nasl
  2. « scan » des ports avec un des quatre analyseurs de ports internes, ou un scanner externe amap ou nmap, ce qui est déconseillé pour des raisons de performance.
  3. récupération d'informations
    1. type et version des divers services
    2. Connexion (SSH, Telnet ou rsh) pour récupérer la liste des packages installés
  4. attaques simples, peu agressives. Par exemple, directory traversal, test de relais de messagerie ouverts, etc.
  5. attaques susceptibles d'être destructrices
  6. dénis de service (contre les logiciels visés)
  7. dénis de service contre la machine ou les équipements réseaux intermédiaires.

Les dernières catégories de tests, plus agressives, peuvent avoir des conséquences désastreuses sur la disponibilité du système (crash de la machine visée, voire des équipements réseaux) et peuvent être désactivées dans le mode safe checks.

Le logiciel client standard peut exporter les données sous divers formats (XML, HTML, LaTeX). Outre les failles, Nessus présente également diverses informations utiles à un auditeur comme la version des services ou du système d'exploitation.

Dans d'autres langues
العربية: نيساس
español: Nessus
euskara: Nessus
עברית: Nessus
magyar: Nessus
italiano: Nessus
日本語: Nessus
Nederlands: Nessus (software)
português: Nessus Cloud
русский: Nessus
Türkçe: Nessus
українська: Nessus
Tiếng Việt: Nessus (phần mềm)
中文: Nessus