Homographische Angriffe

Basics

Die Kommunikation zwischen dem Webserver und dem Client findet durch die Übertragung von Nachrichten durch HTTP oder HTTPS statt.

Unterschied zwischen HTTP und HTTPS

  • HTTP:

HTTP ist seit den 90er Jahren ein Kommunikationsstandard, ein zustandsloses Protokoll in der Anwendungsschicht. Dieses ist zuständig für den Transport von Rohdaten übers Internet und ermöglicht dem Client das interagieren mit Webservern.

  • HTTPS:

HTTPS besteht aus HTTP und SSL. Das bedeutet, daß die zu übertragenden Daten verschlüsselt werden. Dies passiert über Extended Valtidation Zertifikate X.509. Die Verschlüsselung erschwert Dritten das auslesen und manipulieren der übertragenen Daten.

Grundlegende Arten des Angriffs:

  • Man in the Middle (MitM)

Der Angreifer sitzt zwischen den beiden Kommunikationsparteien. Die beiden kommunizierenden denken, daß die Kommunikation direkt stattfindet. Dies ist jedoch ein Trugschluss, denn der Datenverkehr wird vom Angreifer in beiden Richtungen abgefangen und kann von diesem manipuliert weitergegeben werden. Der Datenverkehr wird daher unter Vorspielung einer übernommenen Identität über den Angreifer geleitet. Server sowie Client gehen weiterhin davon aus, daß die Kommunikation direkt statt findet!

  • homographischer Angriff

Von dieser Art des Angriffs spricht man, wenn die Ähnlichkeit von Zeichen, z. B. O und 0 oder I (großes i) und l (kleines L) im z. B. Domainnamen benutzt wird um den User bewußt auf eine Domain zu locken, die dieser als vertrauenswürdig eingestuft. Somit kann der Angreifer die Zugangsdaten zum z. B. Bankaccount, oder ähnlichem, phishen. Durch die Einführung der internationalisierten Domainnamen ist neben dem uns bekannten ASCII Zeichensatz eine Vielzahl von internationalen Zeichensätzen dazugekommen, die ähnliche Schriftzeichen zum ASCII Zeichensatz beinhalten. Dem Angreifer wurde somit der Weg eines Angriffs deutlich vereinfacht, da es in anderen Zeichensätzen eine Vielzahl von ähnlichen Zeichen gibt (z.B. kyrillisch in der modernen Schreibweise). Der Benutzer muß hier selbst vorsichtig sein und prüfen ob er sich auf einer vertrauenswürdigen Seite befindet oder nicht. Indikatoren sind oft gravierende grammatikalische Fehler in der Site oder ein anderes Design als das bekannte. Für Computerneulinge aber auch für Profis kann es sich sehr schwer darstellen, die Vertrauenswürdigkeit einer Site, die dem Original sehr nahe kommt, beurteilen zu können.

  • SSL-Strip:

Der SSL-Strip ist die kombination aus MitM und homographischem Angriff.  Unter einem SSL-Strip versteht man einen sehr einfachen Proxy. Dieser baut darauf auf, daß der User nicht direkt auf ein HTTPS zugreift sonder mittels eines Links einer Portalseite, wie z. B. auf seiner Bankseite mit link auf’s Homebanking. SSL-Strip modifiziert jegliche HTTPS links und macht diese zu unverschlüsselten HTTP Verbindungen. Mit dem Server kommuniziert der SSL-Strip weiterhin auf der HTTPS Ebene. Jedoch mit dem Client wird eine einfache und vor allem unverschlüsselte HTTP-Verbindung aufgebaut. Dem User wird durch eine Implementierung eines Favicons (geschlossenes Schloss, ähnlich dem Zeichen für eine erfolgreiche HTTPS Verbindung) vorgegaukelt, dass dieser sich auf einer vermeintlich sicheren Verbindung befindet. Dieses Zeichen befindet sich zwar auf einer falschen Position innerhalb der Adresszeile, was es dem unerfahrenen Nutzers sehr schwierig macht dies zu bemerken und richtig zu interpretieren. Diese Form des Angriffs setzt voraus, daß auf dem Rechner des Clients Malware installiert wurde um die Kommunikation im Internet “abhören” zu können.

Daher ist die Validierung des Usernamens mit Festlegung auf einen speziellen Zeichensatz unbedingt zu empfehlen.

Damit das genau nicht passiert und Ihre Kunden davor geschützt sind, sind wir da!
http://www.allbytes.de
AllBytes Software Solutions