Andere Angriffswege

Alternativ hat der Angreifer die Möglichkeit, die eigene IP-Adresse zu fälschen – dieser Weg bringt jedoch einige Einschränkungen mit sich. Zum einen muss die Firewall die gewünschte IP-Adresse bereits freigeschaltet haben, zum anderen muss diese dem Angreifer bekannt sein. Mit Netzwerksniffern wie Wireshark stellt es jedoch kein Problem dar, die MAC- und IP-Adressen von Peers festzustellen, die durch besonders hohen Datenverkehr auffallen.

Die Pakete lediglich mit einer gefälschter Absenderadresse durch das Netzwerk zu schicken, würde sie zwar durch die Firewall hinaus bringen, die Antwortpakete aber würden an der falschen Stelle ankommen – nämlich an dem Host, dem die Adresse eigentlich gehört. Damit das unter falscher Flagge segelnde System sie dennoch empfangen kann, gilt es, ihm die IP- und MAC-Adresse des abgehörten Hosts zuzuweisen. Das erledigen die Aufrufe in den ersten beiden Zeilen von Listing 2. Danach gilt es das Netzwerkdevice mit den Befehlen der dritten und vierten Zeile neu zu starten. Der Client erscheint jetzt auf Netzwerk-Schicht identisch zu dem anderen, tatsächlich authentifizierten Host.

Listing 2
# ifconfig wlan0 hw ether ersniffte_MAC
# ifconfig wlan0 ersniffte_IP
# ifconfig wlan0 down
# ifconfig wlan0 up

Allerdings verursacht das TCP-Protokoll hier Probleme: Es arbeitet verbindungsbasiert, was grob vereinfacht bedeutet, das sich zwei Peers vor der Kommunikation zunächst kennenlernen, bevor sie Daten austauschen. Dazu gehört auch, dass das System unbekannte TCP-Pakete mit einem Fehler beantwortet. Befinden sich zwei Clients mit der selben IP-Adresse im Netzwerk, erhält jeder der beiden ständig unerwartete TCP-Pakete, die auf vom jeweils anderen Client etablierte Verbindungen antworten. Die Fehlermeldungen, die das Betriebssystem daraufhin aussendet, veranlassen die Gegenseite, die Verbindung zu beenden.

Um das zu vermeiden, muss der Angreifer das Betriebssystem zum einen daran hindern, TCP-Pakete auszusenden und zu beantworten. Zum anderen muss er seine eigene Kommunikation auf das verbindungslos arbeitende UDP beschränken: Im Gegensatz zu TCP ignoriert es unbekannte Pakete. Auf UDP beschränkt, sieht das Internet jedoch recht leer aus, da ein Großteil der Protokolle auf TCP basieren. Die Lösung dieses Problems stellt ein UDP-Tunnel dar, der die gesamte Kommunikation in UDP-Paketen verpackt und über den Server des Angreifers leitet.

UDP-Tunnel

Die einfachste Methode, einen UDP-Tunnel zu realisieren, bietet OpenVPN [4]. Normalerweise dient es dazu, verschlüsselte Verbindungen von A nach B über ein unsicheres Netz aufzubauen. Anleitungen über das Einrichten von OpenVPN finden Sie unter anderem im LinuxUser-Artikel "Durchgetunnelt" aus Ausgabe 02/2009 [5].

Zum Aufbau einer Verbindung gilt es vorab mit openvpn --genkey --secret /etc/openvpn/static.key einen Schlüssel zu erzeugen, den man sowohl auf dem Server als auch dem Client speichern. Anschließend genügt die Eingabe von

# openvpn --secret /etc/openvpn/openvpn.sec --dev tun1 --ifconfig 192.168.2.1 192.168.2.2 --daemon --port 2342

um den OpenVPN-UDP-Tunnel auf dem Server zu starten. Im kostenpflichtigen WLAN startet der Angreifer auf dem mit veränderter MAC- und IP-Adresse operierenden Client den Tunnelaufbau mit dem Aufruf

# openvpn --secret /etc/openvpn/openvpn.sec --dev tun1 --ifconfig 192.168.2.2 192.168.2.1 --remote dns.example.tld --daemon --port 2342

Die im Beispiel genannte Domain dns.example.tld steht als Platzhalter für die des VPN-Servers. Zwar erreicht der Angreifer nun den Server – die TCP-Kommunikation des legalen Clients wird jedoch durch das "doppelte" System im Netz massiv gestört. Mit der Firewall unterbindet der Angreifer deshalb sämtliche Kommunikation seitens seines Clients mit der Außenwelt (Listing 3). Einzige Ausnahme: der relativ ungefährliche UDP-Port 2342, den der Tunnel benutzt.

Listing 3
# iptables -A OUTPUT -o wlan0 -p udp --dport 2342 -j ACCEPT
# iptables -A INPUT -i wlan0 -p udp --dport 2342 -j ACCEPT
# iptables -A OUTPUT -o wlan0 -j DROP
# iptables -A INPUT -i wlan0 -j DROP

Danach gilt es, wie im Beispiel zuvor, die Routen anzupassen, damit das System die UDP-Pakete durch den Tunnelserver routet. Ein kleines Problem in diesem Setup stellt der nun nicht mehr erreichbare DNS-Server dar. Um es zu lösen, trägt der Angreifer in die Datei /etc/resolve.conf einfach einen anderen, im Internet verfügbaren DNS-Server ein, etwa den von OpenDNS (208.67.222.222) [6].

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Verschlüsselte Tunnel mit OpenVPN einrichten
    Viele WLAN-Geräte verschlüsseln die Verbindungen nur unzureichend. Mit OpenVPN und wenigen Befehlen richten Sie ihr eigenes verschlüsseltes Netzwerk ein und können sich sogar aus dem Internet zu Hause einloggen.
  • Sichere WLAN-Vernetzung mit verschlüsseltem OpenVPN-Tunnel
    Drahtlose Netzwerke sind zwar praktisch, aber auch gefährlich: Die eingebaute WEP-Verschlüsselung ist für einen Angreifer kein ernstes Hindernis, er kann Daten abhören, manipulieren und Pakete einschmuggeln. Abhilfe schafft ein verschlüsselter Tunnel: OpenVPN schützt die Daten.
  • Durchgetunnelt
    Der Einsatz eines virtuellen privaten Netzwerks erlaubt die sichere Kommunikation über unsichere Netzwerke. Mit OpenVPN steht dafür ein einfach zu konfigurierendes, mächtiges Werkzeug bereit.
  • Firewall-Distribution IPFire
    Als markanteste Änderung an Version 2.11 von IPFire integrierten die Entwickler eine stark erweiterte VPN-Funktionalität in die Firewall-Distribution. Der Artikel zeigt, wie Sie diese nutzen.
  • Sichere WLAN-Vernetzung mit verschlüsseltem OpenVPN-Tunnel
    Drahtlose Netze sind praktisch und gefährlich zugleich: Die eingebaute WEP-Verschlüsselung hält keinem Angreifer stand. Abhilfe schaffen zusätzliche Sicherheitsmaßnahmen bis hin zum verschlüsselten OpenVPN-Tunnel.
Kommentare

Infos zur Publikation

LU 11/2017: Server für Daheim

Digitale Ausgabe: Preis € 8,50
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

Lieber Linux oder Windows- Betriebssystem?
Sina Kaul, 13.10.2017 16:17, 3 Antworten
Hallo, bis jetzt hatte ich immer nur mit
IT-Kurse
Alice Trader, 26.09.2017 11:35, 2 Antworten
Hallo liebe Community, ich brauche Hilfe und bin sehr verzweifelt. Ih bin noch sehr neu in eure...
Backup mit KUP unter Suse 42.3
Horst Schwarz, 24.09.2017 13:16, 3 Antworten
Ich möchte auch wieder unter Suse 42.3 mit Kup meine Backup durchführen. Eine Installationsmöglic...
kein foto, etc. upload möglich, wo liegt mein fehler?
kerstin brums, 17.09.2017 22:08, 5 Antworten
moin, zum erstellen einer einfachen wordpress website kann ich keine fotos uploaden. vom rechne...
Arch Linux Netzwerkkonfigurationen
Franziska Schley, 15.09.2017 18:04, 0 Antworten
Moin liebe Linux community, ich habe momentan Probleme mit der Einstellung des Lan/Wlan in Arc...