Firewall

Werbung
Client/Server-Systeme
Prof. Dr.-Ing. Wilhelm G. Spruth
WS 2005/2006
Teil 6
Sicherheitsprotokolle
css 0633 ww6
wgs 01-98
Sicherheitsprotokolle
voll symmetrisch
Kerberos
unternehmensintern
Schicht 6
asymmetrische Authentifizierung
SSL
PGP
SSH
Web, SHTML
Mail
Telnet, rlogin, FTP
OSI Schicht 2,3
IPSec
PPTP
L2TP
cs 0574 ww6
Aussenstellen von Unternehmen
wgs 12-03
SSL, PGP, S-Mime
Sender
Empfänger
___________________________________________________
1.
Nachricht
2.
Session Key
3
Nachricht
4.
Public Key
5
Nachricht
1. Sender erstellt Nachricht
2. Sender generiert Session Key
(symmetrisch, DES, IDEA, RC4, AES Algorithmus)
3. Sender holt Public Key von Empfänger
(asymetrisch, RSA Algorithmus)
4. Sender verschlüsselt Session Key mit dem Public Key
5. Nachricht wird mit dem Session Key verschlüsselt
cs 0651 ww6
wgs 12-03
Secure Socket Layer - SSL
Schicht
5-7
Anwendungen
Socket Schnittst.
4
3
2
1
Intranet
Internet
An Stelle der regulären Socket Schnittstelle wird die sehr
ähnliche SSL Schnittstelle eingesetzt. SSL bewirkt
zuätzlich zur normalen Socket Funktionalität eine
Verschlüssselung beim Senden und eine Entschlüsselung
beim Empfangen von Nachrichten.
css06117 ww6
wgs 01-98
SSL Protocol: Handshaking für eine SSL Sitzung
Das SSL Protokoll liefert Verbindungssicherheit über unsichere
Kommunikationswege. Es hat die folgenden Merkmale:
• Datenverschlüsselung. Die Verbindung kann durch Verschlüsseln
der zwischen Client und Server auszutauschenden Daten sicher
gemacht werden. Dies ermöglicht den sicheren Transfer von
privater Information wie Kreditkartennummern.
• Kommunikationsintegrität. Die Verbindung ist zuverlässig. Der
Nachrichtentransport schließt einen Nachrichtenintegritätsprüfung ein, die auf einer sicheren Hashfunktion
beruht.
• Authentifizierung. Der Client kann den Server authentifizieren,
und ein authentifizierter Server kann den Clienten
authentifizieren. Damit wird sichergestellt, daß Information nur
zwischen den gewünschten Partnern ausgetauscht wird. Der
Authentifizierungmechanismus basiert auf dem Austausch von
digitalen Zertifikaten (X.509v3 Zertifikate).
cs 0647 ww6
wgs 11-00
SSL Protokoll
Generisches Protokoll, ursprünglich von Netscape für den
Browser entwickelt. Von den meisten Web Servern
unterstützt.
Stream Protokoll:
Handshake eröffnet Verbindung
verschlüsselter Datenaustausch (opaque Data Mode)
Handshake schließt Verbindung
Beim Start einer Verbindung tauschen Klient und Server
„Hello“ Nachrichten aus. Einigung auf:
Version des SSL Protokolls
Definition der Verschlüsselungsalgorithmen
Austausch der Schlüssel
Datenkompressionsparameter
Daten werden in verschlüsselten Blöcken ausgetauscht;
jeder Block wird durch eine verschlüsselte Prüfsumme
verifiziert.
4 Schlüssel, je 1 Paar für Klient- Server und Server-Klient
Kommunikation.
Unterschiedliche Verschlüsselungsalgorithmen können
eingesetzt werden, darunter DES und RC4.
Klient und Server können X.509 Certificate anfordern.
Vorgesehen ist die SSL integration in Winsock 2.0.
Transparent für existierende Winsock Anwendungen.
cs0536 ww6
wgs 09-98
Web Server Application Code
Secure Socket Layer
Public key
Cryptographic
functions
for user
authentification
Symmetric
encryption
to keep data
confidential
Hashing
algorithms
to ensure
message
integrity
reliable communication protocol
e.g. TCP/IP
Secure Socket Layer Stack und Componenten
cs 0634 x ww6
wgs 11-99
Verbreitung von z/OS
• 95% der weltweit größten 2000 Unternehmen setzen
zSeries und S/390 Rechner mit den z/OS und OS/390
Betriebssystemen als ihren zentralen Server ein.
• Zwischen 65 und 70 % aller geschäftsrelevanten Daten
werden im EBCDIC Format auf zSeries und S/390
Rechnern gespeichert.
• Ältere Modelle verfügten über einen kryptografischen
Coprozessor. Bei den neueren z9 und z990 Modellen ist
die kryptografische Coprozessor Funktion in die CPU
integriert. Ca. 100 kryptografische Maschinenbefehle.
Es 0257 ww6
wgs 07-03
Leistungsabfall beim Einsatz von SSL
Krypto-Koprozessoren
es 1312 ww6
wgs 11-00
Intel 80386
Micro
Prozessor
Intel 80387
Gleitkomma
Koprozessor
Ohne 80387 verursacht die Ausführung eines GleitkommaMaschinenbefehls eine Programmunterbrechung. Die
Unterbrechungsroutine führt die Gleitkommaoperation aus.
Intel 80486 Micro-Prozessor
traditionelle
CPU Funktion
Gleitkomma
Koprozessor
Beim Intel 808486 und Pentium/AMD ist die Gleitkommafunktion in
das Micro-Prozessor Chip integriert
IBM z990 Micro-Prozessor
traditionelle
CPU Funktion
Krypto
Koprozessor
Bei den IBM z990 und 890 Micro-Prozessoren ist die KryptoKoprozessor Funktion in das Micro-Prozessor Chip integriert.
Ca. 150 zusätzliche Maschinenbefehle.
PGP - Pretty Good Privacy
Phil Zimmermann, 1991
PGP ist ein über das Internet frei verfügbares Software Paket
mit den folgenden Funktionen:
Verschlüsselung von Dateien und von Electronic Mail
Authentifizierung
Digitale Unterschrift
Verwendet unterschiedliche Verschlüsselungsalgorithmen:
IDEA ( 128 Bit asymmetrisches Schlüsselverfahren,
entwickelt in Zürich)
RSA
cs0505 ww6
wgs 05-97
PGP, S/Mime, GnuPG
S/MIME ist die sichere Version von MIME (Multipurpose Internet
Mail Extension. Die meisten eMail Klienten unterstützen auch MIME.
S/MIME benutzt X.509 Zertifikat, PGP benutzt Web of Trust
30 % vs 70 % Marktanteil
Nur Mail vs. Mail + andere Anwendungen
Zertifizierung durch CA kostet etwa 50 Euro/Jahr
Krypto Kampagne der Zeitschrift c’t ( etwa 20 000 Schlüssel ) ,
kostenlose Zertifizierung gegen Vorlage des Personalausweises.
Vor Gericht nicht ausreichend.
GnuPG (Gnu Privacy Guard) ist eine GNU General Public License
Alternative zu PGP. Verwendet nicht den patentierten IDEA
Algorithmus.
cs 0665
wgs 12-03
SSH - Secure Shell
de facto Standard für remote computer login.
Verhindert Diebstahl von Passworten wenn diese im Internet
übertragen werden.
Typische Anwendungen:
• remote access auf Computer Ressourcen über das Internet,
• secure file transfer
• remote system administration.
Suite von drei Utilities - slogin, ssh, and scp - (Sichere Versionen
der UNIX Utilities rlogin, rsh, and rcp). Ersatz für telnet.
WinSCP ist ein Freeware SCP (Secure CoPy) Programm für
Windows.
SSH benutzt RSA für die Server Authentifizierung. Mehrere
Optionen für die Client Authentifizierung, darunter Kerberos.
IDEA ist das Default Verfahrung für die Verschlüsselung.
Alternativen sind DES, 3DES, und Blowfish.
Klient generiert symmetrischen Schlüssel und sendet ihn zum
Server verschschlüsselt mit dessen öffentlchen Schlüssel.
Die Verschlüsselung started unmittelbar nach der Server
Authentifizierung, aber vor der Client Authentifizierung. Passwort
des Benutzers wird über einen sicheren Kanal übertragen.
cs 0677 ww6
wgs 12-03
Externe Anbindung
Anschluß von
• Außenstellen eines Unternehmens über das Internet
• Außendienstmitarbeiter, Laptop über ISDN Leitungen
• Heimarbeitsplätze, PPP Protokoll
Kombination von Verschlüsselung und Packet Filter:
IP Pakete werden verschlüsselt über das unsichere Netz
übertragen und vom Packet Filter Firewall entschlüsselt.
Durch Verschüsselung wird ein kryptographisches
„Virtual Private Network“ (VPN) in einem unsicheren Netz,
z.B. über das Internet, gebildet.
cs 0612 ww6
wgs 11-98
Ver/Entschlüsselung
Ver/Entschlüsselung
Betriebsgelände A
Betriebsgelände B
Internet
Virtual Private Network (VPN)
Die Intranets auf 2 Betriebsgeländen werden über das (unsichere)
Internet miteinander verbunden.
Basis ist TCP/IP
Die Abschirmung erfolgt über „Tunneling“ (Verpacken aller Pakete)
sowie Verschlüsselung der IP-Pakete
IPsec ist der Standard für die Verschlüsselung
IKE ist der Standard für den Schlüsselaustausch mittels öffentlicher
Schlüssel
cs0619 ww6
wgs 09-98
Sicherheitsprotokoll IPsec
Transport Mode vs Tunnel Mode
TCP Kopf
IP Kopf
IP Kopf
TCP Daten
IP Daten
verschlüsselte Daten
IPsec Protokoll Authentication Header (AH)
AH
verschlüsselte Daten
ursprünglicher IP Kopf (verschlüsselt)
IPsec Kopf, dupliziert unkritische Felder des IP Kopfes
Probleme
„Layer-4-Switching“ ermöglicht Prioritätensteuerung, indem z.B. FTP
(Port Nr. 20) mit höherer Priorität weitergegeben wird als E-Mail (Port
Nr. 25). Die Port Nr. steht im TCP Kopf und kann, da verschlüsselt,
nicht genutzt werden.
Der zusätzliche IPsec Kopf vergrößert die Paketlänge. Die
Überschreitung einer MTU (Maximum Transfer Unit) Grenze erzeugt
zusätzliche Fragmentierung.
cs0620 ww6
wgs 09-98
Point-Point Tunneling Protocol (PPTP)
Virtual Private Network, erlaubt getunnelte Point-to-Point
Protocol (PPP) Verbindungen über ein IP Nettwerk. Benutzer
können sich über Telefon und das Internet in ein Corporate
Network einwählen (Road Warrior Protokoll). In RFC2637
beschrieben.
Wurde von Microsoft mit einer kleinen Gruppe anderer
Unternehmen entwickelt.
PPTP ist ein OSI Schicht Schicht 2 Protokoll, kann damit
auch andere Schicht 3 Protokolle nutzen.
IETF entwickelt derzeitig L2TP Standard als Nachfolger für
PPTP
cs0614 ww6
wgs 12-03
SSL versus IPSec
SSL für Remote Access
• höhere Sicherheitsprobleme im Vergleich zu
Standortverbindungen,z.B. zentraler Virenscanner
erfordert zwischenzeitliches Entschlüsseln durch Proxy
Server
• Verlangsamung der Verarbeitung > 90 %
IPSec für Standortverbindungen
• Firewall blockiert evtl. IPSec
• bessere Eignung für VoIP
Beide Verfahren verwenden DES, 3DES und AES, SSL auch
RC4
Homebanking Computer Interface (HBCI)
Financial Transaction Services (FinTS)
Offener Standard für den Bereich Electronic Banking und
Kundenselbstbedienung.
Von den deutschen Banken entwickelt und vom Zentralen
Kreditausschuss (ZKA) beschlossen.
Kunden-Authentifizierung und Nachrichtenverschlüsselung
mit einer Chip Karte. Erfordert Chip Karten Leser, der an
den PC angeschlossen wird. Enthält 112 Bit 3DESSchlüssel. Alle sensitiven kryptographischen Prozesse
laufen im Chip ab.
Alternativ auch RSA Verschlüsselung (mehrere Verfahren).
cs 0682 ww6
cs\pubs\FinzTran.pdf
wgs 10-05
Zugriffsberechtigung
Eine Vielzahl von Subjekten hat unterschiedliche
Zugriffsberechtigungen (z.B. Read, Write, Execute) auf eine
Vielzahl unterschiedlicher Objekte (Dateien, Directories,
ausführbare Programme, usw.).
Für jedes Paar {Prozessi, Objektj} kann es
unterschiedliche Zugriffsberechtigung Aij geben.
eine
A11
1
1
A12
2
2
A13
3
3
A14
4
4
A15
5
Subjekte
(Klienten, Prozesse)
cs 0626u ww6
5
Objekte
Dateien, Programme
wgs 05-99
Objekte, z.B. Dateien, Directories
⋅⋅⋅
0
1
2
n
0
A0,0
A0,1
A0,2
1
A1,0
A1,n
Subjekte
2
A2,0
A2,n
z.B.
3
Prozesse
.
.
.
.
m
A0,n
Capability
List
Am,0
Am,1
Am,2
Am,n
ACL, Access Control List
Zugriffskontrolliste
Zugriffsmatrix
vs1507 ww6
wgs 05-96
ACL
Datei 1
Datei 2
Datei 3
Meier
r/w
x
-
Müller
-
-
r/w
Capabilities
Schulze
r
r
r
Bauer
r
r/w
-
Access Control Lists und Capabilities
cs 0627u ww6
wgs 05-99
Benutzer 2
x
x
x
x
Benutzer 4
x
x
x x x
x x
x
x
x
Benutzer 1
x
x
x
Benutzer 3
Group
x
x
x
x
Benutzer 5
others
Zusammenfassung von Prozessen in Klassen, und
Verwendung vereinfachter ACL ( r, w, x, .. ) ,
aufgeteilt nach "owner", "group", und "others".
Problem: Aufteilung der Zugriffsberechtigung von einem
Objekt auf mehrere Gruppen. Unter Unix existiert hierfür
eine „erweiterte ACL“ Funktion.
vs1508 ww6
wgs 05 -96
Rollenbasierte Zugriffssteuerung.
Separate Zugriffssteuerungen für die Systemanmeldung und den
Zugriff auf Objekte, Ressourcen, Programme, Dateien, Prozesse
bzw.Daemons, Dienste und Anwendungen.
Profile für die Zuordnung von Benutzern zu vordefinierten Gruppen
mit voreingestellten Zugriffsrechten.
In das Betriebssystem integriert.
Protokolliert alle Benutzeraktionen und -zugriffe. Aktivitäten können
verfolgt und dem ursprünglich authentifizierten Benutzer
zugeordnet werden.
Implementierungsbeispiele:
• Computer Associates ACF2 (OS/390, z/OS)
• Computer Associates eTrust Access Control (Linux, Unix,
Windows)
• IBM RACF (OS/390, z/OS)
• Security Enhanced Linux (SE-Linux)
cs 0576 ww6
wgs 01-05
RACF
RACF benutzt das Konzept von zu schützenden„Resourcen“.
Resourcen werden in „Klassen“ aufgeteilt. Beispiele für Klassen
sind:
•
•
•
•
•
Benutzer
Dateien
CICS Transaktionen
Datenbank Rechte
Terminals
Jedem Element einer Klasse wird ein „Profil“ zugeordnet. Das
Profil besagt, welche sicherheitsrelevanten Berechtigingen
vorhanden sind. Die Profile werden in einer Systemdatenbank, der
RACF Profildatenbank, abgespeichert.
Beispiel: Ein interaktiver Benutzer logged sich ein. Der Login
Prozess überprüft, ob die Login Berechtigung besteht. Er überprüft
weiterhin, ob das Terminal, von dem der Benutzer sich einwählt,
eine Zugangsberechtigung hat. Hierzu ruft der Login Prozess RACF
auf, welches die entsprechenden Profile in seiner Datenbank
konsultiert.
Anschließend ruft der Benutzer ein Programm auf, welches auf eine
Datei zugreift. Die OPEN Routine ruft RACF auf, welches das Profil
der Datei bezüglich der Zugriffsrechte befragt.
Benutzer Profile enthalten „Capabilities“. Datei Profile enthalten
„Access Control Listen“.
Zugriffsrechte können von spezifischen granularen Bedingungen
abhängig gemacht werden; z.B. der Zugriff auf eine Datenbank
kann von der Nutzung eines spezifischen Anwendungsprogramms
abhängig gemacht werden, oder auf bestimmte Tageszeiten
begrenzt sein.
Problem: Wartung der Profile.
cs 0653 ww6
wgs 10-01
OS/390 Security Server
RACF (Resource Access Control Facility) bewirkt
•
•
•
•
•
Identifizierung und Authentifizierung von Benutzern
Benutzer Authorisierung für Zugriff auf geschützte Resourcen
Logging und Berichte über unauthorisierte Zugriffe
Überwacht die Art, wie auf Resourcen zugegriffen wird
Anwendungen können RACF Macros benutzen
Literatur : IBM GC28-1912-06
es 0426 ww6
wgs 08-00
RACF
Datenbank
Resource
Profile
5
1
Resource
Manager
z.B. TSO
Resource
Manager
z.B. CICS
RACF
(oder
ASF)
2
RACROUTE
RACROUTE
4
3
SAF
OS/390 Kernel
RACF Arbeitsweise
1. Ein Benutzer greift auf eine Resource über einen Resource
Manager zu, z.B. TSO
2. Der Resource Manager benutzt einen System Call „RACROUTE“
um auf die Security Access Facility (SAF) des OS/390 Kernels
zuzugreifen. present. SAF ist eine zentrale Anlaufstelle für alle
sicherheitsrelevanten Aufgaben.
3. SAF ruft ein Zugriffskontrolle Subsystem auf. Dies ist
normalerweise RACF. (Eine Alternative ist die Access Control
Facility der Fa. Computer Associates, die ähnlich arbeitet).
4. RACF greift auf einen „Profile“ Datensatz in seiner eigenen RACF
Datenbank zu und überprüft die Zugangsberechtigungen
5. Das Ergebnis teilt RACF dem anfragenden Resource Manager
mit.
es0436 ww6
wgs 09-01
RACF
Remote Access Control Facility
OS/390 spezifiziert kritische Events innerhalb des
Betriebssystems als sicherheitssensitive Verzweigungen.
Die OS/390 Security Authorisation Facility (SAF) bewirkt an
diesen Stellen den Aufruf einer externen Security Engine.
In OS/390 ist dies häufig RACF; alternative OS/390 Security
Engines sind ACF/2 oder TopSecret. Neben einer Kontrolle
von Events (ehe sie wirksam werden) wird ein umfassender
Audit Trail erzeugt.
Zugriffsrechte können von spezifischen granularen
Bedingungen abhängig gemacht werden; z.B. der Zugriff
auf eine Datenbank kann von der Nutzung eines
spezifischen Anwendungsprogramms abhängig gemacht
werden, oder auf bestimmte Tageszeiten begrenzt sein.
SAF übergibt der externen Security Engine die pertinente
Information. Die Security Engine kann dann auf der Basis
von Access Control List (ACL) Strukturen über die
Zugriffsrechte entscheiden.
Problem: Maintenance der ACL´s
css 0630 ww6
wgs 01-98
Security Enhanced Linux (SELinux)
Discretionary Access Control (DAC) ist der Standard Linux
Ansatz. Der Besitzer einer File kann Read-, Write- und
Executerechte setzen.
Mandatory Access Control (MAC) bedeutet, der Systemadministrator bestimmt die Sicherheitsstrategie. Benutzer
können nicht dagegen verstoßen.
SELinux ist Teil des Linux Security Servers und ist
Bestandteil des 2.6 Kernels.
SELinux implementiert MAC durch die Benutzung von Type
Enforcement (TE) und von Role Based Access Controls
(RBAC).
Type Enforcement bedeutet, jedem Objekt des Systems ist
ein Type zugeordnet. Der Sicherheitsadministrator definiert
ein Regelwerk, welches die Zugriffsrechte zwischen Paaren
von Types definiert.
Role Based Access Controls ordnet dem Benutzer eine
Reihe von Rollen zu, die Zugriffe und andere aktionen
erlauben oder einschränken. Z.B kann ein Benutzer
begrenzte Root-Rechte erhalten um den Mail Server zu
verwalten, ohne Root-Rechte auf den Rest des Systems.
cs 0680 ww6
wgs 07-05
Sicheres Netz
z.B. LAN
sicherer Netzadapter
Firewall
nicht sicherer Netzadapter
Internet
Überwacht Nachrichtenfluss auf der Ebene der Netzwerkschicht
(Packet Filtering Firewall) oder der Ebene der Anwendungsschicht
(Application Level Firewall)
cs 0661 ww6
wgs 11-02
Vorraussetzungen für einen Firewall
Rechner
Hardware und Software müssen klar und nachvollziehbar
aufgebaut sein.
Jedes Programm enthält potentielle Sicherheitslücken.
Nur solche Programme sollten auf dem Firewall Rechner
laufen, die zur Erbringung der Firewall Funktionalität
unbedingt erforderlich sind.
Unnötige oder überflüssige Prozesse im Hintergrund sind
häufig die Ursache für Sicherheitslücken.
Literatur:
W. Sonnenreich, T. Yates:“ Building Linux and OpenBSD Firewalls“.
Wiley, 2000.
W. Cheswick, S. Bellovin:“Firewalls und Sicherheit im Internet“.
Addison-Wesley, 1996.
N. Pohlmann: „Firewall-Systeme“. Datacom, 1997.
css 0615 ww6
wgs 01-98
cs 0640
wgs 09-00
Packet Filtering Firewall
Zugriff gestattet
Zugriff Verweigert
Firewall Rechner
Firewall ist gleichzeitig Schicht 3 Router. Firewall entscheidet auf
der Basis von Filter Regeln
IP Filter auf der Basis von
•
•
•
•
Quell- oder Zieladresse
Quell- oder Ziel- Port Nummer
Protokoll ( tcp, udp, icmp .... )
Richtung
Regeln werden von oben nach unten ausgewertet
• erste Übereinstimmung: angegebene Aktion durchführen
• keine Übereinstimmung: Paket ablehnen
cs 0662 ww6
wgs 11-02
Filter Rule Example:
Permit e-mail packets from the Internet to our Local Network if and
only if they are destined for the Mail Gateway machine
Local Area
Netzwerk
IP Adresse
220.0.0.1
Port
#2
Filtering Port
Router
#1
Internet
Our Filtering router must permit only following packets:
• coming from the Internet to port 25 on the Mail Gateway Machine;
• coming from the the Local Network and destined to any port 25.
Access Control Liste für Filtering Router Port Nr. 1
Eintrag
Source
IP Adr.
1
2
any
any
Source
Port
any
any
Destination
IP Adr.
220.0.0.1
any
Destination
Port
25
any
Action
permit
block
Access Control Liste für Filtering Router Port Nr. 2
Eintrag
Source
IP Adr.
Source
Port
Destination
IP Adr.
1
2
220.0.0.1
any
any
any
any
any
cs 0658 ww6
Destination
Port
25
any
Action
permit
block
wgs 09-01
Quelle
IP
Port
Adresse Nr.
erlaubt
erlaubt
Antwort
eigene
*
Ziel
Attribut Kommentar
IP
Port
Adresse Nr.
*
*
25
25
*
*
unser Paket
zu Ihrem
SNMP Port
ack
Ihre
darauf
erlaubt
*
*
*
blockiert
*
*
*
≥1024
*
Ziel ist eine
eigene, selbstgeschriebene
Anwendung
Default
Beispiel für eine Firewall Filtertabelle
Filtereinträge werden von oben nach unten abgetastet. Alles was
nicht explizit erlaubt ist, ist verboten. Port 25 ist der SNMP Port.
Port ≥1024 ist für private Anwendungen vorgesehen. Weitere
Möglichkeiten für Filter Regeln sind z.B. Einschränkung auf Uhrzeit
und Wochentag, Erlaubnis zum Verbindungsaufbau, u.s.w.
cs 0610u ww6
wgs 11-98
cs 3020 ww6
wgs 12-04
cs 0639
wgs 09-00
Umgang mit IP Fragmenten
Bei fragmentierten TCP Segmenten enthält nur das erste
Fragment den TCP Protokollkopf und damit die Port
Nummer.
Kein Problem für Angriffe von außen. Das erste Filter trägt
die Port Nr. und wird entsprechend gefiltert. Wird es
abgewiesen, bleibt das Paket unvollständig und wird
irgendwann verworfen.
Beim Informationsexport müssen Fragmente abgewieden
werden. Der Sender kann Fragmente ohne Portnummer
basteln und extern auf einem Rechner wieder
zusammensetzen.
Source Routing
Normalerweise erfolgt das IP Routing dynamisch. Die
Alternative ist Source Routing. Hierbei wird die Route
spezifiziert.
Hacker benutzen Source Routing um einen anderen
Rechner (trusted Maschine) als Sender vorzutäuschen.
Nur wenige wichtige Dienste verwenden source routing.
Firewalls sollten deshalb alle Source Routing Pakete
herausfiltern.
css06116 ww6
wgs 01-98
Cs 0674 ww6
wgs 07-03
Application Firewall
Proxy Server
Application Firewall Software, die Nachrichtenübertragung
auf der Anwendungsschicht (Schicht 7) nur nur für jeweils
einen spezifischen Dienst zuläßt, wird als „Proxy“
bezeichnet.
Für jeden Dienst muß auf dem Application Firewallrechner
ein eigener Proxy errichtet werden. Der Proxy überprüft für
jede Anwendung getrennt, ob der Zugriff erlaubt ist.
Aus der Sicht des Anwenders sieht es so aus als würde der
Klient direkt mit dem eigentlichen Server Prozeß
kommunizieren.
cs 0608 ww6
wgs 11-98
Zwei Arten von Application Firewalls
(Proxy Server)
Circuit Level Firewall
• Zwischenstufe für alle TCP/IP Verbindungen
• 2 Verbindungen (Sessions) zwischen local Host und Proxy, und
zwischen Proxy und remote Host
• Inhalt der übertragenen Nachricht wird nicht untersucht
Stateful Inspection Firewall
•
•
•
•
Untersuchen des Inhalts der übertragenen Nachricht
Authentifizierung
Virenscanner für SSL Nachrichten
Logging
cs 0679 ww6
wgs 12-03
cs 0641
wgs 09-00
Socks Server
Ein Circuit Level Proxy Server erfordert eine Anpassung aller
beteiligten Anwendungen.
Dies kann mit Hilfe einer Socks Package entsprechend dem Internet
Standard RFC 1928 geschehen. In diesem Fall wird der Proxy
Server als Socks Server bezeichnet.
Die Client Anwendung has to be socksified. Mit Hilfe der Runsocks
Package kann dies für unterstützte Anwendungen (z.B. telnet, ftp
und Netscape) und für unterstützte Betriebssysteme dynamisch,
ohne Rekompilierung erfolgen (http://www.socks.permeo.com/).
Anderer Ansatz:
AIX (IBM PowerPC) Rechner verfügen über
•
rtelnet
an Stelle von telnet
•
rftp
an Stelle von ftp
Die normalen C/C++ library Socket Calls sind durch SOCKS library
Calls ersetzt..
Eine TELNET Verbindung z.B. sieht so aus:
1. Benutzer started die rtelnet Anwendung um sich in einen remote
Host einzuloggen.
2. rtelnet sendet die TELNET Anforderung an den SOCKS server
(sockd) des Application level Firewalls.
3. sockd überprüft die Identität des Benutzers, und wenn korrekt,
stellt die Verbindung zu dem remote Host her.
4. Danach agiert der SOCKS Server als eine secure Pipeline zu dem
remote Host. Der TELNET Benutzer merkt hiervon nichts.
cs 0637 ww6
wgs 09-00
cs 0642
wgs 09-00
Demilitarzed Zone
DMZ
Überwachtes Grenznetz
Der äußere Firewall schützt das DMZ Netz. Er bestimmt,
wer aus dem Internet auf Rechner zugreifen darf, die an das
DMZ Netz angeschlossen sind.
Filter Regeln sind einfacher zu definieren.
Der äußere Firewall ist häufig als Router Firewall
implementiert.
An das DMZ Netz sind weniger kritische Server
angeschlossen. Die kritischen Server werden zusätzlich
durch den inneren Firewall geschützt. Dieser ist häufig als
Application Firewall implementiert.
Intranet
DMZ
Innerer
Firewall
Name
Server
css0621 ww6
Internet
Äußerer
Firewall
WEB
Server
wgs 01-98
DMZ Konfigurationen
Mehrere Alternativen:
1. Router Firewall - Router Firewall
Einfachere Definition der Filterregeln
2. Router Firewall - Application Firewall
Der Router Firewall stellt die Schnittstelle zum
unsicheren Netz dar
3. Router Firewall - Application Firewall - Router Firewall
Der Application Firewall wird duch einen Router
Firewall zusätzlich vom sicheren Netz aus geschützt
Geschachtelte Sicherheit
Unterschiedliche Betriebssysteme der einzelnen
Firewallrechner: Sicherheitslücken wirken sich nur auf ein
aktiven Firewall Rechner aus
cs 0611 ww6
wgs 11-98
Internet Zugang und Firewall System
Kommunalen Rechenzentrums Stuttgart
cd 0671 ww6
wgs 03-03
Reservierte IP Adressen
Offizielle IP Adressen werden vom NIC oder DE-NIC
vergeben.
Möchte man mit nicht-offiziellen IP Adressen arbeiten, so
sind hierfür in RFC 1918 Adressen für private Adressen
reserviert:
10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255
Klasse A
Klasse B
Klasse C
(16 Netze)
(256 Netze)
Ein Application Firewall besitzt eine Adresse für das interne
Netz und eine weitere Adresse für das externe Netz. Die
interne Adresse kann eine RFC 1597 private Adresse sein.
Beispiel Volkswagen, R+V Versicherung:
Klasse C
Adresse
DMZ
10.0.0.0
Application
Firewall
Name
Server
css 0632 ww6
Internet
Router
Firewall
WWW
Server
wgs 12-97
Netzwerk Address Translation
Internet
139.18.4.97
von 80.131.84.10
nach 139.18.4.97
von 139.18.4.97
nach 80.131.84.10
80.131.84.10
NAT Table
Intern
Firewall Router
192.168.0.2
192.168.0.4
192.168.0.5
192.168.0.7
extern
139.18.4.97
134.2.14.19
193.99.144.71
129.42.16.99
192.168.0.1
von 192.168.0.2
nach 139.18.4.97
von 139.18.4.97
nach 192.168.0.2
192.168.0.2
cs 0663 ww6
192.168.0.4
192.168.0.5
192.168.0.7
wgs 01-04
Never install a Firewall
Dipl. Inf. Sebastian Schreiber
SySS GmbH
Friedrich-Dannenmann-Str. 2
72070 Tübingen
http://www.syss.de/
Herunterladen