Sicherheitscheck mit Nessus |
|
|
Titelseite Grützeküche Texte Bilder
|
Zwei Monteure im Blaumann betreten ein Kaufhaus. Zielstrebig fahren sie ins Obergeschoss. Dort wuchten sie einen Kühlschrank auf ihre Sackkarre, verfrachten ihn in den Aufzug und schieben ihn eine Etage tiefer durch den Ausgang zur Fußgängerzone. Dort steht ein Transporter. Mit der Hebebühne des Wagens befördern sie das Gerät in den Laderaum, steigen selbst ein und fahren auf und davon. Die Männer arbeiten entschlossen, zügig und professionell. Auf ihrem Weg durch das Kaufhaus passieren sie Verkäuferinnen, Abteilungsleiter, Warenhausdetektive und Damen am Infotresen. Keiner denkt sich was, denn die Arbeiter sehen nicht wie Diebe aus -- es sind auch keine. Es sind Angestellte einer Sicherheitsfirma, die vom Kaufhaus bezahlt dessen Sicherheitssystem prüfen -- und dabei erhebliche Mängel feststellen. Einbrüche zu simulieren, ist ein beliebter Trick von Sicherheitsexperten. Der Versuch, gewaltsam einzudringen, muss alle Sicherheitssensoren alarmieren. Geschieht das nicht, so stimmt etwas nicht. So zeigt ein gespieltes Manöver schnell, wo die Sicherheitsmängel sitzen. Auch ein PC-System oder Netzwerk lassen sich auf diese Weise testen. Das hat sich das Bundesamt für Sicherheit in der Informationstechnik (BSI) zu Eigen gemacht und eine Hacker-CD für den Testgebrauch entwickeln lassen. Sie heißt Boss und basiert auf Knoppix-Linux, das keine Installation benötigt. Wir hatten sie im letzten Heft (9/2005) auf unserer DVD, die sich als Boss-CD booten ließ. Wer das Heft verpasst hat, lädt sich ein Image der CD (645 MBytes) von der BSI-Webseite und brennt sie sich.
Einsatzszenarien Der Test Ihres Systems sollte von außen erfolgen. Nur auf einem Linux-Rechner können Sie mit Boss einen Selbsttest fahren. Für Windows heißt das, Sie brauchen zwei Rechner. Den ersten wollen Sie prüfen (im Folgenden Zielrechner genannt), auf dem zweiten booten sie Boss (Hackrechner). Sie sollten anstreben, beide Rechner direkt mit dem Internet zu verbinden. Denn innerhalb eines lokalen Netzes legen Betriebssystem und Personal Firewall andere Maßstäbe an. Wenn Sie über einen DSL-Anschluss verfügen, können Sie den Hackrechner parallel über den normalen Telefonanschluss und eine Wählverbindung online bringen. Oder Sie verwenden zwei Leitungen von ISDN. Verwaltet ein Router (mit oder ohne Firewall) ihren DSL-Anschluss, so greifen Sie von außen den Router an, da der dahinter liegende Rechner nicht nach außen in Erscheinung tritt. Arbeiten Sie in einer vernetzten Umgebung, müssen Sie zwei Testsphasen ansetzen. In der ersten attackieren Sie wie eben beschrieben von außen Router oder Firewall. Anschließend prüfen Sie in der zweiten Phase jeden Rechner innerhalb des Netzes, indem sie den einen auf den anderen los lassen. Denn in einem lokalen Netz muss der Feind nicht unbedingt von außen kommen, da ein lokaler Anwender versuchen kann, den Rechner des anderen zu knacken. Auch Netzwerkviren nutzen Sicherheitslücken aus, um sich lokal im Netz zu verbreiten. Jeder einzelne Rechner muss also gut geschützt sein. Nun booten Sie auf dem Hackrechner die Boss-CD. Falls Sie mit einem Laptop arbeiten, müssen Sie unter Umständen eine spezielle Bootoption verwenden. Wenn Sie Enter drücken, startet der Bootvorgang und befördert Sie in eine Linux-KDE-Oberfläche. Als erstes benötigen Sie nun eine Netzwerk- oder Internetverbindung, je nach Ihrer Testkonfiguration. Steht Ihr Rechner in einem lokalen Netz, so bekommt er meistens automatisch eine IP-Adresse zugewiesen. Ob das Netz funktioniert, probieren Sie am einfachsten aus, indem Sie eine Webseite öffnen: Den Linux-Browser starten Sie über das Startmenü Internet/Konqueror. Ihre eigene Internet-Adresse finden Sie mit dem Terminal-Befehl ifconfig heraus. Das Terminal starten Sie im Startmenü: System/Konsole. Für eine Wählverbindung mit DSL, ISDN oder Modem gibt es verschiedene Tools.
Zur Attacke Die beiden virtuellen Blaumänner, die sämtliche Sicherheitslücken auf dem Zielrechner ausloten heißen Nessus-Server und Nessus-Client. Der Server läuft bei Boss automatisch, den Client starten Sie im Startmenü. Für den Test bietet der Nessus-Client einen Assistenten, den Sie über den Button mit dem Rettungsring aufrufen. Die ersten beiden Schritte können Sie so übernehmen, wie das Programm sie vorschlägt. Im dritten Schritt geben Sie die IP-Adresse des Zielrechners ein. Die IP-Adresse des Zielrechners finden Sie auf diesem in einem Terminalfenster (Eingabeaufforderung) mit den Befehlen: ifconig für Linux (= Interface Configuration) oder ipconfig für Windows (= IP-Configuration). Wenn Sie die IP-Adresse des Zielrechners ermittelt haben, geben Sie diese in Nessus im dritten Schritt des Assistenten ein. Im Schritt 4 starten Sie den Test. Nun öffnet sich ein Serverfenster, in dem Sie das Passwort eingeben. Bei der Boss-CD ist es: knoppix Es kommen zwei Sicherheitsmeldungen bezüglich Zertifikaten, die Sie mit ok durchwinken. Dann beginnt der Scan. Achtung: Beim Betrieb von Nessus im Netzwerk sollten Sie beachten, dass ein Router oder eine Firewall das Tool behindern können. Hinter der Firewall eignet sich Nessue nur zum Testen der Sicherheit innerhalb des Netzes. Wollen Sie einen Angriff von außen simulieren, sollte Nessus vor der Firewall sein. Das Ergebnisfenster gliedert sich in drei Spalten. Die mittlere listet die Ports des Zielrechners auf, bei denen Nessus etwas gefunden hat. Je nach schwere des Mangels finden Sie ein anderes Symbol. Ein Einfahrt-Verboten-Schild zeigt ein gravierendes Sicherheitsloch an. Das sollten Sie ernst nehmen und den Text dazu genau lesen. Darin findet sich meist eine detaillierte (englische) Beschreibung, wie Sie das Ärgernis loswerden. Meist muss ein Sicherheitsupdate des Betriebssystems oder eines Servers installiert werden. Die zweite Stufe sind Sicherheitswarnungen, symbolisiert durch ein Warndreieck. Da heißt es beispielsweise: "Obwohl Nessus nicht eindringen konnte, ist es besser die PUT-Methode am Webserver zu deaktivieren." Die kleinen Sicherheitshinweise (Glühbirne) erinnern meist daran, dass auf diesem Port ein Server geöffnet ist. Das sollte nur der Fall sein, wenn der auch gebraucht wird. Ein akutes Risiko ist aber nicht vorhanden. Unsere Tests haben ergeben, dass ein gut konfiguriertes XP, auf dem alle aktuellen Patches installiert sind und keine Server laufen, so gut wie keine Angriffsflächen bietet. Zusätzlich schützt der Einsatz einer Personal Firewall. Wenn diese in den Stealth-Modus geschaltet wurde, ist der Rechner unsichtbar und Nessus findet keinen einzigen Punkt, um einzuhaken. Das ist ein großer Vorteil, denn auch Hacker bedienen sich Tools wie Nessus, um auszuloten, ob ein Angriff sich lohnt.
Nur mit Plugins Leider ist der Test, wie er in dieser Form beschrieben wurde, noch nicht sonderlich aussagekräftig, denn es fehlen die neuesten Plugins. Der Hersteller von Nessus aktualisiert das Programm täglich, teilweise stündlich. Die aktuellen Sicherheitslöcher muss der Anwender (ähnlich wie Virensignaturen) importieren. Das ist bei der Boss-CD leider nicht so einfach, da Teile des Dateisystems schreibgeschützt sind. Besser haben es Linux-Anwender, die Nessus fest installieren. Zuerst sollte sich der Anwender bei Nessus registrieren. Das geschieht über die Webseite, wobei der Hersteller nur eine E-Mail-Adresse einfordert. Eine Reihe von Plugins sind zahlenden Kunden vorbehalten, meist Administratoren von Firmennetzen. Die meisten Plugins bekommt man aber mit einer einfachen, kostenfreien Registrierung. Im Boss-Linux öffnen Sie nun ein Termainal-Fenster (Startmenü /System/Konsole) und wechseln mit dem Befehl su (Set user) in den Root-Modus. Nun löschen Sie zwei in schreibgeschützte Bereiche weisende Links und ersetzten Sie durch echte Verzeichnisse: Öffnen Sie dazu Dateimanager Midnight Commander mit dem Befehl mc Kopieren (F5) Sie das Verzeichnis /etc/nessus nach /root. Dann löschen (F8) Sie /etc/nessus und legen es neu an (F7). Anschließend kopieren Sie die Inhalte zurück. Das Verzeichnis /var/lib/nessus/plugins löschen Sie ebenfalls und legen es neu an, ohne die Inhalt zu sichern. Bevor Sie ein Update machen, aktivieren Sie Ihre Nessus-Version. Dazu öffnen Sie die Mail, die Sie inzwischen an die bei der Registrierung angegebene E-Mail-Adresse bekommen haben. Sie enthält einen Code. Nun geben Sie im noch geöffneten Terminal ein: nessus-fetch --register [Code] Wenn Sie die Meldung "Your activation code has been registered properly - thank you" bekommen, hat alles geklappt. Das Update starten Sie mit: nessus-update-plugin Das kann etwa dauern. Nun starten Sie den Nessus-Server neu. Dazu benötigen Sie dessen Prozess-Nummer, die Sie mit folgendem Befehl erhalten: ps -edaf | grep nessusd Sie lautet z.B. 587. Dann starten Sie nessusd mit: kill -HUP 578 neu. Wenn Sie nun den Nessus-Client neu ausführen, werden Sie feststellen dass Sie statt 2000 über 9000 Plugins vorfinden. Der Nachteil der Live-CD ist, dass Sie alle diese Schritte neu ausführen müssen, wenn Sie die CD neu booten. Auch der Registrierungs-Code ist verbraucht. Sie bekommen allerdings ohne Probleme einen neuen. Wollen Sie häufiger testen, so ist es sinnvoller, Nessus auf einem Linux-Rechner fest zu installieren. Ist es einmal registriert, so bekommen Sie alle Updates immer mit einem einfachen Befehl.
Feste Installation Auf der Boss-CD finden Sie Pakete und Anleitungen ("index.html" im Hauptverzeichnis) für Debian, Fedora, Suse und die Quellen. Die beiliegende Windows-Software ist nur ein Client ohne Server, den es nur für Linux gibt. Wenn irgendwo in Ihrem Netz aber ein solcher Server läuft, können Sie einen Test auch mit diesem Windows-Client ausführen. Wir wollen die Installation anhand des Beispiels von Suse zeigen: Das BSI empfiehlt, Yast nicht zur Installation zu verwenden, sondern RPM-Befehle. Die Dateien liegen auf der CD im Verzeichnis: /boss/install/SUSE. Wechseln Sie in einer Konsole in dieses Verzeichnis und geben folgende Befehle ein: rpm -i ./libnessus-2.3.1-0.boss.i586.rpm Anschließend benötigt der Server ein Zertifikat: nessus-mkcert Die nun folgenden Fragen können Sie mit Enter absegnen (es sei denn Sie wollen schönheitshalber DE als Länderkennung angeben). Als nächstes legen Sie einen Anwender an, mit dem Sie sich beim Server später anmelden: LANG=de_DE nessus-adduser Geben Sie einen Namen an. Die Frage nach einer Authentifizierung übergehen Sie mit Enter, dann legen Sie ein Passwort fest. Den nächsten Punkt "Regeln" überspringen Sie mit Strg-D und bestätigen alles mit "j". Das BSI empfiehlt, die Signaturprüfung für die Plugins zu deaktivieren, da einige von diesen noch keine Signatur haben. öffnen Sie die Datei /etc/nessus/nessusd.conf mit einem Editor und fügen unten folgende Zeile ein: nasl_no_signature_check = yes Eigentlich könnten Sie den Nessus-Server nun starten. Zuvor ist es aber sinnvoll, Registrierung und Plungin-Update wie oben beschrieben durchzuführen. Dann erst starten Sie den Nessus-Daemon mit: /etc/init.d/nessusd start Wollen Sie den Rechner testen, auf dem Nessus läuft, -- was unter Linux ja möglich ist -- starten Sie den Client mit dem Befehl: LANG=de_DE nessus Im Assistenten übernehmen Sie als Zielrechner localhost. Am Server melden Sie sich mit dem Passwort und dem Benutzernamen an, die Sie soeben eingerichtet haben. Mit den Ergebnissen dieser einfachen Tests merken Sie, ob Sie sich auf Ihrem PC wirklich sicher fühlen können. Ihren Kühlschrank hat ja auch noch keiner geklaut, oder...? Artikel in Heft 10/2005 des PC-Magazins.
|
|
Letzte Änderung: 1. Februar 2006 |