Footprinting – in des Hackers Fußstapfen

Sensible Unternehmensdaten zählen zu den bevorzugten Angriffszielen eines Hackers. Nicht wahllos, sondern äußerst strategisch gehen Cyber-Kriminelle dabei vor.

Port-Scan

Haben Angreifer mit Hilfe von Ping erst einmal festgestellt, welche Zielrechner aktiv sind, benötigen sie Details. Die wichtigste Frage: Welche Ports sind nicht gesperrt. Mit einem Port-Scan lässt sich überprüfen, welche Transmission Control Protocol-Ports (TCP) und verbindungslosen User Datagram Protocol-Ports (UDP) eines Hosts offen sind. Das Ziel: Hacker erfahren so, welche Türen existieren – die sie dann ausprobieren, um Zugang zu erhalten. Hinzu kommen Informationen über die Funktion des jeweiligen Hosts, also den Computer, über den die Server betrieben werden, und möglicherweise über das Betriebssystem. Entdecken Hacker zum Beispiel, dass die Ports 80 und 443 offen sind, gehen sie von einem Webserver aus. Ist Port 25 offen, handelt es sich vermutlich um einen Mailserver.

Port-Scanning ist ein ziemlich kompliziertes Verfahren, zumal Port-Nummern von 0 bis 65535 existieren. Jeder Port muss abgefragt werden, um herausfinden zu können, ob er offen ist und auf eine Anfrage reagiert. Trotz einiger Anomalien, weil verschiedene Betriebssysteme unterschiedlich auf manche Port-Scans antworten, können Angreifer auf der Grundlage der positiven und negativen Ergebnisse ein recht genaues Bild des Zielrechners zeichnen.

Stellen Hacker eine Verbindung zwischen zwei Hosts her, verwenden sie üblicherweise TCP oder UDP. Setzen sie auf TCP, enthält der Header – jedes von einem Rechner versandte Datenpaket verfügt über einen Header, der Daten über den Absender, Empfänger, Typ und Lebensdauer des Datenpakets beinhaltet – eine Reihe von Flags. Dabei handelt es sich um eine binäre Variable im Arbeitsspeicher, die zum Handshaking-Prozess gehört, sprich der Dekodierung von GCR-Daten – Group Coded Recording (gruppenkodierte Aufzeichnung). Senden Angreifer also ein Paket mit einem speziell gesetzten Flag, erwarten sie eine bestimmte Antwort. Indem sie definierte Pakete an das Ziel senden, können sie bestimmte Antworten provozieren, die Informationen über den Status des Ports und des Hosts liefern.

Zu den unterschiedlichen Arten von Port-Scans gehören Connect Scan, SYN Scan, NULL Scan, ACK Scan, Xmas-Tree Scan oder Idle Scan. Eines der typischen Ziele von Footprinting ist es, sich ein Bild vom Zielnetzwerk zu machen, ohne Alarm auszulösen. Der Connect Scan stellt eine vollständige Verbindung mit dem Zielhost her, genauso wie bei einer Datenübertragung. Dies sagt dem Angreifer, dass der Port offen und bereit ist. Gleichzeitig aber erfährt das Zielobjekt, dass sich ein entfernter Host mit ihm verbunden hat. Außerdem kann das ‘Opfer’ dessen Identität erfahren, das heißt die IP-Adresse. Eine zufällige Host-Verbindung löst keinen Alarm aus, aber es wird auffallen, wenn ein entfernter Host versucht, eine Verbindung mit aufeinanderfolgenden Ports aufzunehmen. Firewalls und Intrusion Detection Systeme (IDS) entdecken diese Art von Scan, weshalb Hacker getarnte Scans verwenden.

Abgesehen vom Idle Scan, senden die anderen Methoden Pakete mit verschiedenen Flagkombinationen an das Ziel. Ist ein Zielport geschlossen, so erfolgt eine Rückmeldung per RST-(Reset-)Flag. Damit erhält der Hacker die Information, dass der Port nicht verfügbar ist. Sendet das Zielobjekt jedoch nichts zurück, ist der Port dagegen verfügbar, weil er die Flag-Sequenz nicht versteht. IDS-Systeme und Firewalls sind grundsätzlich in der Lage, diese Art von Traffic in einem Netzwerk zu erkennen.

Beim Idle Scan fungiert ein dritter Rechner, ein so genannter ‘Zombie’, als Zwischenstation. Angreifer richten eine Anfrage an das Ziel, die Antwort wird an den Zombie-Rechner geschickt, von dem aus die Hacker das Ergebnis abrufen. So lässt sich der Ursprung einer Attacke verschleiern. Zu den Haupt-Tools für Port-Scans zählt NMap. Damit lassen sich verschiedene Arten von Port-Scans mit unterschiedlichen Parametern durchführen.

Fingerprinting

Die oben genannten Verfahren werden allesamt im Rahmen des Footprinting eingesetzt. Beim Fingerprinting indes versucht der Angreifer zu entdecken, welches Betriebssystem einem Host zugrunde liegt. Der Grund: Informationen über das eingesetzte Betriebssystem geben Auskunft darüber, wo die Schwachstellen liegen und welche Tricks sich gegen diesen Host einsetzen lassen. Hacker nutzen beim Fingerprinting häufig NMap. Verschiedene Betriebssysteme reagieren unterschiedlich auf Scans, weil die Netzwerkfunktionalität nicht gleich implementiert ist. NMap stellt daher Vermutungen bezüglich des Betriebssystems an. Auch offene Ports liefern Hinweise, weil bestimmte Ports für bestimmte Dienste reserviert sind. Während bei einer Microsoft-Plattform bestimmte Ports offen sind, sind sie bei einer Linux-Plattform wahrscheinlich geschlossen.

Mission erfolgreich

Ist das Footprinting abgeschlossen, erhalten Hacker ein genaues Bild des Zielnetzwerks inklusive Hostnamen, IP-Adressen, Nummern offener Ports, Betriebssysteme und Funktionen bestimmter Hosts. Um diese Informationen zu erhalten, können die Angreifer auf eine Vielzahl von Dienstprogrammen zurückgreifen. Diese reichen von einfachen kostenlosen Open-Source-Paketen bis hin zu umfangreichen kostenpflichtigen Scan-Suites. Tools wie Sensepost, Spiderfoot oder Wikto sind Footprinting-Tools, die in einem einzigen Durchgang viele Informationen erzeugen können. Nun entscheiden sich Cyber-Kriminelle für eine Angriffsstrategie. Dazu nutzen sie häufig öffentlich zugängliche Datenbanken, die Aufschluss über Sicherheitslücken geben, um die schwächsten Hosts herauszufinden und bekannte Exploits auszuprobieren. Ist dieses Stadium erreicht, wird es für Unternehmen sehr schwer, eine Attacke erfolgreich abzuwehren.


Der Autor Robert Chapman ist Mitbegründer von Firebrand Training und Geschäftsführer der gleichnamigen GmbH.