Samstag, 31. Juli 2010 |
Für das TCP-Hijacking muss der Angreifer den Netzwerkverkehr mindestens eines Opfers belauschen. Während dies bei über einen Hub verbundenen Rechnern sehr einfach ist, ist es in geswitchten Netzwerken aufwendiger. Da ein Switch Eins-zu-Eins-Verbindungen herstellt, sieht ein unbeteiligter Rechner die Pakete einer fremden Verbindung nicht. Damit der Angreifer trotzdem die gewünschten Pakete empfangen kann, muss er sie zu sich umleiten. Dazu nutzt er eine Schwachstelle im Adress Resolution Protocol (ARP).
Das Adress Resolution Protocol befindet sich auf der Netzzugangsschicht des TCP/IP-Schichtenmodells (About Security #29). Es dient der Zuordnung von IP-Adressen zur entsprechenden Adresse im physikalischen Netzwerk, im Fall von Ethernet der MAC-Adresse (Media Access Control) der Ethernetkarte des entsprechenden Rechners. Immer wenn ein IP-Paket im lokalen Netz verschickt werden soll, braucht der Absender die MAC-Adresse des Empfängers. Dazu sendet er an alle Rechner im lokalen Netz (Broadcast) eine Anfrage: "Welche MAC-Adresse gehört zur IP-Adresse a.b.c.d?" (ARP-Who-Has). Der Rechner mit der gesuchten IP-Adresse a.b.c.d antwortet dem Fragenden mit einem ARP-Paket, das seine MAC-Adresse enthält. Um nicht bei jedem Paket erneut nach der MAC-Adresse fragen zu müssen, wird die entsprechende Zuordnung für einen gewissen Zeitraum in einem Puffer gespeichert.
Jetzt kommt die Schwachstelle von ARP ins Spiel: Es gibt keine Möglichkeit sicherzustellen, dass die Antwort wirklich vom Rechner mit der gesuchten IP-Adresse stammt. Dadurch kann jeder Rechner im lokalen Netz behaupten, eine bestimmte IP-Adresse gehöre ihm. Darüber hinaus erlaubt ARP auch die Verarbeitung und Speicherung von Antwort-Paketen, für die gar keine Anfrage gesendet wurde. Über so genannte Gratuitous-ARP-Pakete (siehe Kasten) können dadurch z.B. bei Bedarf geänderte MAC-IP-Zuordnungen bekannt gegeben werden. Alle Rechner im lokalen Netz speichern die so erhaltenen MAC-IP-Zuordnungen in ihrem Cache.
Ein Angreifer kann dies ausnutzen, um eine Verbindung zwischen zwei Rechnern über sich umzuleiten. Dazu schickt er gefälschte ARP-Pakete an seine Opfer, in denen er seine eigene MAC-Adresse den IP-Adressen der jeweiligen Kommunikationspartner zuordnet (ARP-Spoofing). Dieses Einschleusen gefälschter Informationen in den Cache wird auch als Cache-Poisoning bezeichnet. Nach dem Angriff schicken die Opfer ihre Pakete ohne weitere ARP-Anfrage (die entsprechende Zuordnung befindet sich ja in ihrem Cache) an den Angreifer, der sie auswertet und an den jeweils anderen Kommunikationspartner weiterleitet. Der Angreifer hat so die vollständige Kontrolle über die Kommunikation zwischen den angegriffenen Rechnern, er fungiert als 'Man-in-the-Middle'.
Statt der ARP-Adresse eines normalen Rechners kann z.B. auch die eines Gateway-Rechners gefälscht werden, wodurch der Angreifer den gesamten über das Gateway abgewickelten IP-Verkehr belauschen kann.
Statt durch das Fälschen der MAC-IP-Zuordnung kann der Angreifer sich auch durch Fälschen seiner MAC-Adresse als anderer Rechner ausgeben, wenn er diesen gleichzeitig durch einen DoS-Angriff lahm legt. Die MAC-Adressen sollten zwar eigentlich weltweit eindeutig sein, lassen sich aber meist überschreiben.
Außer das gezielte ARP Spoofing einzelner Adressen gibt es auch noch eine brutalere Methode: Wird der Cache eines Switches mit zu vielen MAC-Adressen überflutet, schalten manche Geräte in den Hub-Modus um, leiten also alle empfangenen Pakete an alle Ports weiter.
Nachdem der Angreifer eine Kommunikationsverbindung durch ARP-Spoofing über sich umgeleitet hat, kann er darin z.B. nach Benutzerkennungen und Passwörtern suchen (= sniffen). Auch TCP Hijacking ist nun möglich.
N E U ! Security
aktuell
Täglich aktuelle Security-Infos!
Der Angreifer kann u.U. auch eine verschlüsselte Verbindung unter seine Kontrolle bringen. Um z.B. eine SSL-geschützte Verbindung aufzubrechen, simuliert er gegenüber dem Client einen SSL-fähigen Webserver. Prüft der Benutzer des Clients nicht, ob das verwendete SSL-Zertifikat zum gewünschten Server gehört, werden die Daten nur bis zum Rechner des Angreifers SSL-geschützt übertragen. Dort kann der Angreifer sie als Klartext lesen und danach (ggf. manipuliert) über eine neue SSL-Verbindung zum Server weiterleiten. Durch einen derartigen Man-in-the-Middle-Angriff lässt sich auch das iTAN-Verfahren angreifen.
In der nächsten Folge werden weitere Angriffe auf TCP/IP beschrieben: Das Hijacking von Protokollen der Anwendungsschicht.
Wenn Sie Fragen oder Themenvorschläge haben, können Sie diese gerne an die angegebene E-Mail-Adresse senden oder im Security-Forum einbringen!
About Security – Übersicht zum aktuellen Thema "Angriffe auf TCP/IP"