Überblick
Das Netzwerk besteht (vereinfacht) aus 7 Schichten (OSI-Modell):
- Bitübertragungsschicht: z.B. Netzwerkkabel
- Sicherungsschicht: Gewährleistung fehlerfreie Übertragung und Aufteilen des Bitdatenstromes in Blöcke so wie das das Hinzufügen von Prüfsummen.
- Vermittlungsschicht: Regelt die Kommunikation, da nicht immer eine direkte Übertragung möglich ist. Z.B. Routing und deren Tabellen so wie IP Adresse
- Transportschicht: Ports und Protokolle werden hier geregelt
- Sitzungsschicht: Synchronisation und Prozesskommunikation zwischen zweier Systemen.
- Darstellungsschicht: Datenkompression und Datenverschlüsselung so wie syntaktisch korrekter Datenaustausch zwischen unterschiedlichen Systemen.
- Anwendungsschicht: Webbrowser, Mailprogramme usw.
Daneben gibt es noch das 4 schichtige TCP/IP Modell:
- Link Layer: besteht aus Bitübertragungsschicht + Sicherungsschicht.
- Internet Layer gleich zu setzten mit der Vermittlungsschicht.
- Trasport Layer entspricht der Transportschicht.
- Applikation Layer fasst Sitzungsschicht, Darstellungsschicht und Anwendungsschicht zusammen.
Der Link Layer stellt die fest vergebene MAC (Media Access Control) Adresse bereit diese ist eine eindeutige Hardware-Gerätenummer bestehend aus 12 Hexadezimalzahlen. z.B. 0A:1B:2C:3D:4E:5F
Danach folg der Internet Layer, hier erfolgt die IP-Vergabe auf Grund der MAC Adresse entweder als IP4 (32Bit, also vier Blöcke von 0 bzw. 1 bis 255) oder im neuen Standart als IP6 (128Bit). Sprich der Router vergibt in seinem Netzwerk jeder MAC Adresse eine IP Adresse. Beispiel erhällt die MAC Adresse 0A:1B:2C:3D:4E:5F die IP4 Adresse: 111.222.123.123.
MAC Adressen sollten eigentlich unveränderbar in Hardware gegossen sein. Da diese für das richtige zuordnen von Datenpaketen im Netz zuständig. Ein gängiger Angriff ist hierbei das Fälschen der Hardwareadresse so, dass man vom Router beispielsweise Zugang zum Netzwerk bekommt.
MAC-Spoofing
Einfaches Beispiel von MAC-Spoofing: Manche Unternehmen bieten Nutzern über die Bereitstellung eines Accesspoints eine gewisse Zeit oder für eine gewisse Datenmenge kostenlos im Internet zu surfen. (Oft in Hotels oder Bars z.B. auch Mac Donalds erlaubt 1h, die Deutsche Bahn 100MB) Ist das Zeitvolumen oder Die Datenmengen aufgebraucht, so ist keine weitere, kostenfreie Nutzung möglich. Fälscht man nun seine Hardwareadresse mittels MAC-Spoofing, „denkt“ der Accesspoint (Router) es handelt sich um ein neues Gerät und erlaubt vergibt ein neues Kontingent.
In Hotels könnte man dies auch dazu verwenden, wenn ein anderer Gast einen bezahlten Zugang besitzt und man diesen verbotenerweise wegen Leistungserschleichung mitnutzt.
ARP-Spoofing
Beispiel (vereinfacht): Der Client1 hat die Hardwareadresse: 00:11:22:33:44:55 und bekommt die IP4 Adresse: 10.10.10.30 zugeteilt. Ein Angreifer (der im selben Netz ist) hat die Hardwareadresse AA:BB:CC:DD:EE:FF und bekommt die IP4 Adresse: 10.10.10.200 zugeteilt.
Nun möchte der Angreifer sehen, was der Client1 im Internet macht und fälscht mittels MAC-Spoofing seine Hardware Adresse auf 00:11:22:33:44:55.
Nun führt der Angreifer ein ARP-Spoof druch, wodurch er dem Opfer-System sich als neuen Router ausgibt um sich dadurch in die Mitte der Kommunikation zu rangieren. Somit erhält der Angreifer nun alle Anfragen vom Opfer, welche er eigentlich dem Router gibt und der Router überträgt alle Antworten dem Angreifer.
Vorgehen des Angreifers: Er verschafft sich mittels ARP-Anforderung (Anfrage an den Router, wer sich alles im selben Netz aufhält) eine Übersicht im Netzwerk, dadurch bekommt er IP-Adresse, MAC-Adresse, DNS-Name übermittelt. Dadurch macht er sein Opfer ausfindig. Nun ändert der Angreifer nur noch seine MAC Adresse auf die des Opfers und akzeptiert alle eingehenden Datenpakete. Zusätzlich führt dieser einen ARP-Spoof auf um sind wischen zwei System zu setzen.
Dynamic Host Configuration Protocol (DHCP)
Ein Rechner wird neu mit einem Netzwerk verbunden, darauf hin sendet diesr eine Broadcast-Nachricht und erbittet um eine IP Adresse. Der Router Schreibt die Hardware Adresse des neuen Rechner in seine Tabelle und vergibt diesem eine IP Adresse. Danach teilt er dem neuen Rechner die IP Adresse mit. Der neue Rechner empfängt diese und notiert sich die Adresse des Routers für weitere Anfragen.
Rogue DHCP
Hierbei gibt sich der Angreifer als ein neuer Router aus und teilet allen verbundenen Geräten im Netzwerk mit, ab jetzt alle Anfragen an ihn zu stellen. Hierbei wird die vorhandene DHCP Konfiguration der einzelnen Rechner überschrieben.
Domain Name System (DNS)
Da es für den Menschen leichter ist sich ein Name, statt einer IP zu merken, hat man das DNS System eingeführt, hierbei schlüsselt eine Gegenstelle die Domain, beispielsweise https://www.t-online.de is eine gültige IP des Servers auf, auf der die Webseite betrieben wird. Kurzer Einwurf und Aufschlüsselung der Adresse https://www.t-onlien.de:
https: steht für das Protokoll welches zur Kommunikation zwischen, beispielsweise Ihrem Browser, und dem Server verwendet werden soll.
Liegt ein gültiges TLS oder SSL Zertifikat zur Verschlüsselung bereit, erfolgt die Übertragung verschlüsselt. Ansonsten erfolgt ein „down-grade“ auf das http-Protokoll, also unverschlüsselt. HTTP steht für Hypertext Transfer Protocol und das S beim HTTPS-Protokoll für Secure. (gängiger Port für HTTP ist der Port 80, für HTTPS 443). Sind diese Ports auf einem Server aktiv, so besteht die hohe Wahrscheinlichkeit, dass der Server Webseiten ausgeliefert.
www: ist eine Subdomain von der Haupt-Domain t-onlien.de und ist ein Akronym welches für die englischsprachige Bezeichnung „World Wide Web“. Das www kommt noch aus den Anfangszeiten des Internets und kommt immer seltener zum Einsatz. Damals wurde über diesen Präfix zwischen den verschiedenen Nutzungsmöglichkeiten unterscheiden.
t-online.de: ist die eigentliche Domain, welche sich wiederum aus zwei Teilen zusammensetzt, der Haupt-Domain, Namensteil oder Domain-Name genannt, also dem „t-online“ und der Top-Level-Domain (TLD) de, welche mittels Punkt vom Namensteil getrennt wird. Der Aufbau ist bei jeder Domain immer gleich. Die Top-Level-Domain gibt an, um was für eine Domain es sich handelt und wo die Domain registriert wurde. Die ersten TDLs lauteten .net und .com.
Auflösung einer Domain
Der Benutzer gibt in seinen Browser die Web-Adresse „t-online.de“ ein, der Browser überprüft zuerst die Plausibilität der Eingabe, ob der Aufbau der eingegeben Domain syntaktisch passt, dann ergänzt der Browser das bevorzugte HTTPS Protokoll. Somit sollte dann in der Eingabezeile „https:/t-online.de“ stehen. Jetzt prüft das Betriebsystem die Liste der schon bekannten Domains nach, ob die IP-Adresse von „t-onlien.de“ schon bekannt ist, beispielsweise weil der Benutzer die Seite schon einmal zuvor besucht hat. Liegt die IP vor, erfolgt ein erster Aufruf zur IP (z.B.) 62.138.238.100 auf dem Port 443 (https). Der Server (2.138.238.100) leitet dann die Anfrage um auf die Sub-Domain „www“, so dass nun im Browser „https://www.t-online.de“ steht. Würde die Seite nicht mittels SSL oder TLS Verschlüsselung aufgeliefert werden, so findet entweder eine Serverseitige Umleitung auf das standardisierte HTTP Protokoll auf Port 80 statt, so dass in der Eingabezeile dann auf „http://t-online.de“ ergänzt wird und darauf dann eine weitere Weiterleitung auf die Sub-Domain „www“, so dass darauf die Eingabezeile in „http://www.t-online.de“ geändert wird. Oder der Server gibt an, dass unter dem Port 443 keine Verbindung stattfinden kann, der Browser gibt hier eine eigene Fehlerseite aus.
Ist die IP dem Betriebsystem noch nicht bekannt, so wird eine Anfrage an den Nächten Knoten (Router) weiter gegeben, kennt dieser die IP, teilt der Router dem Betriebsystem die IP der gewünschten Seite mit, hat der Router auch keine IP der gewünschten Seite, fragt dieser den nächsten Knoten (Router) im Netzwerk, usw. bis jemand die IP der Seite kennt.
Ports
Ein Port besteht aus einer 16Bit Dezimalzahl und steht für eine „Tür“ im System über die ein Dienst kommunizieren kann. Wie schon oben angesprochen laufen auf einem Server meist mehrere Dienste, beispielsweise der http-Dienst, der unverschlüsselte Webseiten auf Port 80 ausliefert, der https-Dienst der verschlüsselte Webseiten auf Port 443 ausliefert. Darüber hinaus gibt es noch unzählige Ports, beispielsweise der FTP Port 21, welcher für den Up- und Download von Daten verwendet wird, SSH Port 22, für die E-Mail Kommunikation wird oft SMTP auf Port 25, IMAP auf Port 143 oder IMAP über SSL auf 993 liegt verwendet.
Portscanning
Zum Nachsehen, welche Ports / Dienste ein Rechner (Server oder Client) bereit stellt, wird in der Regel ein Portscan auf die dazugehörige IP durchgeführt. Ich selbst verwende hierfür das Programm Nmap, da dieses sehr aufschlussreiche Informationen über das gescannte System liefert.
DNS Spoofing
Möchte nun ein Angreifer eine Verbindung (bestimmten Seitenaufruf) nicht zur vom Benutzer gewünschten Webseite sondern auf sein eigenes System erwirken, so betreibt dieser im Regelfall DNS Spoofing. Hiebei „schiebt“ der Angreifer dem Betriebsystem oder dem Router eine Falsche IP Adresse für eine gewünschte Web-Adresse unter. Vereinfacht dargestellt Teil er dem Betriebsystem mit, dass er der gewünschte Server sei. D.h. der Angreifer mit der IP 192.10.99.66 gibt sich als „t-online.de“ aus. Das Betriebsystem oder der Router nimmt dann die IP Adresse des Angreifers in seine Liste auf und verknüpft diese mit der Domain t-online.de.
Nun kann der Angreifer über eine gefälschte „t-online.de“-Webseite die Eingaben, beispielsweise E-Mail Logindaten des Opfers abfangen.
Eine gefälschte Webseite kann der Angreifer sehr einfach erstellen, in dem er die originale Webseite kopiert und die Eingabefelder dann mit seiner eigenen Datenbank verknüpft.
Gegenmassnahmen
Verschlüsselte Übertragung HTTPS
Dass Netzwerke immer abhörbar sind, steht völlig ausser Frage, darum ist es wichtig jede Art der Prävention zum Datenkau zu treffen. Zu erst ist es wichtig, dass Sie wenn immer es geht SSL oder TLS verschlüsselte HTTPS Seiten vorziehen. Hierbei wir die Kommunikation zwischen Ihrem Browser und dem Server (genau gesagt dem Webdienst und Seitenbetreiber) verschlüsselt. Zwar kann beim Abfangen Ihrer Datenpakete die IP und somit die DNS aufgelöst werde, sprich der Angreifer kann immer sehen auf welcher Seite sie unterwegs sind, jedoch kann er den genauen Datenverkehr nicht sehen. Beispielsweisse kann er sehen auf welcher Seite Sie sind, aber Ihre Eingabe und die Rückgabe der Seite kann er nicht mitlesen.
Wireshark
Angreifer benutzen zum mitschneiden der Datenverbindung vorzugsweise das Programm Wireshark. Diese Programm ermöglicht das mitschreiben von Datenpaketen verschiedener Protokolle. Jeder unverschlüsselte Übermittlung gibt hierbei aufschlussreiche Informationen über Sie preis.
Virtual Private Network oder auch VPN
Die beste Maßnahme die man treffen kann, wenn man sich in einem „unsicheren“ Netzwerk befindet, ist wenn man dieses „verlässt“ und teil eines sicheren Netzwerkes wird. Dies kann man am leichtest, wenn man seinen kompletten Datenverkehr (wenn man nicht mit dem lokalen unsicheren Netzwerk kommunizieren muss), über eine VPN Verbindung in ein sicheres Netzwerk leitet. Man kann sich das so vorstellen, dass man über einen gut konfiguriertes VPN aus dem unsicheren Netzwerk in ein bekanntes sicheres, mit dem man sich verbunden hat überwechselt. Jede Datenverbindung wird dann direkt mittels „Tunnel“ verschlüsselt in das sichere Netzwerk übertragen und von dort geroutet.
Eine Sichere Verbindung zieht sich durch mehrere Ebenen des 4 schichtigen TCP/IP Modells. So ist eine SSH Verbindung auf der 4. Schicht Applikation Ebene nur darum sicher, weil die Verbindung auf der 3. Schicht mittels TLS / SSL stattfindet. Auf der 2. Schicht sollte die Sicherheit durch IPsec sichergestellt sein, damit kein IP-Spoofing stattfinden kann. Arbeiten alle Sicherheistsmasnahmen zusammen und jeder Layer bietet auf seiner Schicht die größt mögliche Sicherheit, so sprechen wir von einer sicheren Verbindung.
Nachteil ist aber, dass nur der Applikations Layer gesichert ist und man natürlich physisch immer ein Teil des Unsicheren Netzwerkes bleibt. Auch bleib, je nach Konfiguration ein externes Gerät welches über VPN verbunden ist ein externes Gerät und gelangt nicht in das eigentliche innere Netzwerk (Aufgrund der Netzwerkeadresse und deren Bereich aka. Subnetz).
Von SSL zu TLS
SSL ist der Vorgänger von TLS, geschichtliche Daten finden Sie auf Wikipedia.
TLS heute das am häufigsten verwendet Sicherungsprotokol zum Aufbau einer kryptographisch sicheren Verbindung (Vertraulichkeit + Integrität) beispielsweise Einer HTTP-Verbindung über TLS, also HTTP+TLS = HTTPS-Verbindung zur sicheren Kommunikation oder für den sicheren E-Mail-Abruf mittels IMAP + TLS = IMAPS.
Signierte DNS
DNS over TLS (DoT)
Hierbei wird die DNS beispielsweise sicher über TLS / SSL übertragen und zudem die Herkunft signiert. Dadurch lässt sich eine falsch untergeschobene Domain ausschliessen, wenn die Signatur korrekt ist.