Footprinting oder: Wie man ein Unternehmen ausspioniert

Ordnungsmerkmale

erschienen in: <kes> 2007#5, Seite 16

Rubrik: Bedrohung

Schlagwort: Angriffsvorbereitung

Zusammenfassung: Vor einer Attacke kommt zunächst das Beschaffen von Informationen über das Zielobjekt. Dabei können Angreifer auf vielfältige Ressourcen zurückgreifen: Infos zu Unternehmen liegen heutzutage in vielfältiger Form vor und auch Cyber-Kriminelle und Hacker nutzen das für ihre gefährlichen Ziele. Wie Angreifer vorgehen und was man dagegen machen kann, schildert dieser Beitrag.

Autor: Von Robert Chapman, Rotenburg an der Fulda

Sammeln Hacker oder Cyber-Kriminelle Informationen über eine spezifische Computer-Netzwerkumgebung, meist zum Zweck eines bevorstehenden Einbruchsversuchs, dann spricht man von Footprinting. Dies kann zwar eine mühsame Tätigkeit sein, lohnt sich aber. Böswillige Hacker betrachten das Ausspähen als ersten Schritt eines echten Angriffs und verwenden bei typischen Attacken bis zu 90 % ihrer Zeit auf die Footprinting-Phase. Das Sammeln der Informationen kann im Extremfall Monate dauern, wohingegen der eigentliche Angriff nur einige Stunden in Anspruch nimmt.

Grundsätzlich gilt: Je mehr Angreifer über das Unternehmen oder sein Netzwerk wissen, desto leichter oder wirkungsvoller ist die Attacke. Außerdem können sie auf Basis dieser Kenntnisse die effizienteste oder einfachste Angriffs-Art wählen. So hat es beispielsweise ja wenig Sinn beim Angriff auf einen Server zunächst Microsoft-Sicherheitslücken durchzutesten, wenn dieser unter Linux arbeitet.

Footprinting besteht aus mehreren Schritten: Zunächst sammeln die Angreifer Basisinformationen, dann bestimmen und ergründen sie das Zielnetzwerk, das sie attackieren wollen. Anschließend lokalisieren sie aktive Rechner im Zielnetzwerk und versuchen, offene, nicht gesicherte Ports oder Dienste auf diesen Systemen zu finden. Der letzte Schritt ist das Operating-System-(OS)-Fingerprinting, um das genutzte Betriebssystem zu identifizieren.

Passive Aufklärung

Die Informationsbeschaffung selbst lässt sich in zwei Haupt-Phasen einteilen.

Beim passiven Ausspionieren sammelt der Angreifer Informationen über ein Unternehmen oder ein Netzwerk, ohne Kontakt mit dem Ziel aufzunehmen. Dabei zapft er verschiedene öffentlich zugängliche Quellen an, ohne dass der Ausgespähte davon Kenntnis erlangt oder in irgendeiner Weise alarmiert wird. Zudem ist es zumeist völlig legal, diese Informationen zu erhalten. Unternehmen können bei den meisten solcher Angaben nicht verhindern, dass sie öffentlich zugänglich sind, weil sie entweder explizit erwünscht oder für den Netzbetrieb notwendig sind. Typische Quellen für öffentlich zugängliche Informationen sind unter anderem:

Unternehmens-Website

Die Website des designierten Opfers wird fast immer die erste Anlaufstelle sein, um Informationen über ein Angriffsziel zu erhalten. Hier können Angreifer häufig auch organisatorische Details erfahren oder Kontaktnamen und E-Mail-Adress-Strukturen finden. Statt sich eine Website online anzusehen, verwenden sie dabei oft auch Tools wie den Offline-Browser httrack, um die komplette Website herunterzuladen und dann offline zu lesen. Auch eine Analyse des Web-Quellcodes kann dabei etliches über die Website und ihren Aufbau verraten sowie Informationen über Betriebssysteme und verwendete Applikationen enthalten.

Websites ändern sich ständig und es gibt durchaus auch "interessante" Informationen, die von aktuellen Sites entfernt wurden. Deshalb nutzen viele Angreifer auch die Website [externer Link] archive.org, die mit ihrer "Wayback Machine" den Zugriff auf ältere Versionen vieler Sites ermöglicht. So kann ein Angreifer oft auch auf Fassungen der Ziel-Website zugreifen, die bereits mehrere Jahre zurückliegen.

Internet-Suchmaschinen

Suchmaschinen sind ein nützliches Tool, das auch Kriminelle zu schätzen wissen. Sie können damit sowohl Angaben über die Ziel-Website, als auch Links zu Informationen über das Ziel-Unternehmen bei Dritten finden. Da "Google & Co." mehr oder minder alles indexieren, was sie irgendwie erreichen, ist es durchaus möglich, dass Angreifer Informationen oder Seiten entdecken, die auf der öffentlichen Website nicht ohne Weiteres verfügbar oder auffindbar wären. Viele Unternehmen übersehen diese Tatsache, sodass nicht selten private oder interne Verzeichnisse oder auch Services und Web-Frontends unbeabsichtigt in den Suchmaschinen-Indizes landen. Die "erweiterte Suche" vieler Suchmaschinen liefert bequemen Zugang zu solchen auf den ersten Blick versteckten Dingen (vgl. <kes> 2005#5, S. 6). Die Verwendung verschiedener Suchmaschinen kann dabei durchaus weitere Ergebnisse bringen, weil diese andere Indexierungsverfahren einsetzen.

Newsgroups und Foren

In der Regel gibt es immer Personen in Diskussionsgruppen, die etwas über ein Unternehmen oder eine Person zu sagen haben. Für Angreifer sind Foren besonders nützlich, wenn es um technische Fragen geht: Es gab sogar schon einen Fall, bei dem ein Systemadministrator auf der Suche nach der Lösung für ein Problem die Konfigurationsdaten eines Unternehmens-Routers ins Web stellte – ein echter Glücksfall für einen potenziellen Angreifer. Zudem: Mitarbeiter, die mit einem Firmen-Account in Newsgroups schreiben, hinterlassen dort auch ihre E-Mail-Adressen. Sie liefern somit gleich mehrere Informationen: eine reale E-Mail-Adresse und das E-Mail-Adressformat des Unternehmens (s. a. <kes> 2006#2, S. 6) und zudem ihren Namen und sich selbst als "Einstiegspunkt" für Social Engineering.

Stellenangebote

Unternehmen geben beispielsweise im Internet, in der lokalen Presse oder in Fachzeitschriften Stellenanzeigen auf, wenn sie neue Mitarbeiter suchen. Angebote technischer Positionen beschreiben dabei häufig die erforderlichen Kenntnisse, zum Beispiel "Systemadministrator mit guten Solaris-10-Kenntnissen gesucht". Auch dies ist ein wertvoller Hinweis für Angreifer auf der Suche nach Informationen über genutzte Betriebssysteme, Datenbanken, Netzwerkgeräte und Applikationen.

Interne Dokumente

Weggeworfene Notizen, Dokumente oder Handbücher eines Unternehmens können eine wahre Goldgrube für Angreifer sein. Dumpster Diving (im Müll "tauchen") bezeichnet die Beschaffung aufgeschriebener oder ausgedruckter Informationen, die möglicherweise in Papierkörben entsorgt wurden. Zu diesem Zweck nehmen Angreifer nach Büroschluss die Müllcontainer in Augenschein, um nachzusehen, was das Reinigungspersonal mit dem Leeren der hausinternen Papierkörbe hinterlassen hat. Sie können dort beispielsweise Rechnernamen, Kontoinformationen, Netzwerkdaten und vielleicht sogar Passwörter finden. Ein Papierschnipsel, den ein Angestellter achtlos weggeworfen hat, kann einem böswilligen Hacker durchaus Zugang zum Netz verschaffen. Aber auch Informationen über die organisatorische Struktur und "internes Wissen" können zur Vorbereitung von Social Engineering sehr wertvoll sein.

Social Engineering

Social Engineering ist die vermutlich einfachste Art, sich Informationen über ein Unternehmen zu beschaffen. Denn der Mensch ist wahrscheinlich das schwächste Glied in jedem Sicherheitsmodell. Hacker und Kriminelle nutzen dies und versuchen Mitarbeiter so zu manipulieren, dass sie entweder unabsichtlich oder bewusst Informationen preisgeben. Die Angreifer missbrauchen dabei menschliche Eigenschaften wie Vertrauen, Hilfsbereitschaft, Dankbarkeit und Neugier (Neuigkeiten gibt es nur, wenn Informationen geliefert werden) oder machen sich die Rache eines verärgerten Angestellten zunutze. Hier wird ein Angreifer zwar bereits aktiv, taucht aber – je nach der Art des "Zugriffs" auf die Mitarbeiter – noch nicht in Protokolldateien der Informationssicherheit auf.

Es ist sehr schwer, geeignete Abwehrmittel gegen Social Engineering zu finden – schließlich gibt es keine Hardware oder Software, die den Unsicherheitsfaktor Mensch abdeckt. Sensibilisierung und Schulung der Mitarbeiter sowie eine klare Klassifizierung von internen Daten erscheinen die erfolgversprechendsten Gegenmaßnahmen (vgl. <kes> 2007#1, S. 92, <kes> 2004#2, S. 10 und <kes> 2002#1, Seite 10).

Beim passiven Ausspionieren interessieren sich Cyber-Kriminelle zunächst für alle Aspekte der Zielorganisation. Erfahren sie Kontaktdetails von Mitarbeitern, können sie diese anrufen, um Informationen zu überprüfen und weitere Details auszuhorchen: Namen, Telefonnummern, E-Mail-Adressen, Fusionen und Übernahmen, Unternehmenspartner – alle diese Informationen können den entscheidenden Hinweis liefern, der das Puzzle vervollständigt. Angreifer nutzen nicht zuletzt auch Websites, auf denen sich Einzelheiten zu Personen finden lassen, etwa [externer Link] people.yahoo.com oder soziale Netzwerke wie Xing, um sich eine fremde Identität zu verschaffen und so weitere Angaben auszuspionieren. Insiderwissen oder das Deckmäntelchen des vermeintlichen Kollegen sind gute "Türöffner" für weitere Schritte.

Aktive Spionage

Die andere Art der Informationsbeschaffung ist das aktive Ausspionieren: Das heißt, hier können die Schritte zur Informationsbeschaffung – im Prinzip – technisch bemerkt oder protokolliert werden, sprich es entsteht ein Datensatz über den Versuch des Ausspähens. Die Grenze zwischen aktiv und passiv ist bisweilen nicht ganz eindeutig zu ziehen: Wenn ein Angreifer etwa eine einfache Domain-Name-System-Abfrage (DNS) macht, um die zum Webauftritt oder zu einem Server gehörige IP-Adresse herauszufinden, wird diese zwar irgendwo protokolliert, aber es ist unwahrscheinlich, dass dies von der Zielorganisation bemerkt oder als verdächtig empfunden wird.

Ein zweites Beispiel aus der Grauzone: Schickt ein Angreifer eine E-Mail an einen fiktiven Angestellten des Zielunternehmens, erhält er vermutlich eine Fehlermeldung zurück. Daraus kann er unter Umständen das E-Mail-Format und die Server, welche die E-Mail passiert hat, herauslesen. So ist der Angreifer in der Lage, die Namen und Adressen des Mailservers abzuleiten. Auch wenn diese Aktion dort protokolliert wurde, handelt es sich doch um ein Ereignis, das häufig vorkommt und deshalb in aller Regel keine Aufmerksamkeit auf sich lenkt.

Beim aktiven Ausspionieren sammeln und verwenden Angreifer Netzwerkinformationen, um ein Bild des Zielnetzwerks anzulegen und Schwachpunkte zu identifizieren. Folgende Schritte zählen unter anderem zum aktiven Ausspionieren und werden im Folgenden näher betrachtet: DNS-Lookup, Zone Transfer, Ping Sweep, Traceroute, Port-Scan, OS-Fingerprinting.

DNS-Lookup

Es gibt mehrere Befehlszeilen-Tools in Betriebssystemen, mit denen sich Domain-Name-System-Abfragen durchführen lassen: nslookup, whois, dig und andere. Angreifer können sie verwenden, um Namen und Adressinformationen eines Ziels zu ermitteln. Durch einfaches Abfragen lässt sich die IP-Adresse erfahren, die zu einem bestimmten Domainnamen gehört. Mithilfe detaillierter Abfragen können Hacker zudem spezielle Adressen wie die des zuständigen Mailservers herausfinden. Ermitteln Angreifer Whois-Informationen, finden sie Namen und Kontaktdaten derjenigen Personen heraus, die einen bestimmten Domainnamen registriert haben. Anstelle der Befehlszeilen-Tools ist es auch möglich, Dienstprogramme oder Websites zu nutzen, bei denen alle diese Informationen "auf einen Rutsch" verfügbar sind, etwa [externer Link] www.dnsstuff.com. DNS-Informationen sind zwar keine Geheimnisse, sollten aber für die externe Abfrage auf das von außen erreichbare Notwendige beschränkt werden, um keine zusätzlichen Aufschlüsse über die Netzorganisation zu liefern.

Zone Transfer

Namen- und IP-Adressdatensätze sind für gewöhnlich in so genannten Zonen zusammengefasst und diese Informationen in Zonendateien auf DNS-Servern hinterlegt. DNS-Server halten sich gegenseitig auf dem Laufenden, indem sie Daten über Zonendateien austauschen. Wenn Angreifer eine komplette Zonendatei von einem DNS-Server anfordern könnten, bekämen sie alle Informationen auf einmal, anstatt mehrere Abfragen durchführen zu müssen. Bei vielen Servern werden Sicherheitsvorkehrungen eingesetzt, die einen unautorisierten Zugriff auf diese Dateien verhindern. Doch es besteht die Möglichkeit, dass es funktioniert, und dann halten die Hacker eine komplette Liste mit den Namen und IP-Adressen des Zielobjekts in Händen.

Stehen einem Angreifer umfassende DNS-Informationen über sein Zielnetzwerk zur Verfügung, kann er zugehörige IP-Adressen und -Adressblöcke identifizieren und eventuell auch auf die Struktur des Netzwerks schließen. Sobald ein erreichbarer Rechner eine "IP-Identität" besitzt, sind Angreifer auch in der Lage, diese für ihre kriminellen Aktivitäten ins Visier zu nehmen.

Ping Sweep

Hacker nutzen auch das Diagnose-Tool ping, um Netze aufzuklären. Schickt man per ping ein Datenpaket an eine IP-Adresse im Zielnetz und erhält hierauf eine Antwort, ist klar, dass der entsprechende Rechner existiert und man mit ihm kommunizieren kann. Ein so genannter Ping Sweep checkt den gesamten Adressbereich nach derart erreichbaren Systemen; hierfür gibt es eine Vielzahl an Scan-Tools, welche dieses Verfahren automatisieren. Pings von außen sollten per Firewall-Regel weitgehend unterbunden werden, sofern kein besonderer Bedarf hierfür besteht. Ping Sweeps können zudem durch Firewalls oder Intrusion Detection erkannt werden und zum Alarm führen – schwieriger gestaltet sich das allerdings, wenn der Angreifer hier über einen langen Zeitraum hinweg nur gelegentlich einzelne Anfragen versendet und dabei womöglich auch verschiedene Absender-IP-Adressen nutzt.

Traceroute

Traceroute ist ein Dienstprogramm, das den Verbindungspfad zwischen Quelle und Ziel anzeigt. Auch der verwendete Netz-Pfad und seine Zwischenstationen (Hops) sind für Hacker relevante Aspekte. Die letzten Hops können bereits innerhalb des Zielnetzwerks liegen, was zusätzliche Informationen über das Netzwerk und seine Subnetze liefert. Darüber hinaus identifizieren sich viele der Zwischen-Hops selbst, sodass Angreifer weitere Angaben über geografische Daten und den Service-Provider des Ziels gewinnen können. Hacker, die bildliche Darstellungen bevorzugen, greifen auf grafische Versionen wie etwa Visual Route zurück; dieses Dienstprogramm stellt die Ergebnisse auf einer Weltkarte dar und zeigt Einzelheiten der Hops und ihrer jeweiligen Standorte. Auch hier stellt sich die Frage, welche Systeme überhaupt zu Diagnosezwecken auf die entsprechenden Anfragen reagieren müssen – eine Beschränkung auf das Mindestmaß erscheint geboten.

Port-Scan

Wenn Angreifer aktive Rechner im Zielnetz ausgekundschaftet haben, benötigen sie Details: Sie wollen wissen, welche Ports offen beziehungsweise erreichbar sind, welche Dienste darauf laufen. Mit einem Port-Scan lässt sich überprüfen, welche Transmission-Control-Protocol-Ports (TCP) und verbindungslosen User-Datagram-Protocol-Ports (UDP) eines Computers verfügbar sind. So erfahren die Angreifer einerseits, welche "Türen" es gibt – die sie später ausprobieren, um Zugang zu erhalten – und zum anderen erhalten sie dadurch einen Hinweis auf die Funktion des jeweiligen Systems, möglicherweise bereits auch zu seinem Betriebssystem. Ein beliebtes Tool für Portscans ist der Network Mapper, kurz: nmap, der für Linux- und Windows-Plattformen verfügbar ist und eine Vielzahl von Scans mit unterschiedlichen Parametern unterstützt ([externer Link] http://insecure.org/nmap/).

Zu den verschiedenen Arten von Port-Scans gehören zum Beispiel Connect-Scans, SYN-, NULL-, ACK-Scans, Xmas-Tree- oder Idle Scans. Ziel des Footprintings ist es, sich ein möglichst gutes Bild vom Zielnetzwerk zu machen ohne Alarm auszulösen. Ein Connect-Scan stellt eine vollständige Verbindung mit dem Zielsystem her, genau wie bei einer Datenübertragung. Dies sagt den Angreifern, dass der Port offen und bereit ist. Gleichzeitig aber erfährt das Zielobjekt, dass sich ein Remote-System mit ihm verbunden hat. Außerdem erhält das "Opfer" dessen Identität in Form der IP-Adresse. Eine einzelne Verbindung löst sicher keinen Alarm aus, aber es wird auffallen, wenn ein Angreifer versucht, in kurzer Zeit eine Verbindung mit aufeinanderfolgenden Ports aufzunehmen. Firewalls und Intrusion-Detection-Systeme (IDS) entdecken diese Art von Scans, weshalb Angreifer stattdessen auf getarnte Scans zurückgreifen.

Die anderen aufgeführten Scans, abgesehen vom Idle-Scan, senden Pakete mit verschiedenen Kombinationen von Paketkennzeichnungen (TCP Flags) an das Ziel. Wenn ein Zielport geschlossen ist, sendet das Zielobjekt ein Paket mit einem Reset-(RST)-Flag zurück – das sagt einem Angreifer, dass der Port nicht verfügbar ist. Sendet das Zielobjekt jedoch nichts zurück, ist der Port vermutlich verfügbar, versteht aber die Flag-Sequenz nicht. Erhalten Hacker keine Antwort, mutmaßen sie also, dass der Port offen ist und der Versuch eines Verbindungsaufbaus sich lohnen kann. Weil diese verschiedenen Scans keine vollständige Verbindung mit dem Ziel herstellen, werden sie auch nicht so leicht erkannt. IDS und Firewalls sind jedoch grundsätzlich in der Lage, auch diese Art von Datenverkehr in einem Netzwerk zu entdecken.

Der Idle-Scan nutzt hingegen so genannte Zombie-Rechner, um nicht aufzufallen: Angreifer richten ihre Anfragen an das Ziel über Dritte, deren Computer sie in ihrer Gewalt haben, und empfangen dort auch die Antworten. So lässt sich zumindest der Ursprung einer Attacke verschleiern, weil es so aussieht, als kämen die Scans von dem oder den Zombie-Rechnern. Bei Anfragen über viele verteilte Systeme ist es zudem schwierig, einen zusammenhängenden Angriff zu erkennen.

OS-Fingerprinting

Beim OS-Fingerprinting versucht ein Angreifer zu ergründen, welches Betriebssystem auf einem bestimmten System verwendet wird, um später gezielt Schwachstellen und passende Tricks einsetzen zu können; auch hierfür kann nmap zum Einsatz kommen. Verschiedene Betriebssysteme reagieren unterschiedlich auf Scans, weil ihre Netzwerkfunktionen verschiedenartig implementiert sind. NMap stellt daher Vermutungen bezüglich des Betriebssystems an. Auch offene Ports liefern Hinweise, weil bestimmte Ports auf bestimmten Betriebssystemen für bestimmte Dienste reserviert sind: So werden bei einer Microsoft-Plattform bestimmte Ports offen sein, die bei einer Linux-Plattform wahrscheinlich geschlossen sind.

Die halbe Miete

Fingerprinting ist das letzte Teil im Footprinting-Puzzle, die Angreifer haben dann oft ein sehr genaues Bild des Zielnetzwerks inklusive Hostnamen, IP-Adressen, offenen Ports, Betriebssystemen und Funktionen bestimmter Computer. Um solche Informationen zu erhalten, können Angreifer auf eine Vielzahl von Dienstprogrammen zurückgreifen: 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. Es handelt sich dabei durchaus um legale Software-Werkzeuge, weil sie auch verwendet werden können, um die Integrität eines Netzwerks zu überprüfen.

Mit der Informationsbeschaffung ist bereits die "halbe Miete" eines Angriffs erledigt – danach geht es ans "Eingemachte": Die Cyber-Kriminellen entscheiden sich für eine Angriffsstrategie. Auch hierzu nutzen sie häufig öffentlich zugängliche Datenbanken, die Aufschluss über Sicherheitslücken geben, um die schwächsten Systeme herauszufinden und bekannte Exploits auszuprobieren, um spezifische Fehlfunktionen auszunutzen, um Zugriff oder erhöhte Privilegien zu erlangen oder Denial-of-Service-Attacken durchzuführen. Ist dieses Stadium erst erreicht, wird es für Unternehmen sehr schwer, eine Attacke erfolgreich abzuwehren – die Abwehrarbeit im Vorfeld sollte daher durchaus auch einen entsprechenden Stellenwert haben und genauso sorgsam ausgeführt werden wie die Sicherung der Systeme selbst.

Robert Chapman ist Geschäftsführer der Firebrand Training GmbH (vormals Training Camp).