Firewall und Tunneling 08.05.2006 (c) Christian Watzke 1 Inhalt Grundlagen Firewall-Systeme Netzwerk-Firewall Host-Firewall (Personal Firewall) Komponenten einer Firewall Paketfilter (Content-Filter) Proxy DMZ 08.05.2006 (c) Christian Watzke 2 Inhalt Tunnelklassen PPP VPN HTTP DNS, SMTP TCP/IP Gegenmaßnahmen Empfehlungen 08.05.2006 (c) Christian Watzke 3 Grundlagen Firewalls sitzen an Schnittstellen zwischen einzelnen Netzen kontrollieren den Datenverkehr zwischen den Teilbereichen verhindern ungewünschten Verkehr Häufiger Einsatz zwischen LANs und WANs Unterbinden von Datenverkehr von extern zum geschützten Bereich und umgekehrt 08.05.2006 (c) Christian Watzke 4 Grundlagen Hardware für Senden und Empfange der Datenpakete zuständig kein sicherndes Element häufige Netzelemente: Router, Gateways Software regelt den Datenverkehr (wer darf, wer nicht?) läuft oft auf spezieller Hardware 08.05.2006 (c) Christian Watzke 5 Netzwerk-Firewall Gerät mit mehreren Netzwerkschnittstellen darauf laufende Software dient hauptsächlich als Firewall In der Regel wird zwischen drei Netzwerkzonen unterschieden das externe Netz (WAN), nicht vertrauenswürdig => Untrusted demilitarisierte Zone (DMZ), vom externen Netz aus erreichbare Server interne Netz (LAN), vertrauenswürdig => Trustet 08.05.2006 (c) Christian Watzke 6 Host-Firewall Software arbeitet auf Hardware die auch für andere Zwecke verwendet wird ( PC mit Windows oder Linux ) „Personal Firewalls“ werden als Software-Firewall bezeichnet Software arbeitet auf den Schichten 2-7 des OSI-Referenzmodells 08.05.2006 (c) Christian Watzke 7 Personal Firewall lokale Installation auf dem zu schützenden Rechner Regelt nur Verkehr vom und zum Rechner Keine Überwachung zwischen verschiedenen Netzen Einfache Konfiguration Application Control Stealth-Modus Eher geringe Schutzwirkung Produkte: ZoneAlarm, Windows-Firewall (XP, SP 2) 08.05.2006 (c) Christian Watzke 8 Paketfilter Vergleich von Quell –und/oder Zieladresse der Pakete nimmt Filterungen das erstellten Regeln vor Ebene der Ports FTP – Port 21 sperren Ebene der IP-Adressen Paket von 87.92.100.100 nicht druchlassen Sichere Kommunikation über VPN – Virtual Private Network 08.05.2006 (c) Christian Watzke 9 Paketfilter NAT – Network Address Translation PAT – Port Address Translation Umsetzung von privaten IP – Adressen auf eine öffentliche z.B. DSL – Anschluss mit dynamischer IP Netzwerk nach Außen nicht sichtbar Produkte: iptables (Linux 2.4 + 2.6) 08.05.2006 (c) Christian Watzke 10 Paketfilter BASIC NAT lokales Netz (LAN) Quell-IP öffentliches Netz (WAN) Ziel-IP Router ===========> 192.168.0.3 170.0.0.1 NAT 192.168.0.4 170.0.0.1 192.168.0.2 170.0.0.1 08.05.2006 (c) Christian Watzke Quell-IP Ziel-IP 205.0.0.2 170.0.0.1 205.0.0.4 170.0.0.1 205.0.0.3 170.0.0.1 11 Paketfilter HIDING NAT bzw. Masquerading lokales Netz (LAN) öffentliches Netz (WAN) Quell-IP Ziel-IP Quell-IP Ziel-IP 192.168.0.2:1050 170.0.0.1:80 210.1.1.2:1050 170.0.0.1:80 192.168.0.3:6425 170.0.0.1:80 210.1.1.2:6425 170.0.0.1:80 192.168.0.4:8080 170.0.0.1:80 210.1.1.2:9000 170.0.0.1:80 192.168.0.5:8080 170.0.0.1:80 210.1.1.2:9010 170.0.0.1:80 08.05.2006 Router ===========> NAT (c) Christian Watzke 12 Paketfilter Kritik Keine saubere Einhaltung der Netzwerkschichten Netzwerkprotokolle der Schicht 4 funktionieren oft nur wenn sie explizit vom Paketfilter unterstützt werden Erschwert die Entwicklung neuer Protokolle besonders betroffen (FTP, VoIP) deshalb auch zügige Einführung von IPv6, da NAT aufgrund des ausreichend großen Adressraums unnötig wird 08.05.2006 (c) Christian Watzke 13 Content-Filter – Stateful Inspection Filter höherer Ebenen (nicht Meta Daten) Aufgaben Herausfiltern von ActiveX oder JavaScript in angeforderten HTML-Seiten Filtern/Kennzeichnen von Spam-Mails Informationen herausfiltern (vertrauliche Bilanzen) betrachtet wird der ganze Datenverkehr (z.B. HTML-Seite) Pakete werden zusammengesetzt Überprüfung Pakete werden wieder in ursprünglichen Datenstrom zerlegt 08.05.2006 (c) Christian Watzke 14 Proxy ist mehrfach in Firewall-Systemen einsetzbar für Clients und Server weitgehend unbemerkbar nimmt Protokollvalidierung und Anpassung vor Sperrung bestimmter Protokolltransaktionen Zugriffssteuerung Protokollierung der Zugriffe Unterstützt FTP, DNS, HTTP, SMTP, POP3 08.05.2006 (c) Christian Watzke 15 DMZ Demilitarized Zone Zone zwischen geschützten Netz und Internet Wird von zwei Firewallsystemen abgeschirmt Internetdienste wie z.B. E-Mail oder WWW werden durch die erste Firewall durchgelassen Die zweite Firewall besitzt engere Vorschriften 08.05.2006 (c) Christian Watzke 16 DMZ 08.05.2006 (c) Christian Watzke 17 Tunnelklassen einfachste Verbindung PPP „Point to Point Protocol“ 08.05.2006 (c) Christian Watzke 18 Tunnelklassen VPN – Virtual Private Network Sicherheitspolicy verbietet Zugriffe auf Port 258 und 7567 diese Verbindungen laufen durch den VPN-Tunnel anderer Datenverkehr geht über gewohnte Verbindungen einfache Skripte, IProute2, IPtables 08.05.2006 (c) Christian Watzke 19 Tunnelklassen HTTP – Tunnel GET http://hier.darf/was/rein.html HTTP/1.1 Host: auch.der.Rechnername.eignet.sich X-Data: Im Datenfeld ist es sehr einfach 08.05.2006 (c) Christian Watzke 20 Tunnelklassen DNS und SMTP nicht effektiv, da nur kleine Datenmengen übertragen werden können kommt durch eine Firewall durch, auch wenn diese extreme Sicherheitsrichtlinien aufweist auffällig wenn DNS – Traffic extrem zunimmt weniger auffällig ist SMTP (Bilder, Dokumente) SMPT – Verbindungen zu nur einem Server wird als Anomalie betrachtet 08.05.2006 (c) Christian Watzke 21 Tunnelklassen TCP - Sequenznummern Sequenznummer 800 Untere Schichten (TCP/IP) Sequenznummernfeld wird als Datenfeld verwendet. Normalerweise steigen die Sequenznummern an. Bei Sequenznummern die als Datenfeld verwendet werden, entstehen verschiedene Werte. 700 Sequenznummer im Normalen Verkehr 600 Sequenznummer als Datenfeld 500 400 300 200 100 0 0 50 100 150 200 250 300 350 Paketanzahl 08.05.2006 (c) Christian Watzke 22 Tunnelklassen Verzögerungszeit Fehlerrate (Prozent) 20 Untere Schichten (TCP/IP) Mit Fehlerkorrektur 18 Ohne Fehlerkorrektur 16 Die Pakete werden absichtlich verzögert. Keine Verzögerung bedeutet z.B. binär „0“, eine Verzögerung die „1“. Somit braucht der Empfänger diese nur noch auswerten, um an die Informationen zu kommen. 14 12 10 8 6 4 2 0 0,1 0,14 0,18 0,22 0,26 0,3 0,34 0,38 0,42 0,5 0,46 Verzögerungszeit (Sekunden) 08.05.2006 (c) Christian Watzke 23 Gegenmaßnahmen HTTPS - Verbindung (normal) Paketgröße 15000 Tunnel sind nur schwer aufzuspüren 14000 Verschlüsselung durch SSL 13000 Die Charakteristik des Verkehrs analysieren Vom Server zum Client Vom Client zum Server 12000 11000 10000 9000 8000 7000 6000 5000 4000 3000 2000 1000 0 0 20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 Paketanzahl 08.05.2006 (c) Christian Watzke 24 Gegenmaßnahmen HTTPS - Verbindung (Datenkanal) Paketgröße 15000 Client sendet mehr Daten Dauer der Verbindung Verbindung zu ein und demselben Host Netzwerk – Administrator sollte Tunnelvarianten selbst durchspielen und deren Spuren aufzeichnen 14000 Vom Server zum Client 13000 Vom Client zum Server 12000 11000 10000 9000 8000 7000 6000 5000 4000 3000 2000 1000 0 0 20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 Paketanzahl 08.05.2006 (c) Christian Watzke 25 Empfehlungen nicht benötigte Ports sperren Firewall mit Statefull-Filter verwenden lange Timeouts vermeiden <CONNECT> Befehl deaktivieren (HTTP) HTTP/HTTPS – Proxy mit Authentifizierung und Logging Standardkonformität der Protokolle überwachen Virenschutz Logdateien, Statistiken erstellen, verdächtige Vorfälle detailliert untersuchen 08.05.2006 (c) Christian Watzke 26 Quellen http://de.wikipedia.org http://www.heise.de http://www.linux-magazin.de 08.05.2006 (c) Christian Watzke 27