Praxis: Mit Honeypots Hacker fangen
Hacker-Fallen aufstellen
Digitale Honigtöpfe
Praxis: Mit Honeypots Hacker fangen
Wer die Verantwortung für die Sicherheit eines Netzwerks trägt, macht bei Angriffen sofort die Schotten dicht. Aber wäre es nicht schön, einen Angreifer einmal ungeniert bei seiner kriminellen Arbeit zu beobachten? Möglich wird dies mit so genannten Honeypots. Solche digitalen Honigtöpfe locken Hacker wie echter Honig Bienen und Wespen an. Statt die Hacker-Angriffe jedoch abzublocken, können Sie die Missetäter im Honeypot wie Fische im Aquarium beobachten. Den Köder in der Hacker-Falle bildet ein leicht zugänglicher PC mit offensichtlichen Schwachstellen. Mit Hilfe einer unsichtbaren Bridging-Firewall wird der Hacker beobachtet. Als Server reicht ein älterer PC, auf dem Sie ein Windows-System oder eine ältere Linux-Distribution neu aufsetzen.
Damit daraus ein Honeypot wird, benutzen Sie zusätzlich Honeywall, eine Firewall, die sich entweder mit NAT (Network Address Translation) oder als Bridge konfigurieren lässt. Die Bridge-Konfiguration hat den Vorteil, dass das Gerät im Netz unsichtbar wird. Die Bridge verbindet zwar zwei Netzsegmente mit Hilfe zweier Netzwerkkarten, aber keine davon hat eine IP. Dass der Traffic zwischen diesen beiden Netzwerkkarten akribisch beobachtet wird, bemerkt der Angreifer nicht.
Honeywall im Echtbetrieb
Praxis: Mit Honeypots Hacker fangen
Bei Honeywall handelt es sich um eine spezialisierte Live-Linux-Distribution, die Sie auf der Heft-CD (PCP-Code: HONEYPOT) finden oder unter honeynet.org/tools/cdrom als knapp 70 MByte großes ISO-Abbild herunterladen. Dann fehlt nur noch ein Pentium III mit drei Netzwerkkarten und 256 MByte RAM, und Sie können Ihre Hacker-Falle bauen. Wenn Sie Honeywall im Echtbetrieb einsetzen wollen, sollten Sie reichlich Platz für Log-Dateien vorsehen. Das Team von Honeynet.org empfiehlt mindestens 30 GByte. Für Tests reichen aber schon 2 GByte.
Wer keinen alten PC als dedizierten Server übrig hat, kann den Honeypot alternativ auch unter dem System-Emulator VM Ware auf einem einzelnen Rechner simulieren. Dieser benötigt dann allerdings reichlich Hauptspeicher. Den Testrechner für den Workshop muss PC Professionell erst von 500 MByte auf 1 GByte aufrüsten, damit der Honeypot wirklich reibungslos läuft.
Ein unwiderstehlicher Köder
Praxis: Mit Honeypots Hacker fangen
Um dem Hacker Futter zu geben, können Sie auf dem Köder-PC zum Beispiel ein Image einer echten Datenbank installieren. Vorgefertigte Daten gibt es keine, doch können Sie eigene Datenbanken nehmen und die Tabelleninhalte mit Hilfe einfacher SQL-Befehle verfälschen. Mixen Sie beispielsweise Telefonnummern in Adressfeldern, vertauschen Sie Namen und Straßen oder lassen Sie Postleitzahlen mit Zufallszahlen zwischen 10000 und 99999 füllen.
Eine wichtige Frage bei Honeypots ist: Wo stelle ich die Falle auf? Wenn Sie viele Hacker anlocken wollen, um deren Angriffe zu studieren, schließen Sie den Honeypot außerhalb der Firewall direkt ans Internet an. In einem kleinen Netz ist die einfachste Möglichkeit, nach Feierabend den DSL-Stecker vom normalen Router abzuziehen und stattdessen schnell den Honeypot ans Internet anzuschließen.
Innere Abwehr
Im Inneren eines Netzwerks platziert, kann ein Honeypot als zusätzliches Intrusion-Detection-System dienen oder Angriffe aus den eigenen Reihen entlarven. Aber wer anfängt, sich mit Honeypots auseinander zu setzen, sollte den Honigtopf vor allem deshalb im lokalen Netz installieren, damit er ihn gründlich testen kann. Denn Honeypots sind nicht nur eine gute Möglichkeit, Hacker zu beobachten und vielleicht einmal einen Cracker dingfest zu machen.
Ein Honeypot ist immer auch ein Risiko. Wer mit einem Honeypot absichtlich die Angriffsfläche seines Netzes erhöht, muss genau wissen, was er tut. Und selbst mit der Macht des IT-Verantwortlichen ausgestattet, sollte man das Aufstellen eines Honeypots unbedingt mit seinem Chef absprechen.
Die Falle anstöpseln
Praxis: Mit Honeypots Hacker fangen
Für einen Hardware-Honeypot installieren Sie Honeywall auf einem normalen PC. Dann schließen Sie einen Köder-PC über die Honeywall-Bridge ans Netzwerk an. Einen virtuellen Honeypot können Sie komplett unter VM Ware installieren. Unter www.vmware.com bekommen Sie eine 30-Tage-Testversion. VM Ware kann ganze virtuelle Netzwerke auf einem einzelnen Windows-XP- oder Linux-Rechner simulieren. Dazu werden mehrere virtuelle PCs installiert und mit virtuellen Netzwerken verbunden.
VM Ware kennt unterschiedliche Netzwerkverbindungen. Das Host-only-Netz verbindet den virtuellen PC über seine virtuelle Netzwerkkarte mit seinem Wirtssystem. In den Bridged- und NAT-Modi greift der simulierte Rechner auf die Netzwerkkarte seines Gastgebers zu. Sind mehrere simulierte PCs vorhanden, können zwischen diesen wiederum virtuelle LAN-Segmente definiert werden. Es gibt also viele Möglichkeiten, Honeypots zu Testzwecken zu vernetzen.
Im Testlabor fassen die Autoren Honeywall und einen Köder in einem virtuellen Netzwerk zusammen, das durch die überbrückte Netzwerkkarte des Gastrechners mit dem echten LAN verbunden ist. Von einem Linux-Rechner im echten Netz aus greifen die Tester das System mit Nessus an.
Honigtopf aufstellen
Praxis: Mit Honeypots Hacker fangen
Legen Sie auf VM Ware einen virtuellen Rechner für Honeywall an. Honeywall ist eine spezielle Distribution, die stets von der CD startet. Für einen Hardware-Honeypot müssen Sie das ISO-Image auf CD brennen und immer im Laufwerk lassen. Wenn Sie aber auf VM Ware installieren, weisen Sie der virtuellen Maschine statt eines realen CD-ROM-Laufwerks direkt das ISO-Image auf der Festplatte zu. Das können Sie bereits beim Einrichten der Maschine per Assistent erledigen oder später mit dem Menübefehl VM/Settings. Hier markieren Sie in der Hardware-Liste das CD-ROM-Laufwerk, kreuzen die Option Use ISO image an und tragen den Pfad zur ISO-Datei ein.
Neben Hardware spart das auch Nerven. Denn wenn Sie den Wirts-PC booten und die Honeywall-CD des virtuellen Rechners im Laufwerk vergessen haben, bootet der echte Computer mit der Honeywall-CD. Und die ist bei der Installation gnadenlos: Sie löscht und formatiert die komplette Festplatte. Zum Glück fragt sie vorher aber dreimal nach, ob sie wirklich so vorgehen soll.
Apropos Festplatte: Honeywall funktioniert lediglich mit IDE-Laufwerken, nicht mit SCSI. Da VM Ware aber SCSI-Festplatten als Standard einsetzt, müssen Sie die Einstellung der virtuellen Festplatte in VM Ware erst auf IDE umstellen.
Rechte freischalten für Promiscuous Mode
Praxis: Mit Honeypots Hacker fangen
Honeywall versetzt die Netzwerkkarten in den Promiscuous Mode. Normalerweise akzeptiert eine Netzwerkkarte nur die Datenpakete, die für sie bestimmt sind. Im Promiscuous Mode nimmt sie jedoch alles, was kommt. Das ist für Überwachungseinrichtungen wie Honeywall die bessere Einstellung. Auf einem echten PC ist das auch kein Problem, wer aber in VM Ware unter Linux eine virtuelle Netzwerkkarte im Promiscuous Mode betreiben will, muss erst die Rechte dafür freischalten. Das kann zum Beispiel mit folgendem Befehl geschehen, der mit Root-Rechten eingegeben werden muss:
chmod a+rw /dev/vmnet0
Wenn Sie Honeywall das erste Mal starten, wählen Sie aus dem Hauptmenü Punkt 5: Initial Setup. Es erscheint ein Assistent, der Sie Schritt für Schritt durch die Einstellungen leitet. Leider kennt dieser Assistent keinen Zurück-Knopf. Wer etwas falsch einstellt und voreilig auf Return drückt, muss von vorn anfa
ngen. Auch Plausibilitätsprüfungen fehlen. So können Sie zum Beispiel problemlos Broadcast-Adressen vergeben, die nicht zu den IP-Adressen der Honeypots passen. Das Honeynet muss also sorgfältig geplant werden. Unter der Adresse www.honeynet. org/papers/cdrom/InitialSetup.pdf finden Sie eine Kurzanleitung mit einer Checkliste für die korrekte Installation.
Der Testlauf
Praxis: Mit Honeypots Hacker fangen
Wenn Sie Honeywall nach der Ersteinrichtung erneut starten, müssen Sie sich als root am System anmelden. Dann können Sie das Menü mit dem Befehl Menu wieder aufrufen. Um zu einem späteren Zeitpunkt eventuell noch einmal gleichartige Honeywalls aufzusetzen, sollten Sie die Einstellungen auf Diskette oder USB-Stick speichern.
Wenn Ihr Honeypot fertig ist, testen Sie als Erstes mit einem einfachen Ping, ob er erreichbar ist. Der Köder-PC sollte den Ping beantworten. Honeywall zeichnet parallel dazu den Kontaktversuch auf, den Sie unter Status/Inbound Connections finden.
Vor einem Testlauf können Sie die Log-Dateien von Honeywall mit OS Administration/Clean out logging directories leeren, damit die Daten übersichtlich bleiben. Danach starten Sie das System mit Honeywall Administration/Activate Honeywall neu.
Wenn der Honeypot funktioniert, muss die Honeywall alle Angriffe auf den Köder-PC durchlassen, dabei aber protokollieren. Ob das klappt, können Sie mit einem Security-Scanner oder einem Exploit für das Betriebssystem Ihres Köder-PCs ausprobieren.
Testen mit Nessus
Praxis: Mit Honeypots Hacker fangen
Als Security-Scanner hat sich Nessus bewährt, das beispielsweise in der Knoppix/Kanotix-Distribution enthalten ist. Nachdem Sie Nessus unter Linux installiert haben, müssen Sie als root mit dem Befehl nessus-adduser einen Benutzer anlegen und mit nessus-mkcert ein Zertifikat erzeugen. Dann starten Sie den Nessus-Server mit nessusd -D. Den Client rufen Sie mit dem Befehl nessus auf. Sobald Sie sich mit dem eben angelegten Benutzernamen angemeldet haben, können Sie die Scan-Optionen einstellen.
Da auf dem Honeypot nicht produktiv gearbeitet wird, können Sie ihn hemmungslos hacken. Entfernen Sie also ruhig die Option Safe Scan unter der Registerlasche Scan Options im Nessus-Client. Nessus führt mit Hilfe von Plug-ins eine riesige Bandbreite an Tests durch. Unter Plugins finden Sie die Liste der installierten Module. Aktivieren Sie alle und stellen Sie unter Target selection das Ziel Ihres Angriffs ein.
Im Testlabor bringt PC Professionell mit Nessus auf dem Köder-PC unter Windows XP zuverlässig den Generic Host Process for Win32 Services zum Absturz. Dieses Programm ist besser unter seinem Dateinamen svchost.exe bekannt und wird unter anderem vom MS-Blaster-Wurm ausgenutzt. Nessus löst einen Neustart aus und fördert jede Menge weitere Sicherheitslücken zu Tage.
Hacker gefasst
Praxis: Mit Honeypots Hacker fangen
Parallel dazu zeichnet Honeywall auf, was der angelockte Hacker auf dem Honeypot macht. Die Ergebnisse eines Angriffs finden Sie unter dem Menü Status. Punkt 13 in diesem Menü offenbart die Traffic-Statistik. Ein typischer Nessus-Scan erzeugt ungefähr 30 MByte an Traffic. Mehr als die Hälfte der Scans beziehen sich auf HTTP.
In den Protokolldateien von Snort, einem Open-Source-Überwachungssystem zum Schutz vor unerlaubten Eindringlingen, ist jede einzelne Abfrage detailliert aufgezeichnet.
Um die Log-Dateien weiter zu analysieren, können Sie sie beispielsweise mit Putty per SSH/SCP vom Honeywall-Rechner auf einen anderen PC laden. Die Optionen dazu finden Sie unter Honeywall Configuration/Honeywall Upload. Den Upload selbst starten Sie von der Kommandozeile, indem Sie das Skript /usr/local/bin/upload.sh ausführen. Im Echtbetrieb kann Honeywall die Protokolle per crontab in regelmäßigen Zeitabständen automatisch hochladen. Für die Analyse eignen sich Tools wie Sawmill oder Snortalog.
Honeywall bietet noch weit mehr Möglichkeiten, als in diesem Workshop gezeigt werden kann. So kann das Programm bei Angriffen per E-Mail automatisch Alarm schlagen. Die Option dazu finden Sie unter Honeywall Configuration/Alerting. Der E-Mail-Alarm funktioniert aber nur, wenn Sie in den Firewall-Regeln ausgehende Verbindungen auf Port 25 erlauben und einen SMTP-Server haben, der Verbindungen von Ihrem Honeywall-System akzeptiert.
Verschlüsselte Hacks knacken
Praxis: Mit Honeypots Hacker fangen
Mit dem hier beschriebenen Aufbau können Sie einen Hacker bei seinem Werk beobachten. Wenn der Angreifer aber seine Kommunikation verschlüsselt, haben Sie nichts von Ihren Beobachtungen: Alles, was Sie zu sehen bekommen, ist kryptischer Zeichensalat. Eine Lösung für dieses Problem ist Sebek. Sebek ist ein Client-Server-System zur Überwachung verschlüsselter Kommunikation. Auf Köder-Rechnern mit Linux können Sie Sebek als Kernel-Modul installieren. Das ermöglicht es, verschlüsselte Kommunikation an ihrem Endpunkt abzufangen, nachdem sie dechiffriert wurde. Für Windows gibt es einen Sebek-Client, der Interaktionen mit der Kommandozeile abfängt.
Honeywall arbeitet nahtlos mit Sebek zusammen. Die Honeywall-Bridge nimmt die Sebek-Pakete von den Honeypots in Empfang und leitet sie an einen Sebek-Server weiter. Unter Honeywall Configuration/Sebek können Sie dessen IP einstellen.
Angriff vergeblich
Praxis: Mit Honeypots Hacker fangen
Um zu verhindern, dass Ihr Honeypot als Basis für weitere Angriffe missbraucht wird, sollten Sie unter Honeywall Configuration/ Connection Limiting die ausgehenden Verbindungen des Honeypots begrenzen. Darüber hinaus kann Honeywall Traffic nicht nur blockieren oder protokollieren, sondern auch verändern. Damit erlauben Sie Hackern, weitere Angriffe von Ihrem System zu starten, die anscheinend auch funktionieren. Aber da das System die Datenpakete manipuliert, läuft der Angriff schließlich ins Leere.
Sie aktivieren diese Option, indem Sie unter Honeywall Configuration/Snort_inline das Snort_ inline ruleset auf Replace schalten. Sollte ein Angreifer trotzdem einmal über die Stränge schlagen, können Sie unter Honeywall Administration/Emergency Lockdown den Not-Ausschalter drücken.
Lohnende Hacker-Falle
Praxis: Mit Honeypots Hacker fangen
Mit der Honeywall-CD setzen Sie in wenigen Stunden einen eigenen Honeypot als Hacker-Falle auf. Indem Sie beliebige Köder-Computer anschließen, werden die Honeypots sehr individuell und hoch interaktiv. Mit den bereitgestellten Werkzeugen beobachten Sie die Aktivitäten des Angreifers detailliert und schränken seine Möglichkeiten wirksam ein. Aber bevor Sie Ihr Hackquarium in die freie Wildbahn entlassen und ins Internet stellen, sollten Sie das System im eigenen LAN ausgiebig ausprobieren.
Weitere Infos
– Ein einfacher Honeypot unter Windows
– Low-Interaction-Honeypot unter Linux
– Honeyd als Boot-CD
– Symantec Decoy Server High-Interaction-Honeypot
– Specter vielseitiger und leistungsstarker Honeypot
– Low-Interaction-Honeypot mit Plug-in-Schnittstelle
– WLAN-Access-Point-Simulator
– Labrea Tarpit Low-Interaction-Honeypot
– Google-Hack-Honeypot