Ein Vortrag von Oliver Hardt und Michael Tümmel Firewalls Ein Vortrag von Oliver Hardt und Michael Tümmel
Übersicht Einführung Klassische Elemente von FWs Hochgeschwindigkeits- FWs Desktop FWs
Einführung Grundlagen des IP Protokolls IP Pakete mit variabler Länge TCP, UDP, ICMP Header mit Ursprungs-, Ziel- Adresse und Port
Was ist eine Firewall ? Komponente oder Menge von Komponenten (Hard- und/oder Software), Regeln und Protokollen, welche den Zugriff zwischen geschütztem Netzwerk und dem Internet (oder anderen Netzwerken) kontrollieren und regeln Dabei gilt es nicht nur das zu sichernde Netzwerk zu schützen, sondern auch die Firewall selbst
Wovor gilt es zu schützen ? Ausspionierenvon Daten auf Systemen durch Einbruch in diese Systeme Ausspionieren bei der Übertragung zwischen Systemen (Mitlesen) Manipulation von Verbindungen (Übernehmen einer Verbindung mit Hilfe gefälschter Adressen) Verhindern der normalen Funktion eines Rechners (Denial of Service Attack) Beispiel: Syn Flooding
Bereitgestellte Schutzmaßnahmen Blockieren unerwünschten Verkehrs Weiterleitung eingehenden Verkehrs an vertrauens-würdigere, interne Systeme Verbergen verwundbarer Systeme, welche nicht auf einfache Art gesichert werden können, vor dem Internet Protokollierung des Verkehrs von und zum privaten Netzwerk Verstecken von Informationen wie Systemnamen, Netzwerktopologie, Netzwerk-Gerätetypen und interne Usernamen vor dem Internet Können eine robustere Authentifizierung als die meisten Standardprogramme anbieten
Firewalltypen Packet Filtering Firewalls Circuit Level Gateways Proxies Application Level Gateways Statefull Inspection Firewalls Die wenigsten professionellen Firewalls gehören nur einer einzige Kategorie an Meistens werden verschiedene Typen kombiniert
Packet Filtering Firewalls Arbeiten auf dem Netzwerk-Layer des OSI-Modells oder auf dem IP-Layer des TCP/IP Modells Sind üblicherweise Teil eines Routers Router erhält Pakete von einem Netzwerk und leitet sie an ein anderes Netzwerk weiter Jedes Paket wird mit einer Anzahl Regeln verglichen, bevor es weitergeleitet wird Abhängig vom TCP- und IP-Header der Pakete und von den Regeln kann die Firewall das Paket ablehnen, es weiterleiten oder eine Nachricht zum Ursprung zurücksenden.
Screening Regeln Bestehend aus 2 Bestandteilen Selektionskriterien Politik
Selektionskriterien IP-Addressen im IP Header Portnummern im TCP/UDP Header Protokollnummern je nach benutztem Service (Datagrammtyp) (TCP/UDP/…) unterschiedlich SYN-/ACK-Flag zur Richtungsfeststellung (TCP) nach diesen Kriterien wird das Paket dann jeweils gefiltert
Politik Zwei Arten von Regeln Gebotsregeln (Allow) Alles, was nicht explizit erlaubt ist, ist verboten Verbotsregeln (Deny) Alles was nicht explizit verboten ist, ist erlaubt Die erste Strategie ist der zweiten vorzuziehen
Ein Beispiel Nr Typ Quell-adr. Ziel-adr. Quell-port Ziel-port Aktion 1 TCP * 123.4.5.6 >1023 23 (telnet) Allow 2 123.4.5.7 80 (WWW) 3 129.6.48.254 123.4.5.8 22 (SSH) 6 Deny
Stärken von Packet Filtern Paketfilterung ist eine kostengünstige Technologie Paketfilter ist heute auf fast allen Router-Produkten standardmäßig implementiert Oft kein zusätzlicher Administrations- und Konfigurationsaufwand notwendig Paketfilterregeln können dem Benutzer kommuniziert werden Paketfiltertechnologie unterliegt keinen US-Exportbeschränkungen wie z.B. Kryptographie-Software Sie sind leicht erweiterbar, wenn neue Dienste oder Protokolle transportiert werden müssen (hinzufügen neuer Regeln reicht im Normalfall)
Schwächen von Packet Filtern Paketfilterregeln für den Durchschnittsbenutzer oft recht verwirrend Bei großen Netzen können Filterregeln sehr umfangreich und schwer nachvollziehbar werden Protokollmeldungen enthalten oft keine Informationen über Inhalt der übertragenen und verworfenen Pakete Einige Protokolle sind für Packet Filter ungeeignet, da variable Portnummern verwendet werden Unzureichende Integrität der Portnummern und IP-Adressen, da diese leicht gefälscht werden können (IP-Spoofing) Keine Benutzerauthentifizierung Keine Kontrolle der Inhalte der Datagramme
Proxies / Application Gateways Packet Filter werten die Informationen der ISO/OSI-Schichten 3 und 4 aus Proxies dagegen die der Anwendungsschicht (5-7) i.d.R. bilden mehrere Proxy-Prozesse einen Application Gateway Bestehen aus Circuit-Level-Proxies und/oder Application-Level-Proxies
Circuit Level Gateways Arbeiten auf dem Session-Layer des OSI-Modells oder auf dem TCP-Layer des TCP/IP-Modells Überwachen das TCP-Handshaking zwischen Paketen von vertrauenswürdigen Servern oder Clients und nicht vertrauenswürdigen Hosts und umgekehrt, um herauszufinden, ob eine Session legitim ist oder nicht Um Pakete auf diesem Weg zu filtern, benutzen Circuit Level Gateways die Daten, welche im Header des TCP Session-Layer Protokolls vorhanden sind Wurde das Handshaking als legitim erkannt baut das C.-L.-Gateway die Verbindung auf und die Pakete werden nur noch hin und her transportiert ohne weiteres Filtern
Circuit Level Gateways (2) Wurde die Session vollendet wird sie aus der Tabelle gelöscht Der Client wird vollständig hinter dem Gateway verborgen (Verbergen der Netztopologie) C.-L.-Proxies sind unabhängig vom Protokoll einsetzbar und i.d.R. für den Client transparent Die notwendigen Informationen werden vom Client Prozess erzeugt und dem Proxy zur Verfügung gestellt
Application Level Gateways Arbeiten auf dem Application Layer Für jeden Dienst ist ein spezifisches Proxyprogramm auf dem Proxy-Server erforderlich (telnet, FTP, HTTP) Nutzdatenanalyse ist möglich Daten können analysiert und z.B. nach bestimmten Schlüsselwörtern durchsucht werden (z.B. E-Mail, HTML-Seite) Möglichkeit einiger HTTP-Proxies, alle Zeilen innerhalb einer Seite, die zu Java-Applets gehören, zu löschen Möglichkeit der Einschränkung von Dienstmerkmalen Cache Funktionalität für Webseiten
Proxies / Application Gateways Bieten ein hohes Maß an Sicherheit Sehr umfangreiche Protokollierung ist möglich Authentisierung des Benutzers kann vorgenommen werden (im Gegensatz zu Packet Filtering) Granularität auf Dienstebene Dienste können benutzerabhängig erlaubt werden Verbindung zwischen dem zu schützenden Netz und dem Internet wird durch Application Gateway völlig entkoppelt Höherer Rechenaufwand nötig Wenig skalierbar
Statefull Inspection Firewalls Kombinieren Aspekte der ersten drei Firewallgruppen Filtern Pakete auf dem Netzwerk-Layer Erkennen ob Session Pakete legitim sind Zustandsabhängige Paketfilterung Bieten hohes Maß an Sicherheit, gute Leistung und Transparenz Sind teuer und sehr komplex Anfällig für Sicherheitslöcher/falsche Konfiguration Keine physische Netztrennung
Firewallarchitekturen Allgemeine Grundsätze Position der eingesetzten Geräte sollte möglichst weit außen sein Bei stark zu schützenden Netzen sollten Geräte redundant eingesetzt werden Unterschiedliche Hersteller Unterschiedliche Filterformate Anzahl und Art der Firewall-komponenten sollte dem Sicherheits-konzept angepaßt sein Nicht unbedingt der Grundsatz je mehr Komponenten desto höher die Sicherheit
Bastion Host Erster oder einziger Rechner der aus dem Internet erreichbar ist Höchste Hostsicherheit ist erforderlich Softwareausstattung sollte so einfach wie möglich gehalten werden (Minimalsystem/Least Privilege) Erbringen und leiten Internetdienste weiter Benutzeraccounts sollten nicht eingerichtet werden Darf nicht die Funktionalität eines Routers erfüllen Übernimmt oftmals die Protokollfunktionen (Logging/Auditing)
Screening Router Vorteile: Nachteile: Einfache Installation Geringer Administrationsaufwand Kostengünstig Nachteile: Nur geringer Schutz Gelingt es dem Angreifer die Packet- Screen zu überwinden liegt gesamtes Netz offen Begrenzte Protokollmöglichkeiten Gefahr durch IP-Spoofing
Dual Homed Host / Gateway FW Vorteile: Umfangreiche Zugriffskontrolle Angriffe können gut nachvollzogen werden Nur erlaubte Dienste können in Anspruch genommen werden Nachteile: Hoher Installationsaufwand begrenzte Erweiterungsmöglichkeiten Bastions müssen sehr gut gegen Angriffe geschützt werden
Screened Host Vorteile: Nachteile: Verbindet Vorteile der ersten beiden Architekturen Bastion durch Screening Router geschützt mehrere Bastion Rechner sind möglich Nachteile: Höhere Kosten innerer Netzwerkverkehr kann nach erfolgreichem Angriff der Bastion mitgehört werden (sniffing) Router als Single Point of Failure
Screened Subnet Screened Subnet = Perimeter Network Grenznetz DMZ Vorteile: Gute Skalierbarkeit Es müssen zwei Packet Filter überwunden werden (am besten unterschiedlicher Bauart) Nachteile: Höhere Kosten Hoher Administrationsaufwand
Datennetz am Campus Stellingen
Sicherheitspolitik des Fachbereichs Kein Verbindungsaufbau aus dem externen Netz erlaubt Schutz vor unsicheren Protokollen/Diensten Ausnahmen (SSH-, WWW-, SMTP-, … Server) Aus dem internen Netz soll alles möglich sein Keine Einschränkungen bei der Nutzung des Internets Ausnahmen (Versand von E-Mails)
Cisco Secure PIX Firewall Security Level pro Interface Alles verboten, nur Ausnahmen erlaubt Ausnahmen durch Access Listen Statefull Inspection Verbindungsorientiert (TCP/UDP) Fixup-Funktionalität PIX hört Datenkommunikation z.B. der ftp-Kontrollverbindung mit (intern => extern) Öffnung der Datenverbindung vom ftp-Server zum Client (aktives FTP)
Die modernen Firewalls von heute Technologisch ausgereift Deshalb Konzentration auf Zusatzfunktionalitäten Remote Management Tools in verteilten Unternehmen VPN-Funktionalitäten (Vortrag am 16.01.2003) Virenschutz URL-Filter Statefull Inspection oder Application Proxies
Hochgeschwindigkeitsfirewalls
Hochgeschwindigkeitsfirewalls Hochgeschwindigkeitsverbindungen ATM, Glasfaser, Gigabit – Ethernet Hoher Datendurchsatz Zusätzliche Probleme : Pakete liegen nicht immer im IP Format vor Paketscreen wird zum Flaschenhals Nicht immer liegt physische Trennung von Netzen vor
Hochgeschwindigkeitsfirewalls
Hochgeschwindigkeitsfirewalls
Hochgeschwindigkeitsfirewalls Parallele Verarbeitung Verbindungsparallel Für jede Verbindung einen Prozess / Prozessor Evtl. schlechtes Verhalten bei nur wenigen Verbindungen Paketparallel Verteilen der einzelnen Pakete auf Prozessoren Nutzung der Protokoll Eigenschaften
Parallele Verarbeitung Skalierbarkeit Overhead ? Aufwand Implementation Konfiguration Zuverlässigkeit Einschränkungen ?
Parallele Verarbeitung Mittel der Wahl : Parallele Paketverarbeitung
Paketparallele Verarbeitung Reihenfolge der IP Pakete egal feine Granulierung möglich Grundsätzlich sind keine Kontextinformationen nötig Sehr gut skalierbar, ausfallssicher Leicht konfigurierbar
Lastverteilung Verteilung Zentraler Verteiler Dezentraler Verteiler Überwacht Prozessoren Sorgt für gleichmäßige Auslastung Dezentraler Verteiler Nur „broadcast“ auf die Prozessoren Weniger fehleranfällig Dem zentralen Verteiler vorzuziehen
Verteilung der Pakete Neues Problem : Auswahlverfahren der Prozessoren Muss möglichst schnell erfolgen Zuordnung muss eindeutig und gleichmäßig sein Möglichst unabhängig von der Anzahl der Prozessoren
Parallelverarbeitung Erstellen eines Hashwertes über IP Adresse IP Identifikation (IP Seq. No.) Header Checksum Frame Checksum Kombinationen
Nutzung dieses Hashwertes in den einzelnen Prozessoren Bei n Prozessoren und Prozessoren von 0 bis (n – 1) Bei wiederholtem Senden möglichst neuer Hashwert -> neuer Prozessor
Realisierung
Realisierung Hubs sind ungünstig Alternative : nur „broadcast“ Kein „Full Duplex“ Alternative : Nutzung von Switches in Verbindung mit Multicast Adressen Zusätzliche Konfiguration von Switches und Paketscreens
Performance Performance : OC-3 ohne jeden Filter : ca. 155 mbit/s Ab ca. 10 Filtern nur noch 60 % der Leistung Ab ca. 100 Filtern nur noch ca. 30 % der Leistung
Parallele Proxyserver Für einzelne Protokolle getrennt Mehrere Instanzen pro Prozessor Problematisch bei z.B. FTP Verbindungen Weiteres Problem : Verhältnismäßig hohe Dauer für Verbindungsaufbau
Verteilen der Verbindungen Statisches Verteilen der Verbindungen Dynamisches Verteilen Round Robin DNS „Meta“ Proxy Problem : Zentral vs. Dezentral
Desktop Firewalls Für Privatnutzer. Z.B. für Windows Systeme. Im Prinzip ein Paketscreen / Paketfilter. Ermöglicht den Internetzugang für einzelne Programme zu beschränken.
Hochgeschwindigkeitsfirewalls Kann Ping- / Traceroute – Antworten unterbinden. Kontrolle über einzelne Ports, Ursprungsadressen, ICMP Typen, etc.
Desktop Firewalls Beispiel Applikationen : McAfee Desktop Firewall Norton / Symantec Personal Firewall Tiny Personal Firewall WinXP (nur eingehende Verb. !) Zone Alarm
Desktop Firewalls Nachteile : Trügerische Sicherheit Applikationen können sich „tarnen“ Z.B. eingebetteter Internet Explorer Firewall kann „ausgeschaltet“ werden Oft schlechtes Logging / schlechte Reports
Desktop Firewalls Beispiel : Tiny Personal Firewall Für jede Applikation einzeln konfigurierbar MD5 Hash über EXE für Sicherheit Komplette Netzblöcke ein- / ausschliessbar