33.4 Nessus: Ein Security-Scanner 

Nessus (nessus.org) ist ein weiterer Scanner, der aber in seinen Zielen und Features viel weiter geht als Nmap: Bei Nessus handelt es sich nämlich nicht nur um einen Portscanner, sondern um einen so genannten Vulnerability-Scanner.
Suche nach Schwachstellen
Durch einen Vulnerability-Scanner werden die offenen Ports und die dahinterliegenden Dienste nicht nur per Bannerscanning, sondern auch auf mögliche Schwachstellen und Fehlkonfigurationen hin untersucht.
Natürlich ist auch Nessus freie Software, und er kann für Unix/Linux und Windows von nessus.org heruntergeladen werden. Aufgrund des Funktionsumfangs kann man mit dieser Software fast ein komplettes und doch kostengünstiges Audit eines Netzwerks durchführen.
Übrigens kann intern als Portscanner auch Nmap zum Einsatz kommen. Hat Nmap dann einige offene Ports gefunden, übernimmt Nessus die Regie und wendet seine Plugins auf die Serverdienste an. Jedes Plugin überprüft dabei eine Schwachstelle eines bestimmten Dienstes und gibt im Problemfall eine Klassifizierung des Problems sowie eine Beschreibung aus. Verständlicherweise konnte Nessus – ähnlich wie Nmap – auch nur zur Referenzsoftware in seinem Bereich werden, weil es sich um freie Software handelt. So können viele interessierte Benutzer selbst eigene Plugins schreiben, und sobald neue Bugs und Probleme bekannt sind, können sie auch schon in den Funktionsumfang von Nessus aufgenommen werden.
33.4.1 Die Installation 

Die Homepage des Projekts, nessus.org, bietet sowohl die benötigten Dateien als auch die Installationshinweise für die Software. Aus diesem Grund wollen wir hier auch nicht im Detail auf die Installation eingehen, da es in vielen Linux-Distributionen bereits fertige Pakete zur Installation gibt.
Client und Server
Zu sagen bleibt jedoch, dass sich die Software in Client und Server aufteilt, um die Scans und Plugins von der Oberfläche klar zu trennen. Möchte man die Software selbst übersetzen, benötigt man die folgenden Dateien von der Homepage:
- nessus-libraries-x.x.tar.gz
- libnasl-x.x.tar.gz
- nessus-core.x.x.tar.gz
- nessus-plugins.x.x.tar.gz
Nach dem Auspacken mittels tar -xzf und dem Wechseln in das neu erstellte Verzeichnis kommt man bei jedem Paket mit dem typischen Dreisatz zum Ziel:
$ ./configure $ make $ su root Password: # make install
Listing 33.43 Linux-Installationsdreisatz
So viel zur Installation.
33.4.2 Die Konfiguration 

Der Nessus-Server erlaubt das Anlegen verschiedener Benutzer, die alle gewisse Einschränkungen haben können. So kann man unterschiedliche Administratoren definieren, die alle nur ihr Netzwerksegment überwachen können.
Benutzer anlegen
Das Anlegen eines neuen Benutzers erfolgt mit dem Programm nessus-adduser:
# nessus-adduser Addition of a new nessusd user ------------------------------ Login : admin Authentication (pass/cert) [pass] : pass Password : secret User rules ---------- nessusd has a rules system which allows you to restrict the hosts that renaud2 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 : renaud Password : secret DN : Rules : Is that ok (y/n) ? [y] y user added. #
Listing 33.44 Anlegen eines neuen Nessus-Users
In unserem Fall haben wir keine Restriktionen für den Benutzer vergeben, da wir einen »Superuser« mit allen Fähigkeiten wollten.
Der Server kann nun mit dem folgenden Befehl gestartet werden:
# nessusd -D
Listing 33.45 Den Nessus-Server starten
33.4.3 Nessus benutzen 

Der GTK-Client lässt sich nun wieder recht intuitiv bedienen. Auf dem ersten Reiter muss man sich mit den eben angelegten Accountinformationen einloggen. Auf einem der nächsten Reiter kann man die gewünschten Plugins aktivieren beziehungsweise deaktivieren.
Abbildung 33.2 Netzwerkmonitoring mit Nagios
Dabei kann man entweder alle Plugins einzeln ansteuern oder global »alle« aktivieren oder eben »alle ungefährlichen« aktivieren. Schließlich besitzt Nessus auch Tests, die einen Server zum Absturz bringen können. Bei einem produktiven Server möchte man diese natürlich nicht aktivieren, und so kann man die passenden Plugins gleich alle deaktivieren.
Scan starten
Hat man nun auf dem Targets-Reiter die Ziele spezifiziert, kann man den Scan starten. Nach einer gewissen Zeit bekommt man einen vollständigen Report über die gefundenen Sicherheitslücken.
Auf der Grundlage eines solchen Reports kann man dann schließlich einen sehr umfassenden Bericht zur Netzwerksicherheit verfassen. Und wenn man Nessus nicht als einzige Quelle nutzt, könnte der auch richtig gut werden.