Vorwort - Buecher.de

Werbung
Vorwort
Das vorliegende Lehrbuch zur Netzwerksicherheit vermittelt ein übergreifendes, praktisches Verständnis von der Sicherheit in Kommunikationsnetzen.
Das Buch richtet sich an alle Personen, die entweder praktisch oder in der Ausbildung mit Netzwerksicherheit befasst sind, insbesondere Lernende wie Studenten von Hochschulkursen. Leser lernen durch dieses Buch, Netzwerksicherheit im Unternehmen zu verstehen, zu planen und zu verbessern. Das
Buch gibt sowohl eine theoretische Einführung als auch praktische (beispielorientierte) Einsicht in die Funktionsweise wesentlicher Netzwerksicherheitssoftware. Es vermittelt praxisnah den neuesten Stand zur Sicherheit in der Datenkommunikation.
In Analogie zu einer Kette ist die Sicherheit in Netzen nur so gut wie die des
schwächsten Gliedes. Entsprechend behandelt das Buch Sicherheit gemeinsam mit Netzwerken, so zum Beispiel verschiedene Verfahren der auf dem IPProtokoll basierenden Sicherheit, Kryptographie, VPNs und Standards, die
das Sicherheitsmanagement betreffend. Das Buch wird von einer virtuellen
Netzwerklabor-Übungsumgebung auf www.webnetlab.net und Vorlesungsfolien (für Dozenten) unterstützt.
Das Buch Netzwerke-und Netzwerksicherheit fokussiert Windows und
Linux als Plattformen. Es zeigt anschaulich anhand praktischer Beispiele, wie
unter diesen Betriebssystemen VPNs und Firewalls eingerichtet werden und
andere sicherheitsrelevante Vorkehrungen getroffen werden können.
Danksagungen
Markus Baumgartner
DI Heinz Buczolich
Dr. Walter Ebner
Martin Gafner
Dr. Michael Hauser
Junyeob Anton Lee (Teile IDS)
Prof. Gustaf Neumann
Dr. Momtchil Peev
Alfred Nagl
Dr. Grégoire Ribordy
Günther Schwarz (WLAN)
Dr. Martin Suda
Weitere Information
www.huethig-telekommunikation.de
www.webnetlab.net
Wien, im Oktober 2006
Dr. Michael Alexander
[email protected]
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1
Erweiterte Grundlagen von Internet-Netzwerken
Das vorliegende Buch zur Netzwerksicherheit vermittelt ein übergreifendes,
praktisches Verständnis zur Sicherheit in Kommunikationsnetzen. Der
Schwerpunkt liegt auf Netzen, die auf dem Internet Protocol (IP) basieren. Das
Studium der Sicherheit in Netzen setzt ein Basiswissen zu Netzwerken im Allgemeinen und IP-Netzen im Speziellen voraus. Viele Schwachstellen und Gegenmaßnahmen der Netzwerksicherheit beruhen auf detaillierten Eigenschaften der zugrunde liegenden Netze. Daher werden erweiterte Grundlagen zu Internet-Netzwerken als Referenz zu den entsprechenden Sicherheitskapiteln
behandelt. Dazu gehören TCP/IP, Protokolle im ISO/OSI-Schichtenmodell,
ICMP, ARP, DNS, Routing und Kopplungseinheiten.
1.1
TCP/IP
Das Transmission Control Protocol/Internet Protocol (TCP/IP) und assoziierte Protokolle bilden die Grundlage des Internets. Das Internet selbst definiert
sich aus der Summe der auf dem IP-Protokoll basierenden und miteinander
verbundenen Netze. Es ist das Massenmedium mit der bis jetzt höchsten Diffusions/Adoptionsrate, welches nur 5 Jahre1 brauchte, um 50 Millionen Benutzer zu erreichen, verglichen mit 13 Jahren für TV und 38 Jahren für Radio [7].
Seine Historie und die der paketvermittelnden Rechner reicht zurück bis in
das Jahr 1965, in dem Donald Davies erstmals paketvermittelnde Datenkommunikation beschrieb [3]. 1968 erfolgte die Ausschreibung des ARPANETs
der Advanced Research Projects Agency (ARPA) [57], aus dem das Internet
entstand. Die erste eigentliche Kommunikation zweier ARPANET-Hosts fand
am 29. Oktober 1969 [65] statt, bei der die ersten Zeichen zwischen den Netzwerkendpunkten Stanford mit einem DEC-PDP-Host und der University of
California Los Angeles (UCLA) mit einem SDS-Sigma-7-Host ausgetauscht
wurden. Die Kopplungseinheit war dabei der in Abbildung 1.1 gezeigte Interface Message Processor (IMP).
TCP/IP-Historie
Abb. 1.1: Interface
Message Processor
(IMP)
1.
Referenzpunkt ist das Jahr 1991, in dem der NSFNET-Backbone (National
Science Foundation Network) für kommerzielle Nutzung freigegeben wurde.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
2
1 Erweiterte Grundlagen von Internet-Netzwerken
Internet-Wachstum
Das Wachstum des Internets in den Jahren seit dem ersten Zeichenaustausch
ist in Abbildung 1.2 dargestellt2. Die Zählung basiert auf der Erhebung von
Hosts im Domain Name System (DNS), für welche eine statische IP-Adresse
(DNS A-Record) vorhanden ist. Das Wachstum verläuft exponenziell über die
Zeit. Durch die logarithmische Ordinate im Diagramm zeigt sich die Regression der Datenpunkte als Gerade. Eine andere Maßzahl, die Anzahl der registrierten Domänen, erreichte 2004 weltweit 66,3 Millionen [12]. Das weitere
starke Wachstum des Internets ist voraussehbar, da solche großen Benutzergruppen wie die der mobilen Endgeräte sukzessive in das Internet gebracht
werden und Bereiche wie die der Maschine-zu-Maschine-Kommunikation
über das Internet noch nicht annähernd ausgeschöpft sind.
Abb. 1.2: InternetHosts: Wachstum
10.000.000.000
1.000.000.000
100.000.000
Internet-Hosts
10.000.000
1.000.000
100.000
10.000
1.000
100
10
1
9
.6
z
e
D
2
.7
z
e
D
5
.7
z
e
D
8
.7
z
e
D
1
.8
z
e
D
4
.8
z
e
D
7
.8
z
e
D
0
.9
z
e
D
3
.9
z
e
D
6
.9
z
e
D
9
.9
z
e
D
2
.0
z
e
D
5
.0
z
e
D
Ein wesentlicher Aspekt von TCP/IP und des Internets ist deren Skalierbarkeit, das heißt die Unterstützung einer großen Bandbreite von Verwendern mit
der gleichen Protokolltechnologie. So wurde zum Beispiel das heute aktuell im
Einsatz befindliche Request for Comments (RFC)3 791 für das IPv4-Protokoll
schon 1981 publiziert [22], als die Hostanzahl noch unter 1.000 lag. Wenn inhärente Limitationen vorhanden sind, werden solche im Rahmen der Skalierung zumeist durch evolutionäre Erweiterungen gelöst. Falls dies nicht möglich ist wie beispielsweise für den auf rund 4 Milliarden Adressen begrenzten
IPv4-Adressraum (32 Adressbits ergeben 232 mögliche Einträge), dann
kommt es zu wesentlichen Revisionen wie der der Version 6 des Internet-Protokolls (welches 128 Adressbits umfasst und daher 2128 mögliche Adresseinträge bietet – 5,3 Quadrilliarden Adressen für alle Erdbewohner).
Sicherheit
Während auf Skalierbarkeit in der Entwicklung der TCP/IP-Protokollfamilie großes Augenmerk gerichtet wurde, war Sicherheit historisch gesehen kein
Designkriterium. Die TCP/IP-Basisprotokolle betonen Simplizität, häufig mit
einer daraus folgenden Eleganz, jedoch schränkt das ihre Fähigkeiten zur Behandlung der der Sicherheit eigenen Komplexität ein. Vereinfachungsannahmen wie Vertrauen in die Identität einzelner Hosts oder das Außerauchtlassen
2.
3.
Internet Domain Survey [67].
Von der Internet Engineering Task Force (IETF) herausgegebenes Internet Standards Dokument.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
3
der Tatsache, dass geringe (oder 0) Grenzkosten der Verwendung mancher
Anwendungen zu hohen Transaktionsraten führen (so zum Beispiel für Spam),
zeigten sich erst über 15 Jahre nach der TCP/IP-Entwicklung als problematisch. Das Grundverständnis über menschliches Verhalten in elektronischen
Netzwerken war sehr wohl vorhanden, wie das folgende Zitat zeigt, nur wurde
es unzureichend internalisiert und in den Protokollen operationalisiert.
There is lingering affection for the challenge of breaking
someone's system.
Bob Metcalfe [18]
Das Network Control Protocol (NCP) war für die Host-zu-Host-Kommunikation der ersten IMPs zuständig. Die Entstehung der TCP/IP-Protokollfamilie wurde durch Beschränkungen der Skalierbarkeit des NCP herbeigeführt.
Der Nachfolger von NCP war zuerst als integriertes Protokoll gedacht, das
heißt, die Funktionalität von TCP und IP (siehe „TCP/IP-Protokoll“ auf
Seite 10) war integriert. Das erste Dokument, welches den NCP-Nachfolger
beschrieb, war A Partial Specification of an International Transmission Protocol von Vinton Cerf [2]. In der Folge und nach mehrfacher Iteration (siehe
[70] für eine punktuelle Liste und [26] für eine komplette RFC-Historie) wurde 1974 ein vervollständigtes kombiniertes TCP-IP als RFC 657 publiziert
[19]. Ein wesentlicher weiterer Schritt war die Trennung der Wegewahl- und
Transportfunktion von der gesicherten verbindungsorientierten Kopplung.
Letzteres wurde 1978 erstmal von V. Cerf und Jon Postel gemeinsam erarbeitet. Die heute aktuelle Version von IP wurde schlussendlich 1981 im RFC 791
veröffentlicht, genauso wie das nun separate TCP im RFC 793 [21]. Beide
wurden von Jon Postel editiert und sind zum Zeitpunkt der Publikation dieses
Buches 24 Jahre unverändert gültig. Das ARPANET selbst wurde 1983 von
NCP auf TCP/IP umgestellt.
TCP/IPEntwicklungslinie
Die weitere Evolution des TCP/IP konzentrierte sich vor allem auf höher geordnete Protokolle, wobei hierbei zumeist IP als das universelle Trägerprotokoll fungiert. Der gänzliche Erfolg des IP spiegelt sich in seiner Durchgängigkeit im heutigen Internet wider: Alle internetbasierende Kommunikation verwendet IP, obwohl manchmal in eingebetteter (encapsulated) Form.
Protokolle auf gleichen und benachbarten Schichten des ISO/OSI-Referenzmodells der folgenden Sektion wurden und werden kontinuierlich auf IP umgestellt. Die derzeit umfangreichste Konversion ist die des öffentlichen leitungsvermittelten Telefonnetzes (Public Switched Telephone Network –
PSTN) auf IP-Basis.
1.1.1
ISO/OSI-Referenzmodell
Das ISO/OSI-Referenzmodell (International Standards Organization/Open
Systems Interconnection) gibt eine Architektur der Verbindung von Computern und Kommunikationseinrichtungen vor. Es wurde unabhängig von zwei
Standardisierungsorganisationen entwickelt, der ISO und der Comité Consul-
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
4
1 Erweiterte Grundlagen von Internet-Netzwerken
tatif International Téléphonique et Télégraphique (CCITT)4, und unter dem
Standard X.200 von der International Telecommunications Union (ITU) publiziert. Es definiert sieben Schichten der zur Übertragung von Anwendungsdaten einer Applikation nötigen Funktionsblöcke. Das Ziel des ISO/OSI-Modells ist die vereinfachte Interoperabilität in der Kommunkation zwischen verschiedenen Datenendgeräten, obwohl originär auch die eigentliche Umsetzung
einer eigenen darauf abgebildeten Protokollfamilie verfolgt wurde5. Abbildung 1.3 zeigt die hier definierten Schichten mit ihrer deutschen und englischen Bezeichnung.
Abb. 1.3: ISO/OSI7-Schichten-Modell
Anwendungsschicht
7
Application
Darstellungsschicht
6
Presentation
Sitzungsschicht
5
Session
Transportschicht
4
Transport
Vermittlungsschicht
3
Network
Sicherungsschicht
2
Data Link
Bitübertragungsschicht
1
Physical
Eine Merkhilfe für die englischen Bezeichnungen ist der Satz: Alle Personen senden tolle Netzwerk Daten physikalisch, und auf Englisch: Please do
not throw sausage pizza away.
Das ISO/OSI-Modell ist für mehrere Aufgaben nötig:
• Die oft große Zahl von Kommunikationsprotokollen soll strukturiert
werden: Für TCP/IP ist die Zahl der Basisprotokolle finit (siehe
„TCP/IP-Protokoll“ auf Seite 10), jedoch in ihrer Gesamtzahl hoch. In
anderen Netzwerkklassen wie zum Beispiel für ATM-Netzen (Asynchroner Transfer-Modus) oder im Mobilfunk existieren noch umfang4.
5.
Die CCITT ist heute ein ständiger Teilbereich der International Telecommunications Union (ITU), organisiert als Subkomitee ITU-T.
Die Protokollfamilie der Open Systems Interconnection (kurz OSI) wurde
basierend auf dem ISO/OSI-Modell spezifiziert und von zahlreichen Herstellern auf multiplen Plattformen implementiert. Die OSI-Protokollfamilie
konnte sich jedoch nicht gegen das rapide angenommene TCP/IP durchsetzen und wird heute nicht mehr angewandt.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
reichere Protokolle, die ohne hierarchische Strukturierung nur schwer
behandelbar sind.
• Die Kommunikation von Sender zu Empfänger um gewählten physischen Transportmedium und (ideal) Transportprotokoll soll unabhängig sein. Praktisch sind diesem Ziel Grenzen gesetzt, da es perfekte
Verkapselung des nächsten Punktes voraussetzt, wobei Transparenz
gegenüber Schicht 1 und 2 erreicht wird. IP kann heute komplett unabhängig von der darunterliegenden Infrastruktur transportiert werden,
das Anwendungsprotokoll HTTP ist allerdings nicht unabhängig von
IP.
• Die Aufteilung der Aufgaben: Jede Protokollschicht soll für die Schicht
spezifische Aufgaben vollführen und ohne Duplizität von den darüberliegenden Schichten verwendet werden können. Falls dieses Kriterium
erfüllt ist, wird es möglich, die einzelnen Protokolle der Schichten im
Verkapselungsverfahren aneinanderzureihen. Falls sich die Aufgaben
überschneiden, kommt es dann zur redundanten Mehrfachverwendung
von Feldern. Dies ist zum Beispiel bei FTP und HTTP der Fall, was
Veränderungen von Servern und Clients für IPv6 notwendig macht.
• Der Regelung der Kommunikation von Protokollen miteinander, Protokolle im ISO/OSI-Modell sollten nur entweder mit demselben Protokoll der gleichen Schicht kommunizieren (IP-zu-IP, Ethernet MAC-zuEthernet MAC) oder mit Protokollen der jeweils eine Schicht darüberoder darunterliegenden Schicht. Dies trägt zu einer Minderung an
Komplexität bei und ist auch die konsistenteste Eigenschaft von
TCP/IP-Protokollen relativ zum ISO/OSI-Modell.
Das ISO/OSI-Modell ist wichtig für das Verständnis des Zusammenspiels
der einzelnen TCP/IP-Protokolle. Nachfolgend wird dies Modell verdeutlicht.
Das Durchlaufen des ISO/OSI-Modells von
der Datenquelle zur Datensenke ist anhand eines Beispiels wie ein U-förmiger Weg vorstellbar: Generiert ein Anwendungsprotokoll wie
auf der Anwendungsschicht des Senders Daten, werden sie Schicht für Schicht an die
nächsttiefer liegenden Protokolle weitergegeben. Schicht 1 –
die Bitübertragungsschicht – übermittelt schließlich die Daten
auf einem Übertragungsmedium zum Empfänger. Dort durchlaufen sie die Schichten in umgekehrter Reihenfolge, bis sie
wieder bei in unserem Fall der Anwendungsschicht – einem
HTTP-Web-Server ankommen.
Im ersten Schritt generiert eine Anwendung auf der Applikationsschicht einen Datenstrom. Diese Daten werden mit sogenannten Protocol Data Units
(PDUs) des verwendeten Protokolls umrahmt. In der Folge werden diese an
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
5
6
1 Erweiterte Grundlagen von Internet-Netzwerken
die darunterliegenden Schichten sequenziell weitergereicht, wobei jede
Schicht ihrerseits eine Verkapselung durch Hinzufügen ihrer PDUs durchführt. Sobald die Originaldaten und PDUs der Anwendungsschicht die Bitübertragungsschicht erreicht haben, vollführt diese die eigentliche Übertragung
(zu einem räumlich verschiedenen Empfänger). Der Empfänger (die sogenannte Senke) lässt dann die Daten revers sequenziell dieselben Schichten
durchlaufen, wobei jede Schicht die ihr zugehörigen PDUs ausliest und aus der
Verkapselung entfernt. Sobald die Daten auf der Anwendungsschicht des
Empfängers angekommen sind, entfernt die empfangende Anwendung noch
ihre PDUs, wobei dann die eigentlichen Übertragungsdaten übrig bleiben,
welche schlussendlich einen U-förmigen Weg beschritten haben.
Abb. 1.4: Physisches
Interface (PHY)
Die Bitübertragungsschicht (Schicht 1 – engl.: Physical Layer) ist die Schicht
des physischen Übertragungsmediums. Letzteres kann auf Kabel oder Funk
basieren. Die Schicht wickelt das Senden und das Empfangen von Daten auf
diesen elektrischen/optischen oder drahtlosen Medien ab. Die Bitübertragungsschicht einer Sender-Datenstation kommuniziert ausschließlich mit der
Bitübertragungsschicht einer Empfänger-Datenstation und den jeweils darüberliegenden Sicherungsschichten. Genauso wie für die höherliegenden
Schichten müssen Sender und Empfänger gleichartig sein: Eine Gigabit-Ethernet-Verbindung (IEEE Standard 802.3z) über Kupferkabel (IEEE 8-02.3ab 1000Base-T) muss sowohl eine Quelle als auch eine Senke mit einer 802.3z1000Base-T-NIC (Network Interface Card) haben. Ein physisches Interface
der Bitübertragungsschicht, so zum Beispiel eine Ethernet-NIC, wird auch
PHY (Kurzform für engl.: physical) genannt. Eine Interface-Karte wie in Abbildung 1.4, welche in Metro- und WAN-Netzen auch als Line TerminationKarte bezeichnet wird, beinhaltet wiederum den sogenannten Transponder.
Letzterer führt das eigentliche Senden/Empfangen/Verstärken/Konditionieren
von Signalen durch. In drahtlosen Netzwerken bildet der Transponder hin zum
nichtleitenden Medium die sogenannte Luftschnittstelle (engl.: Air Interface).
PHY
}
Bitübertragungsschicht
Transponder
MAC
Network-Interface-Karte
Kabelbasierendes
Medium
Sicherungsschicht
Die Sicherungsschicht (Schicht 2 – engl.: Data Link Layer) ist für das Einsetzen und Auslesen von Daten „in das Medium“ zuständig. Sie kümmert sich
genauso um die Flusssteuerung, Fehlererkennung und Zugriffskontrolle auf
das Medium. Genau diese Schicht ist es auch, die die Mehrfachverwendung
des Mediums durch sogenannte logische Kanäle ermöglicht. Die Sicherungsschicht teilt sich in zwei Subschichten, die sogenannte Zugangsschicht bzw.
MAC-Schicht (Media Access Control) und die Verbindungskontrollschicht,
auch LLC-Schicht (Logical Link Control) genannt.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
Die MAC-Schicht regelt den Zugriff auf das Medium. Bei Übertragungsmedien, die zwei Punkte verbinden (engl.: Point-to-Point Connection), ist der
Zugriff auf ein Medium unproblematisch, wenn zum Beispiel separate Kabelstränge für die Sende- und die Empfangsrichtung existieren. Sobald jedoch
mehrere Einheiten auf ein physisches Medium wie ein einziges Paar Kupferkabel, ein einziges Frequenzband auf einem Glasfaserleiter oder spezifische
Frequenzen in Funknetzen von mehr als zwei Stellen aus zugreifen wollen,
muss dies geregelt werden. Der Zugriff auf das Medium kann dabei entweder
deterministisch oder stochastisch erfolgen. Ein Beispiel für ersteren Fall ist
Zeitmultiplex (Time Division Multiplex – TDM), bei dem eine Datenstation
nur in einem fixen (Zeit)-Raster Daten auf das Medium bringen bzw. zurücklesen kann. Ein anderes Beispiel ist das ursprüngliche IBM Token Ring LAN,
welches deterministischen Medienzugriff durch einen im LAN-Ring kursierenden Token ermöglichte. Ein Beispiel für stochastischen Medienzugriff ist
Ethernet, das nicht auf Switches basiert (das heißt Shared Media). EthernetFrames werden im Broadcast-Modus versendet. Durch das Zugriffsverfahren
Carrier Sense Multiple Access with Collision Detection (CSMA/CD) können
hierbei multiple Datenstationen ohne vorherige Erlaubnis auf das Medium zugreifen. Kollisionen werden erkannt und nach einer zufälligen Wartezeit werden Daten erneut gesendet.
Die LLC-Schicht liegt über der MAC-Subschicht und der Vermittlungsschicht (Schicht 3). Sie ist unter anderem für die Schicht-2-Adressierung, für
Frame-Sequenzierung (Synchronisierung), für Übertragung verschiedener
Netzwerkschichtprotokolle (IP, ICMP etc.) auf Schicht 26, Flusskontrolle und
Fehlersicherung7 zuständig. Für alle IEEE 802.x LANs (Ethernet 802.3, WiFi
802.11 etc.) existiert der gemeinsame Standard IEEE 802.2 LLC.
Relevant für die Sicherheit der Schicht 2 ist die Hardwareadresse einer Network Interface Card (NIC). Diese sogenannte MAC-Adresse ist bei Ethernet
6 Byte (48 Bit) lang und ist per Definition weltweit einmalig8. Sie wird nach
dem folgenden Schema
<{0,1}> <23 Bit Hersteller ID> <24 Bit Seriennummer>
gebildet. Unter Linux kann die MAC-Adresse über den Befehl ifconfig
ausgegeben werden:
# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:E0:18:8E:85:63
inet addr:137.208.224.72 Bcast:137.208.224.255
Mask:255.255.255.0
6.
7.
8.
Schicht-3-zu-Schicht-2-Protokoll-Binding über sogenannte Service
Access Port (SAP) Pointer. Eine Erweiterung der SAPs ist das Subnet
Access Protocol (SNAP).
32 Bit Cyclic Redundancy Check (CRC) für Ethernet.
Bei Linux kann allerdings über den Befehl ifconfig leicht einem Interface eine andere MAC-Adresse als das Hardware-Default gegeben werden; für Windows existieren hierzu Programme zusätzlich zum
Betriebssystem.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
7
8
1 Erweiterte Grundlagen von Internet-Netzwerken
inet6 addr: fe80::2e0:18ff:fe8e:8563/64 Scope:Link
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
Unter Windows ist ipconfig /all der äquivalente Befehl, der alle Konfigurationsinformationen zu allen Interfaces anzeigt (Ausgabe gekürzt):
C:\ipconfig /all
Ethernetadapter LAN-Verbindung:
...
Physikalische Adresse . . . . . . : 00-0D-59-02-E4-39
Vermittlungsschicht
Die Vermittlungsschicht (Schicht 3 – engl.: Network Layer) befasst sich mit
dem transparenten Transport von Schicht-3-Datagrammen (in unserem Fall
IP) über gleiche oder verschiedene Schicht-1- und -2-Medien. Die Vermittlungsschicht ist damit das Bindeglied zwischen verschiedenen Netzwerktypen
und Netzwerken. Daher ist auch eine Definition des Internets, dass es alle Netze mit einschließt, die über das gemeinsame Schicht-3-Protokoll IP erreichbar
sind. Alle Wegewahl zwischen Vermittlungsknoten im IP geschieht auf der
Vermittlungsschicht. Die Wegewahlprotokolle Routing Information Protocol
(RIP), Internet Gateway Management Protocol (IGMP) und Border Gateway
Protocol (BGP) werden im Folgenden besprochen. Neben IP sind weitere
TCP/IP-Schicht-3-Protokolle das Internet Control Message Protocol (ICMP),
das Address Resolution Protocol (ARP) und das Internet Gateway Management Protocol (IGMP) für Multicast. Da IP ein relativ simples Schicht-3-Protokoll ist, fallen zahlreiche Funktionen wie Flusssteuerung und Quality of Service (QoS) weg, die sonst auf dieser Schicht gemacht werden. Der IP RFC 791
[22] legt dazu fest: „There are no mechanisms to augment end-to-end data reliability, flow control, sequencing, or other services commonly found in hostto-host protocols.“ Während IPv4 noch einen Fehlererkennungsmechanismus
der Headerdaten (d.h. nicht der Payload) hat, wurde diese Eigenschaft mit
IPv6 entfernt. Die Vermittlungsschicht ist im Fall von IP verbindungslos, womit jedes einzelne IP-Paket unabhängig vom vorherigen oder nachfolgenden
Paket ist. Es obliegt damit den höheren Schichten (und damit dem TCP-Protokoll in TCP/IP), verbindungsorientierte Dienste, Fehlersicherung und Flusssteuerung bereitzustellen.
Transportschicht
Die Aufgabe der Transportschicht (Schicht 4 – engl.: Transport Layer) in
TCP/IP ist, Kommunikationskanäle9 zur Verfügung zu stellen. Während IP
auf Schicht 3 noch jedes Paket als einzeln und unabhängig behandelt, fassen
die TCP/IP-Protokolle der Transportschicht Pakete zu Kanälen zusammen.
Ein Programm kann dann die Kanalinfrastruktur in Windows und Linux durch
sogenannte Sockets10 (und damit Socket-Verbindungen) nutzen. TCP/IP
kennt zwei Hauptprotokolle der Transportschicht: das verbindungsorientierte
Transmission Core Protocol (TCP) und das verbindungslose User Datagram
9.
10.
Kommunikationskanäle sind durchgängige (engl.: end-to-end) Verbindungen zwischen Quelle und Senke.
Sockets generell sind eine aus dem UNIX-Zweig BSD kommende Interprozess-Kommunikation. Im Speziellen sind sie Kommunikationsendpunkte
als 2-Tupeln aus IP-Adresse und TCP/UDP-Portnummer.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
9
Protocol (UDP). Verbindungsorientierte Protokolle unterscheiden sich von
verbindungslosen unter anderem dadurch, dass sie Handshaking11 sowie
Flusskontrolle zwischen Sender und Empfänger durchführen.
Wie in Tabelle 1.1 gezeigt, unterscheiden sich beide stark bei Kriterien wie
dem Overhead oder der Zuverlässigkeit. Die Transportschicht ist die für die
Netzwerksicherheit wichtigste Schicht, da ein Großteil der Schwachstellen/Attacken und Gegenmaßnahmen die Transportschichtprotokolle zumindest mitbetreffen.
TCP
UDP
verbindungsorientiert
verbindungslos
Fehlersicherung
fehlergesichert
optional fehlergesichert
Zuverlässigkeit
garantierte Zustellung
Datagrammzustellung nicht garantiert
Paketsequenz
garantierte Paketsequenz
keine garantierte Paketsequenz
Flusskontrolle
enthalten
nicht enthalten
Kommunikationsmodi
unicast
unicast, broadcast und multicast
Overhead
hoch (20 Byte)
gering (8 Byte)
Verbindungsorientierung
Tab. 1.1: TCP und
UDP im Vergleich
Die Sitzungsschicht (Schicht 5 – engl.: Session Layer) ist für den Auf- und
Abbau von Sessions zwischen zwei Kommunikationspartnern zuständig. Sie
wird bei TCP/IP oftmals nicht als eigene Schicht, sondern als Teil der Anwendungsschicht dargestellt (siehe Sektion 1.1.2). Die Verwendung von expliziten
ISO/OSI-Sitzungsschichtprotokollen ist in TCP/IP weiterhin selten, da es sich
entweder um nicht zustandsorientierte (engl.: stateless) Protokolle handelt oder
das Sitzungsmanagement Teil eines Anwendungsschichtprotokolls ist, wie
zum Beispiel bei dem Session Initiation Protocol (SIP) für Voice-over-IP
(VoIP). Das wichtigste Protokoll der Sicherungsschicht im TCP/IP-Kontext ist
das in Sektion 3.7.1 behandelte Protokoll Secure Socket Layer (SSL) zur sicheren Kommunikation über Sockets. Ein weiteres, wesentlich weniger genutztes
Protokoll der Schicht ist das Sun Remote Procedure Call (RPC) Protokoll [44].
Sitzungsschicht
Die Darstellungsschicht (Schicht 6 – engl.: Presentation Layer) ist für die
Umsetzung von Daten in das Präsentationsformat zuständig. Sie besitzt in
TCP/IP kaum direkt zugeordnete Standardprotokolle; ein Beispiel für eine
(nicht praxisrelevante) Datenbeschreibungssprache der Schicht ist der External Data Representation Standard [28]. Bereiche, in denen der Schicht entsprechende Operationen benutzt werden, sind mobile Netze, bei denen die Darstellung von Webdaten auf verschiedenen mobilen Devices mit einer Umsetzung
(Transcoding) verbunden sein kann. Beispiele hier sind HTML-Seiten, die online in die Wireless Markup Language (WML) bzw. in cHTML (Compact
HTML) umgesetzt werden.
Darstellungsschicht
11.
In TCP sind dies der initiale 3-Wege-Handshake (engl.: 3-way) und
Segment-Acknowledgement(ACK)-Pakete.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
10
1 Erweiterte Grundlagen von Internet-Netzwerken
Anwendungsschicht
In die Anwendungsschicht (Schicht 7 – engl.: Application Layer) fallen alle
Protokolle, die anwendungsbezogene Middleware-Dienste vollführen oder direkt Teil einer Benutzeranwendung sind. Unter TCP/IP werden, wie in der Folgesektion gezeigt, alle Protokolle über der ISO/OSI-Transportschicht der Anwendungsschicht zugeordnet. Dazu gehören unter anderem das Hyptertext
Transfer Protocol (HTTP), (secure) File Tranfer Protocol (S)FTP, Simple Mail
Transfer Protocol (SMTP), SIP, Post Office Protocol (POP), Network Time
Protocol (NTP) etc.
1.1.2
Schichtmodell für TCP/IP
Wie eingangs besprochen, stammt das ISO/OSI-Modell der sieben Schichten
aus dem OSI-Architekturprogramm der ISO under Comité Consultatif International Téléphonique et Télégraphique (CCITT). Das im Gegensatz zu den
OSI-Protokollen weltweit angenommene TCP/IP ist jedoch kein ursprünglicher Teil dieser Architektur und kann deswegen nur bedingt auf ISO/OSI abgebildet werden.
Abb. 1.5: TCP/IP im
7-Schichten-Modell
Anwendungsschicht
7
Darstellungsschicht
6
Sitzungsschicht
5
Transportschicht
4
Transportschicht
Vermittlungsschicht
3
Internetschicht
Sicherungsschicht
2
Anwendungsschicht
Verbindungsschicht
Bitübertragungsschicht
1
Abbildung 1.5 zeigt die Schichten von TCP/IP relativ zum ISO/OSI-Modell.
Wesentlich ist die Zusammenfassung der ISO/OSI-Schichten 5 bis
7 in die TCP/IP-„Anwendungsschicht“. Selektierte TCP/IP-Protokolle über
der Transportschicht wie zum Beispiel SSL werden häufig allerdings noch einer ISO/OSI-Schicht zugeordnet – für SSL ist es die Sitzungsschicht.
1.1.3
TCP/IP-Protokoll
TCP/IP ist eine Protokollfamilie, in deren Kern IP und das darüberliegende
TCP steht. Im Folgenden werden zuerst der Protokoll-Stack, die Verkapselung
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
11
und dann die Protokolle IP, UDP, TCP, ARP und ICMP basierend auf [10] vorgestellt. Auf Sicherheitsaspekte wird hingewiesen. Den meisten Protokollen
dieses Stacks ist jedoch gemein, dass sie auf Simplizität und Effizienz hin entwickelt wurden und Sicherheit damit bei ihrer Definition nicht Haupkriterium
war.
Protokoll-Stack
RTP/SIP
SNMP
NTP
Abb. 1.6: TCP/IP
und das ISO/OSI7-Schichten-Modell
HTTP
(S)FTP
POP3
5
SSL
UDP
OSPF
SLIP
RIP
ATM
IP
Frame Relay
ICMP
802.11
SDH
RARP
Token Ring
1
ARP
Ethernet
2
TCP
FDDI
4
3
XDR
IGP
PPP
6
SMTP
7
SSH/Telnet
Der TCP/IP-Protokoll-Stack ist die Gruppe der auf TCP/IP aufbauenden Kernprotokolle. In Abbildung 1.6 [3] wird die Lage der Protokolle im Schichtmodell verdeutlicht. So befindet sich SMTP über TCP, das wiederum über IP
transportiert wird. ICMP befindet sich neben IP auf Schicht 3. ARP bzw. das
Reverse Address Resolution Protocol (RARP) sind zwischen Schicht 2 und 3
und können deswegen auch als Schicht-2,5-Protokolle bezeichnet werden. Die
Routing-Protokolle RIP, Open Shortest Path First (OSPF), Interior Gateway
Protocol (IGP) und BGP werden ebenfalls der Vermittlungsschicht zugeordnet.
Die folgende Abbildung 1.7 verdeutlicht nun die Verkapselung (engl.: Encapsulation) von Benutzerdaten beim Durchlaufen des TCP/IP-Stacks. Benutzerdaten, die über TCP von einem Sender zu einem Empfänger geschickt werden, können zuerst einen anwendungsspezifischen Header erhalten. In der Folge wird ihnen ein TCP-Header vorangestellt. Die Dateneinheit auf TCP-Ebene
ist das TCP-Segment. Nachdem der TCP-Header (inkl. der Prüfsumme) geschrieben wurde, übergibt der TCP/IP-Stack die Daten an die darunterliegende
Schicht – IP. IP stellt nun genauso einen Header voran, wobei sowohl die TCPHeaderdaten als auch die Anwendungsdaten unverändert bleiben.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
12
1 Erweiterte Grundlagen von Internet-Netzwerken
Abb. 1.7: TCP/IPVerkapselung
Userdaten
Anwendung
Anw.Header
Userdaten
TCP
TCPHeader
Anwendungsdaten
TCP-Segment
IPHeader
TCPHeader
IP
Anwendungsdaten
IP-Datagramm
Ethernet
Header
14
IPHeader
20
TCPAnwendungsdaten
Header
20
Ethernet-Rahmen
EthernetTreiber
EthernetTrailer
4
Ethernet14
46 bis 1.500 Bytes
Die Dateneinheit auf IP-Ebene ist das IP-Datagramm. Schlussendlich wird
in Abbildung 1.7 das IP-Paket über Ethernet übertragen, wobei nun der Ethernet-Netzwerktreiber (und damit nicht mehr der TCP/IP-Stack) noch einen 14Byte12-Ethernet-Header und einen 4-Byte-Ethernet-Trailer hinzufügt. Die
Übertragungseinheit auf Ethernet-Ebene ist nun der Rahmen (engl.: Frame),
welcher bei Standard IEEE 802.3 Ethernet bis zu 1.500 Byte13 groß sein kann.
Internet Protocol
Das Internet Protocol (IP) ist der Kern des TCP/IP-Protokoll-Stacks. Es ist das
Transportprotokoll aller TCP/IP-Protokolle der höheren Schichten. Es gibt neben IP kein anderes Kerntransportprotokoll im Internet. IP ist wie eingangs in
besprochen als IPv4-Protokoll schon 1981 im RFC 791 [22] publiziert worden
und damit über geraume Zeit unverändert im weltweiten Einsatz. Es ist ein
leichtgewichtiges Protokoll, welches auf hohe Skalierbarkeit, Unterstützung
der Wegewahl in vermaschten Netzen, Fragmentierungsbehandlung und Eignung sowohl für verbindungsorientierte als auch verbindungslose Protokolle
der darüberliegenden Schichten ausgerichtet ist. Die aktuell im Einsatz befindliche Version ist unverändert IPv4, wobei die Folgeversion IPv6 zwar vorhanden, aber derzeit nur selten – wie zum Beispiel in Mobilfunknetzen – im generellen Einsatz ist. Der Abschnitt IPv6 am Ende der Sektion behandelt die Neuigkeiten des Protokolls gegenüber IPv4 weiter.
IP-Datagramm
Der IP-Header ist in Abbildung 1.8 gezeigt. Die Minimallänge eines IP-Pakets
(generisch als Datagramm bezeichnet) beträgt 20 Byte, die Maximallänge inklu12.
13.
Auch Oktett genannt, wobei ein Oktett anders als ein Byte immer 8 Bit lang
ist (die Bytelänge ist gewöhnlich 8 Bit, kann aber auch je nach Computerarchitektur variieren).
Ethernet Jumbo Frames (auch als Extended Frames bezeichnet) vergrößern die maximale Payload auf 9.018 Byte pro Frame.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
13
sive Header kann entsprechend dem Gesamtlängenfeld bis zu 216 – 1 = 16.535
Byte betragen. Das Datagramm beginnt mit einem 4-Bit-Versionsfeld, welches für IPv4 die Dezimalzahl 4 behinhaltet, für IPv6 die Zahl 6. Das folgende
Feld gibt die Größe des IP-Headers eines Pakets in 32-Bit-Worten an. Über
dieses Feld kann ein Netzwerkelement erkennen, wo die Datenpayload beginnt.
Das 8-Bit-Type of Service-Feld (TOS) kann optional und pro Paket eine Prioritätsangabe enthalten (Tabelle 6.2 auf Seite 341 zeigt die verschiedenen Stufen). IP Differentiated Services nach RFC 2474 [407] definieren die Bedeutung des IP-TOS-Feldes neu anhand sogenannter DiffServ-Codepoints
(DSCPs), die Pakete nach Serviceklassen zuordnen. Das Gesamtlängenfeld
wird von Routern benutzt, um das Ende einzelner Datagramme zu erkennen.
0
4-BitVersion
4-BitHeader
8-Bit-Servicetyp
(TOS)
8-Bit-Time-to-Live
(TTL)
16-Bit-Gesamtlänge (in Bytes)
3-BitFlaggen
16-Bit-Identifikation
Abb. 1.8:
IP-Datagramm
31
15 16
13-Bit-Fragment-Offset
16-Bit-Header-Prüfsumme
8-Bit-Protokoll
20 Bytes
32-Bit-IP-Quelladresse
32-Bit-IP-Zieladresse
Optionen (falls gesetzt)
Daten
Das 16-Bit-Identifikationsfeld, das 3-Bit-Flaggenfeld und das 13-Bit-Fragment-Offset-Feld werden in der Fragmentierungsbehandlung (engl.: Fragmentation & Reassembly) benötigt. IP erstellt nur Pakete, die nicht größer der Maximum Transmission Unit (MTU) des darunterliegenden Mediums sind. Für
Ethernet entspricht die MTU 1.500 Byte, wobei IP größere Datenblöcke in
multiple Datagramme fragmentiert und beim Empfänger wieder zusammensetzt. Dabei ist zu beachten, dass Fragmente unterschiedliche Wege nehmen
und zwischengeschaltete Router-Pakete weiter fragmentieren können, sollten
sie feststellen, dass die MTU der folgenden Übertragungsstrecke kleiner als
die der vorherigen ist14.
Das 8-Bit-Time To Live-Feld (TTL) wird in IP zur Verhinderung endlos im
Netzwerk kreisender Pakete benötigt. Eine sendende Datenstation setzt initial
einen TTL-Wert des ausgehenden Pakets. Unter Windows XP/Vista ist der
14.
Das heißt, IP berücksichtigt nicht die kleinste MTU des gesamten Übertragungsweges (engl.: Path MTU), sondern immer nur die nächste relevante
MTU.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
14
1 Erweiterte Grundlagen von Internet-Netzwerken
Standardwert dazu 128, unter Fedora Core 3 Linux 6415. Jeder IP-Router auf
dem Pfad zwischen Sender und Empfänger reduziert den TTL-Wert des Pakets
um eins. Sobald eine TTL von 0 erreicht ist, wird das Paket vom Netz genommen und nicht mehr weitergeleitet.
Das 8-Bit-Protokollfeld wird zur Zuordnung des IP-Pakets zu einem darüberliegenden Protokoll wie TCP und UDP benötigt. Es ist daher dem zuvor bei
der Schicht 2 LLC beschriebenen SAP/SNAP ähnlich.
Die 16-Bit-Header-Prüfsumme versucht, den Header eines IP-Pakets (und
nicht die Payload) abzusichern. Das Verfahren ist relativ einfach und erkennt
verglichen mit dem 32-Bit-Ethernet-CRC nur einen Bruchteil der Fehler. Es
werden dabei die Headerbits in 16-Bit-Blöcken addiert und dann wird das
Einerkomplement gebildet. Die IP-Header-Prüfsumme ist in IPv6 nicht mehr
enthalten, wo alle Fehlersicherung auf dem Link Layer und/oder der Transportschicht und darüber durchgeführt wird.
Die 32-Bit-Quell- und -Zieladresse bezeichnen den Sender und Empfänger.
Das IP-Adressierungsschema wird in der Folgesektion behandelt. Hier ist
sicherheitsrelevant, dass oftmals (fälschlicherweise) Vertrauen in Netze gelegt
wird, die auf IP-Adressen basieren. Da jedoch die IP-Adresse leicht fälschbar
ist und das IP-Protokoll – wie in Abbildung 1.8 gezeigt – keine kryptographischen etc. Authentifizierungs-/Authentizitätsprüfungen einschließt, ist diese
Vertrauensbildung eine Ursache vieler Sicherheitsschwachstellen und Exploits.
Der Zieladresse folgen zehn Optionen betreffend Routing, Security, Zeitstempel, Data-Flow-Kennzeichnung etc. Die Optionen in ihrer Gesamtheit
sind variabler Länge und werden selten oder anders als den Definitionen in
RFC 791 [22] und [31] entsprechend genutzt. Sicherheitsrelevant ist hier das
Feld Security, welches laut dem IP-RFC die in Tabelle 1.2 gezeigten Paketkennzeichnungen erlaubt.
Tab. 1.2: OptionsBits der IP Security
15.
Security-Feld-Bits
Klassifizierung
00000000 00000000
unclassified
11110001 00110101
confidential
01111000 10011010
EFTO
10111100 01001101
MMMM
01011110 00100110
PROG
10101111 00010011
restricted
11010111 10001000
secret
01101011 11000101
top secret
Der aktuelle TTL-Wert kann über das proc filesystem durch
# cat /proc/sys/net/ipv4/ip_default_ttl ausgegeben werden.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
15
8 Bit des Feldes sind nicht definiert und könnten daher frei verwendet werden, was für manche Sicherheits-Policy-Anwendungen von Nutzen wäre. Von
speziellem Interesse sind noch Option 3 (Loose Source Routing) und Option 9
(Strict Source Routing). Hier können für Loose Source IP-Adressen mitgesendet werden, über welche geroutet werden muss. Strict Source Routing gibt den
kompletten Pfad eines Pakets zum Empfänger an. Soweit Router die Unterstützung für diese Optionen implementiert haben, ist es in sicherheitskritischen
Anwendungen eine sinnvolle Maßnahme, anstatt dynamischer Wegewahl
Routen senderseitig explizit mitzusenden. Das Standardverhalten der CiscoIOS-Software ist, Pakete zu verwerfen, bei denen Loose/Strict Source Routing-Kriterien nicht erfüllt werden, und eine ICMP-Nachricht an den Sender zu
generieren.
Das IPv4-Datenfeld ist der Container, in dem die Protokolle der Transportschicht (TCP/UDP etc.) eingebettet werden. Es werden keine weiteren Headerdaten je nach verkapseltem Protokoll gesetzt.
IPv6 [49] unterscheidet sich von IPv4 in den folgenden Merkmalen [6]:
IPv6
• Adressraum: IPv6 hat im Vergleich zu IPv4 128 Bit anstatt nur 32 Bit
38
Adresslänge, was 3,4 ⋅ 10 möglichen Adressen entspricht.
• Adressallokation: Durch den immensen Adressraum können Adressen
in IPv6 geografisch-hierarchisch vergeben werden.
• Lokale Adressvergabe: Adressen können in IPv6 automatisch (d.h. anders als IPv4 statisch und dynamisch mittels DHCP) vergeben werden.
Ein IPv6-Host kann sich autark eine auf der MAC-Adresse basierende
IP-Adresse geben bzw. mit angrenzenden Nodes und Routern zur Abstimmung der Adresse kommunizieren.
• Die Notation von IPv6-Adressen ist nicht mehr die von IPv4 gewohnten vier mit Punkt getrennten Dezimalzahlen (à 8 Bit) wie 192.168.1.1.
IPv6 benutzt acht durch Doppelpunkt getrennte Hexadezimalzahlen à
16 Bit wie zum Beispiel die Adresse 2002:89d0:e02e::89d0:e02e für
www.ipv6.cz.
• IPv6 beinhaltet Sicherheitsfunktionen, die auf IPSec basieren (siehe
dazu auch „IPSec“ auf Seite 346). Das heißt, die erweiterte Sicherheit
von IPv6 entspricht IPv4 gemeinsam mit IPSec mit dessen Authentication Header, Encapsulating Security Payload etc. Es ist verglichen mit
IPv4 daher nur sicherer, wenn die IPSec-basierten Sicherheitsfunktionen auch tatsächlich verwendet werden. Der wichtige Bereich der
Schlüsselhierarchien ist beispielsweise in IPv6 noch nicht standardisiert, was die Sicherheits-Interoperabilität mehrerer IPv6-Netze derzeit
erschwert.
• IPv6 unterstützt QoS über sogenannte Flow Labels. Hier werden Sequenzen an Pakete, die einer Dienstklasse zugehörig sind, entsprechend
markiert. Router können sie entsprechend der Priorität weiterleiten.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
16
1 Erweiterte Grundlagen von Internet-Netzwerken
• Das Protokoll unterstreicht Effizienz, indem ein Minimum an Headerdaten im Basisheader steht und zusätzliche und optionale Header flexibel in sogenannte Extension Headers geschrieben werden können.
• Die in IPv4 vorhandene 16-Bit-Header-Prüfsumme wurde gestrichen,
da die Zuverlässigkeitsprüfung effizienter auf der Schicht 4 – über TCP
– und zusätzlich weiter darüberliegendenden Protokollen durchgeführt
werden kann.
• Das neu hinzugekommene IPv6-Neighbor Discovery-(ND)-Protokoll
[50] beinhaltet die Funktionen des IPv4-ARP-Protokolls und hilft zusätzlich bei Discovery von Nodes an einem LAN-Segment und bei der
automatischen Adressvergabe.
• IPv6 ist erweiterbar, indem multiple Header aneinandergereiht werden
können und damit zusätzliche Informationen wie zum Beispiel Sicherheitsinformationen auf der Netzwerkschicht mit jedem Paket mitgesendet werden können.
• IPv4 Broadcast und Multicast wurde um Anycast (siehe auch „DNS“
auf Seite 41) erweitert.
IP-Adressierung
Die IP-Adressierung dient dazu, Hosts auf der Vermittlungsschicht (eindeutig)
ansprechen zu können und die Wegewahl von IP-Paketen zwischen Sender
und Empfänger zu unterstützen (Routing bzw. der Ablauf der Wegewahl wird
in Sektion 1.2 erklärt). Man unterscheidet in der IPv4-Adressierung zwischen
Unicast-, Multicast- und Broadcast-Adressen. Unicast adressiert einen einzelnen Host. Multicast spricht eine Gruppe von Hosts an und Broadcast alle Hosts
eines Subnets (zumeist äquivalent mit einem LAN-Segment). Weiterhin existieren drei verschiedene im Folgenden vorgestellte IPv4-Adressierungsvarianten: Standardadressen, Subnetzadressen (engl.: Subnetting) und das sogenannte Classless Inter-Domain Routing (CIDR) (engl.: Supernetting).
Eine IPv4-Adresse ist, wie in Abbildung 1.9 gezeigt, 32 Bit lang und setzt
sich aus vier 8-Bit-Blöcken zusammen. Die Angabe von IPv4-Adressen erfolgt
wie zuvor beschrieben in vier mit Punkt getrennten Dezimalzahlen – so zum
Beispiel für die private Adresse 192.168.1.1. Sie teilt sich weiter in eine Netzwerkadresse (engl.: Network Number) und eine Hostadresse (engl.: Host
Address). Erstere wird im Folgenden als netid und letztere als hostid bezeichnet.
Abb. 1.9: IPAdressformat
32 Bit
8 Bit
8 Bit
Netzwerkadresse
8 Bit
8 Bit
Hostadresse
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
17
Die netid ist die Adresse eines Netzwerks, der Hosts zugeordnet sind. Die
Aufteilung des 32-Bit-Adressfeldes in netid und hostid ist variabel, was es erlaubt, die Anzahl der möglichen Netze und korrespondierend die der pro Netz
möglichen Hosts den jeweiligen Anforderungen anzupassen. In der IPv4-Standardadressierung gibt es vier Hauptadressklassen und eine experimentelle
Klasse, bei denen die netid-hostid-Aufteilung einem fixen Schema unterliegt.
Abbildung 1.10 zeigt die Adressklassen, welche von A bis E nummeriert und
durch die führenden Bits bestimmt sind. Adressklasse A ist mit einer Zuordnung von 7 Bit für die netid und 24 Bit für die hostid abgebildet. Das heißt,
dass mit ihr bis zu 128 Netze definiert werden und pro Netz
24
2 – 2 = 1677214 Hosts16 beinhaltet sein können. Klasse-A-Adressen wurden demnach initial von dem Verwalter Internet Assigned Numbers Authority
(IANA) [66] nur für große Organisationen ausgehändigt, die sich auch früh um
damals noch kostenlose Adressen bemüht hatten. Eine Liste von Klasse-AAdressbesitzern kann in [68] gefunden werden. Eine der wenigen europäischen Organisationen mit Klasse-A-Adresse sind die Société Internationale de
Télécommunications Aéronautiques (SITA) und DaimlerChrysler. Erstere hat
zum Beispiel den Klasse-A-Adressbereich von 57.0.0.0 – 57.255.255.255 von
der IANA zugewiesen bekommen, Daimler 53.0.0.0 – 53.255.255.25517.
Nicht zuletzt durch die aus der frühen Vergabepraxis resultierendes Adressknappheit ist aber die am häufigsten anzutreffende Adressklasse C.
7 Bits
24 Bits
netid
hostid
Klasse A
0
Klasse B
1
0
Klasse C
1
1
0
Klasse D
1
1
1
0
Klasse E
1
1
1
1
Abb. 1.10: InternetAdressklassen
14 Bits
16 Bits
netid
hostid
21 Bits
8 Bits
netid
hostid
28 Bits
Multicast-Gruppen-ID
28 Bits
Für künftige Nutzung reserviert
Die Adressklasse C teilt im Gegenzug nur 8 Bit für die hostid zu, was bis zu
254 Hosts erlaubt. Klasse-D-Adressen sind für Multicast reserviert. Tabelle
1.3 zeigt die Adressbereiche der einzelnen Adressklassen.
16.
17.
Der Abzug von 2 Hosts ergibt sich daraus, dass die niedrigste und die
höchste Adresse ein spezielle Bedeutung haben: Die Zahl 0 bezieht sich
auf den eigenen Host und 255 bedeutet, dass sich eine Adresse auf das
gesamte Subnetz bezieht – die höchstmögliche Hostadresse ist eine
Broadcast-Adresse.
Die Adressdatenbank kann zum Beispiel über [73] abgefragt werden.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
18
1 Erweiterte Grundlagen von Internet-Netzwerken
Tab. 1.3: IPAdressbereiche
Klasse
Bereich (von – bis)
A
0.0.0.0
B
128.0.0.0
191.255.255.255.255
C
192.0.0.0
223.255.255.255.255
D
224.0.0.0
239.255.255.255.255
E
240.0.0.0
255.255.255.255.255
127.255.255.255.255
Der Großteil der obigen Adressen sind standardöffentlichen Adressen zugeordnet. Teilbereiche des Adressraumes sind allerdings private Adressen, für
spezielle Anwendungen oder für Loopback und Multicast reserviert. Die wichtigsten Adressen dazu sind:
• 127.0.0.1 als lokale Loopback-Adresse: Alle an diese IP geschickten
Pakete müssen lokal an den Sender retourniert werden.18
• Der private Klasse-A-Bereich 10.0.0.0 – 10.255.255.255
• Der private Klasse-B-Bereich 172.16.0.0 – 172.31.255.255
• Der private Klasse-C-Bereich 192.168.0.0 – 192.168.255.255
Zusätzlich haben die Zahlen 0 und 255 spezielle Bedeutungen: 0 bezeichnet
den eigenen Host/das eigene Netzwerk, 255 bedeutet ein Broadcast zu allen
Hosts in der Standardadressierung. Zum Beispiel sendet unterer Befehl unter
Linux ein ping an alle Hosts im lokalen Subnetz19:
# ping -b 192.168.1.255
Subnetz-Adressierung
Subnetze erlauben die Partitionierung von Klasse-A-, -B- und -C-Adressen
in Untergruppen. Subnetze sind als Antwort auf hohe Granularität der Adressvergabe aus den Adressklassen A – C und der daraus resultierenden Ineffizienz
entwickelt worden. Sie werden für private Netze eingesetzt und in RFC 950
[25] beschrieben. Mittels Subnetz-Adressierung können lokale Netzwerkadministratoren zugewiesene Klasse-B-, Klasse-C-Adressen in kleinere Teile
aufteilen. Zum Beispiel kann, anstatt für 4 Netze à 10 Hosts 4 separate Klasse-
18.
19.
Diese Adresse ist in den meisten Betriebssystemen als eigene Loopback
Device implementiert, d.h., sie ist damit genauso ansprechbar wie ein
Ethernet Interface. Unter Fedora Core 3 Linux heißt die Loopback Device
lo und wird über den ifconfig-Befehl angezeigt. Unter Windows XP ist
ordnungsgemäß 127.0.0.1 geloopt, es muss aber der „Microsoft Loopback
Adapter“ eigens über den Hardware-Assistent und Neue Hardware Hinzufügen eingerichtet werden. Der Loopback Adapter steht dann unter der
privaten Adresse 192.168.68.1 und nicht unter 127.x.y.z zur Verfügung.
Unter Subnetz wird sowohl die folgende Subnetzadresse subnetid als
auch generisch ein nicht durch Subnetz-Adressierung partitioniertes Teilnetz verstanden.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
19
C-Adressen zu benötigen, eine Klasse-C-Adresse in 4 Subnetze mit jeweils 64
Hosts Kapazität aufgeteilt werden.
Abbildung 1.11 zeigt das Schema der Subnetz-Adressierung anhand einer
Klasse-B-Adresse. Das ohne Subnetz ungeteilte Feld der Hostadresse wird hier
in ein Feld Subnetzwerknummer (subnetid im Folgenden) und Hostadresse aufgteilet.
16 Bits
Klasse B
netid = 140.252
8 Bits
8 Bits
subnetid
hostid
Abb. 1.11: IP-Subnetz-Adressierung
Die sogenannte Netzmaske bzw. Subnetzmaske, welche die Aufteilung bestimmt, wird in einer der IP-Adresse ähnlichen Notation angegeben. Sie ist
zum Beispiel 255.255.255.0, falls keine Subnetz-Adressierung verwendet
wird. Eine alternative Notation, die auch in diesem Buch im Folgenden verwendet wird, ist die gemeinsame Angabe der IP-Adresse und Subnetz-Adresse
in der Form <IP-Adresse>/<Subnetzbits in Dezimaldarstellung>, so zum Beispiel 192.168.1.1/24 für eine Klasse-C-Adresse ohne Subnetz-Adressierung.
Ein Subnetz wird dann anhand seiner ersten Adresse bezeichnet werden – so
zum Beispiel 192.168.1.0/26, 192.168.1.64/26 etc. Die Subnetzmaske ist damit die Angabe, wie viele Bits einer Nicht-Subnetz-IP-Hostadresse der subnetid zuzuordnen sind. Die Regel ist, dass eine binäre „1“ in der Subnetzmaske
die Stelle in der IPv4-32-Bit-Adresse für eine Netzwerkadresse reserviert. Eine „0“ in der Subnetzmaske bedeutet Zuteilung zu einer Hostadresse. Die Bits
„1“ des Netzwerkadressenteils der Subnetzmaske müssen kontinuierlich sein,
so zum Beispiel „11111111111111111111111100000000“ für ein Klasse-CNetz, welches nicht weiter partitioniert ist und damit einen 24 Bit breiten Netzwerk-Adressraum und einen 8 Bit breiten Host-Adressraum besitzt.
Netzmaske
Das untere Beispiel teilt ein zugeordnetes Klasse-C-Netzwerk entsprechend
den vorherigen Anforderungen in vier Netze à zehn Hosts auf und zeigt dabei,
wie sich die Partitionierung anhand eines der vier Subnetze aus der binären
Darstellung der netid und subnetid ableitet. Das im folgenden Beispiel verwendete zweite Subnetz hat die Adresse 192.168.1.64/26. Die exemplarisch
aus dem Adressbereich gewählte IP-Adresse ist 192.168.1.10.
Beispiel zur SubnetzAdressierung
Oktett 1
Oktett 2
Oktett 3
Oktett 4
1
Netzmaske binär
11111111
11111111
11111111
11000000
2
Netzmaske dezimal
255
255
255
192
3
IP-Adresse dezimal
192
168
1
10
Tab. 1.4: Beispiel
zur SubnetzAdressierung
Subnetz 2: 192.168.1.65 - 192.168.1.126
IP-Adresse binär
11000000
10101000
00000001
00001010
5
Subnetz-2-Basisadresse binär
11111111
11111111
11111111
01000000
6
netid binär
11000000
10101000
00000001
00000000
7
netid dezimal
192
168
1
0
netid
4
logisches AND
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1 Erweiterte Grundlagen von Internet-Netzwerken
IP-Adresse binär
11000000
10101000
00000001
00001010
9
Subnetz-2-Basisadresse binära
00000000
00000000
00000000
10111111
10
hostid binär
00000000
00000000
00000000
00001010
11
hostid dezimal
0
0
0
10
12
Subnetz-2-Basisadresse binär
11000000
10101000
00000001
01000000
hostid
00000000
00000000
00000000
00111111
hostid
8
13
14
15
Broadcast-Adresse
20
logisches AND
logisches XOR
Broadcast-Adresse
binär
11000000
10101000
00000001
01111111
Broadcast-Adresse
dezimal
192
168
1
127
a. Invers der Subnetz-Basisadresse
Die erste Zeile in Tabelle 1.4 ist die Netzmaske in Binärform, welche sowohl die Adressklasse als auch die Subnetzeinteilung bestimmt. Die zweite
Zeile zeigt letztere Netzmaske in Dezimaldarstellung. Zeile 3 ist eine frei gewählte IP-Adresse aus dem Adressbereich des zweiten Subnetzes:
192.168.1.65 – 192.168.1.126. In der Folgenden wird für eines der vier möglichen Subnetze netid, hostid und die Broadcast-Adresse bestimmt. Da vier
Netze gewünscht werden und es sich um ein partitioniertes Klasse-C-Netz
handelt, wird das letzte Oktett aufgeteilt: 2 Bit für die subnetid (= 4 Subnetze)
und 6 Bit für die hostid (= maximal 62 Hosts pro Subnetz). Zeile 5 zeigt die
Subnetz-Basisadresse unseres zweiten Subnets. Durch logische Verundung
aus der IP-Adresse und der Subnetz-Basisadresse ergibt sich die netid in Zeile
6 und 7. Die hostid aus Zeile 10 und 11 wird aus der IP-Adresse und der invertierten Subnetz Basisadresse gebildet. Um an alle Nodes dieses zweiten Subnetzes zu broadcasten, kann in der Subnetz-Adressierung durch die Adressaufteilung natürlich nicht die spezielle Adresse 255 verwendet werden. Eine entsprechende Broadcast-Adresse resultiert aus einem logischen XOR aus der
Subnetz-2-Basisadresse und der hostid und ist in Zeile 14 und 15 gezeigt. In
der Praxis sind Netzwerkadressenrechner wie in [25] hilfreich bei der Partitionierung von Subnetzen.
Durch dieselbe Rechnung wie für Subnetz 2 ergeben sich die restlichen drei
Subnetze unserer 4er Partitionierung aus dem Boole’schen AND aus der invertierten Subnetzadresse und der IP-Adresse: Das vierte Oktett für Subnetz 1 beginnt mit 00, obiges Subnetz 2 mit 01, Subnetz 3 mit 10 und Subnetz 4 mit 00.
Die resultierenden dezimalen Adressbereiche sind:
• Subnetz 1: 192.168.1.1-192.168.1.62
• Subnetz 2: 192.168.1.65-192.168.1.126
• Subnetz 3: 192.168.1.129-192.168.1.190
• Subnetz 4: 192.168.1.193-192.168.1.254
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
21
Die nicht als reguläre IP-Adressen verwendbaren 192.168.1.0, 192.168.1.63
und 192.168.1.64 im ersten Subnetz ergeben sich aus den zuvor besprochenen
speziellen Bedeutungen für die Zahlen 0 (binär: 00000000) und 255 (binär:
11111111). Der Nachteil der Subnetz-Adressierung ist zum einen, dass alle resultierenden Subnetze gleich groß sind. Weiterhin können Subnetze nicht kaskadiert werden, was der effizienten Adressallokation auch entgegensteht.
Die Lösung zu dem Kaskadierungsproblem ist das Variable Length Subnet
Masking (VLSM) [45]. Es ist eine Erweiterung zur Subnetz-Adressierung, bei der
ein schon partitioniertes Subnetz weiter geteilt werden kann. Eine weitere VLSMPartitionierung anhand unseres Beispielsubnetzes 192.168.1.64/26 ist wie folgt:
Wenn anstatt eines Subnetzes 192.168.1.64/26 2 separate Subnetze gewünscht
sind, wird einfach ein Bit, das zuvor zur hostid gehört hatte, in eine verlängerte
subnetid eingefügt. Das zusätzliche Bit der netid erlaubt kaskadierte zwei Subnetze zu bezeichnen, die dann folgende Adressen haben: 192.168.1.64/27 und
192.168.1.96/27. VLSM wird von TCP/IP-Stacks unter Windows und Linux unterstützt sowie von Routern und Routing Software wie OSPF und RIPv2.
Variable Length
Subnet Masking
(VLSM)
Während Subnetz-Adressierung hilft, private Netze effizient zu partitionieren, bringt das Classless Interdomain Routing (CIDR) dasselbe Konzept in die
öffentliche Internet-Adressierung. Das Rational ist dasselbe, wobei der große
Sprung von Klasse-C-Adressen mit 254 Hosts zu Klasse-B-Adressen mit
65.534 Hosts hier weitere Partitionierung besonders notwendig macht. CIDR
ist in den RFCs 1517-1520 [35], [36], [37] und [38] spezifiziert. Es partitioniert genauso variabel bitweise wie das zuletzt besprochene VLSM. Zusätzlich
inkludiert CIDR Route Aggregation (auch Supernetting genannt) – oder die
Fähigkeit, multiple Netze unter einer durch die Netzmaske definierten Adresse
zusammenzufassen. CIDR Route Aggregation ist ein wesentlicher Faktor, der
zur Skalierbarkeit des Internets beiträgt. Ohne Supernetting müssten Router
wesentlich mehr Wege in ihren Routingtabellen führen als bei CIDR, wo eine
IP-Adresse + Netzmaske eine Gruppe an Netzen repräsentieren kann.
Classless
Interdomain Routing
CIDR-Subnetz-Adressierung ermöglicht es, Adressräume hierarchisch bzw.
geografisch strukturiert zu gestalten. CIDR berücksichtigt die fünf Klassen der
Standard-Adressierung nicht, d.h., die ersten 3 Bit einer IP-Adresse werden
Teil der CIDR-Adressierung. Letztere basiert auf einem kontinuierlichen sogenannten Präfix, das einer Netzmaske entspricht und von 13 Bit bis 27 Bit
lang sein kann. Zum Beispiel ist das Präfix einer CIDR-Adresse, welche 14 Bit
für die netid reserviert, aliquot zum vorherigen Subnetz-Adressierungsbeispiel
192.168.1.1/14. Die CIDR-Notation wird sowohl in IPv6 als auch in IPv4 verwendet. Sie wird allerdings in Windows und Linux noch nicht von allen Programmen alternativ zur Subnetz-Notation akzeptiert. CIDR ist in aktuellen
Routern und Routing-Software standardmäßig verfügbar.
Die Adressvergabe in Europa ist von der IANA an die „regionalen“ Internet
Registry Réseaux IP Européens (RIPE) [72] delegiert worden. Lokale Internet
Service Provider (ISPs) erhalten ihre Adressallokationen geblockt von RIPE
und geben sie nach Bedarf an ihre Kunden weiter. Abbildung 1.12 zeigt die
Hierarchie der mit der Adressvergabe befassten Organisationen.
IP-Adressvergabe
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
22
1 Erweiterte Grundlagen von Internet-Netzwerken
Abb. 1.12: IPAdressvergabeorganisationen
IANA
RIPE
ISPs
IPv4-Adressen sind für ISPs kostenfrei, sind transferierbar, aber nicht direkt
handelbar, und es liegt im Ermessen der drei Organisationen, Adressen zuzuordnen. RIPE vergibt ebenso IPv6-Adressen aus dem Bereich 2000::/3 an regionale Registrare, welche dann /48 IPv6-Adressen an ihre Kunden weitergeben (womit genügend Adressraum für jeden Endbenutzer vorhanden ist, um
keine dynamischen Adressen mehr zu benötigen).
UDP
Das User Datagram Protocol (UDP) ist ein Protokoll der Transportschicht
(Schicht 4) und dient zum verbindungslosen End-to-end-Transport von Datagrammen über IP. Das Format des UDP-Datagramms ist in Abbildung 1.13 gezeigt. Es setzt sich aus der Quell- und Zielportnummer, dem UDP-Längenfeld,
dem Prüfsummenfeld und der eigentlichen Datenpayload zusammen. Das
Längenfeld gibt die Summe der Header- und Datenpayloadlängen an. Es ist redundant [10], da dieselbe Information in IP als Länge der Datenpayload mitgeführt wird20. Die 16-Bit-UDP-Prüfsumme wird über Header und Datenpayload gebildet (vergleiche IP, wo nur der Header geschützt wird). Das UDP
Prüfsummenverfahren ist ähnlich dem TCP-Prüfsummenverfahren und der IPHeader-Prüfsumme, wo in 16-Bit-Blöcken addiert und dann das Einerkomplement gebildet wird. Ein wesentlicher Unterschied ist, dass in der Prüfsummenbildung zu dem UDP-Header noch ein sogenannter Pseudoheader hinzugefügt
wird, welcher redundant die IP-Quell- und -Zieladresse, das Protokoll in 8 Bit
sowie die UDP-Länge in 16 Bit inkludiert.
Abb. 1.13:
UDP-Header
1
15 16
31
16-Bit-Ziel-Portnummer
16-Bit-Quell-Portnummer
8 Bytes
16-Bit-UDP-Prüfsumme
16-Bit-UDP-Länge
Daten (falls vorhanden) |
20.
Inhalt des IP-Gesamtlängenfeldes minus des Inhalts des IP-4-Bit-Headerfeldes, welches die Größe des IP-Headers in 32-Bit-Worten angibt.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
Die UDP-Prüfsumme ist optional, das heißt beim Öffnen eines Sockets kann
mittels der Option SO_NO_CHECK bestimmt werden, ob geprüft werden soll
oder nicht. Wird ein UDP-Datagramm empfangen, bei dem die Prüfsumme
fehlerhaft ist, wird es verworfen. Als weiterer Unterscheidungspunkt zu verbindungsorientierten Protokollen sendet ein Empfänger im verbindungslosen
UDP nach Verwerfen eines fehlerhaften Datagramms keine Nachricht an den
Sender. Beispiele für Protokolle, wo die Prüfsummenbildung deaktiviert war,
sind NFS und DNS, obwohl beide es mittlerweile aktiviert haben. Das IPv6
RFC 2560 [49] schreibt sogar vor, UDP nur mit Prüfsumme zu betreiben. Ein
Nachteil von Prüfsummenbildung bzw. dem Verwerfen inkonsistenter Datagramme ist jedoch, dass höhergeordnete Protokolle wie zum Beispiel für Audiostream Fehlerkorrekturmechanismen einbringen könnten, dazu aber die
(verworfenen) Pakete benötigen würden. Ein weiterer Nachteil ist der entstehdende Overhead der Prüfsummenberechnung. Bei niedrigen und mittleren Datenraten wie 10 und 100 Mbit/s ist dies unerheblich, jedoch bei >1 Gbit/s beginnt der sogenannte Packet Processing Overhead ohne Hardware-Unterstützung für generische Prozessoren erheblich zu werden.
23
UDP-Prüfsumme
UDP unterscheidet sich entsprechend Tabelle 1.1 gegenüber dem verbindungsorientierten TCP weiterhin darin, dass die Datagrammzustellung und die
Paketsequenz nicht garantiert sind und Fehlererkennung optional ist (d.h. abgeschaltet werden kann). Das Protokoll erlaubt anders als TCP auch Multicast
und verursacht nur sehr geringen Overhead seitens der Behandlung durch den
TCP/IP-Stack des Betriebssystems. Damit eignet es sich sehr gut als Transportprotokoll für Audio- und Videostreams (hier wird häufig das Real Time
Protocol (RTP) verwendet[46]). Neben dem Network File System (NFS),
DNS und RTP sind weitere Protokolle, welche auf UDP aufbauen, das Simple
Network Management Protocol (SNMP), das Bootstrap Protocol (BOOTP),
das Dynamic Host Configuration Protocol (DHCP) und das Trivial File
Transfer Protocol (TFTP).
TCP
Das Transmission Core Protocol (TCP) ist neben IP das zweite Fundament
von TCP/IP. Es ist verbindungsorientiert, fehlergesichert und unterstützt
Flusskontrolle zwischen Sender und Empfänger. TCP wird von den meisten
Programmen der Anwendungsschicht wie http und (s)ftp verwendet. Die Unterscheidungsmerkmale von TCP gegenüber UDP sind in Tabelle 1.1 gelistet.
Die Datagrammeinheit bei TCP sind sogenannte Segmente. Die Verkapselung von TCP entspricht der von UDP insofern, dass, wie in Abbildung 1.14
gezeigt, der TCP-Header und die TCP-Datenpayload nach dem IP-Header eingefügt werden. Die minimale Länge des TCP-Headers ist 20 Byte. Der IPplus-TCP-Header ist damit minimal 40 Byte lang, womit die maximale TCPSegmentgröße der MTU des häufigsten Transportmediums Ethernet minus
den 40 Byte, d.h. 1.500 Byte – 40 Byte = 1.460 Byte, entspricht.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
24
1 Erweiterte Grundlagen von Internet-Netzwerken
Abb. 1.14: TCPVerkapselung
Das TCP-Datagramm von Abbildung 1.15 besteht aus jeweils 16-Bit-Quellund -Zielportnummern, der 32-Bit-Sequenz- und Bestätigungsnummer und einem 4-Bit-Header-Längenfeld, gefolgt von 6 für zukünftige Anwendungen reservierten Bits. Letztere sind bis heute nicht definiert worden und sollten darum immer auf 0 gestellt sein. Sind sie es nicht, würden manche Intrusion Detection Systems (IDS) dies als TCP-Anomalie werten. Es folgen 6 Bits, welche
im TCP-Handshake und der Flusskontrolle benötigte Flags repräsentieren. Im
Einzelnen sind dies:
• URG (Urgent): Eine gesetzte URG-Flag sagt der empfangenden Anwendung, dass Daten priorisiert zu behandeln sind. Das folgende
16-Bit-Urgent Pointer-Dringlichkeitsfeld ist ein Zeiger auf das letzte
Oktett der dringlichen Daten. URG wird nur selten verwendet, so zum
Beispiel in den interaktiven Applikationen telnet und rlogin. Der URGPointer war Ziel eines frühen DOS-Exploits, bei dem eine gesetzte Flag
und ein inkorrekter Pointer zu Abstürzen führten [74].
TCP-Flags
• ACK (Acknowledgement): TCP bestätigt mittels ACK den Erhalt von
Daten. Wird einem Sender ein Datagramm mit der nächsten erwarteten
Bestätigungsnummer und gesetzter ACK-Flag gesendet, nimmt er alle
darunterliegenden Nummern als bestätigt an. Wird ein TCP-Segment
innerhalb einer (variablen) Zeit nicht bestätigt21, dann weiß ein Sender,
dass es nicht empfangen wurde, und sendet es erneut.
• PSH (Push): Eine gesetzte Push-Flag bewirkt, dass der TCP-Stack das
eingehende Segment sofort an die Anwendung ohne weiteres Puffern
übergibt.
• RST (Reset): Das RST-Bit ist gleichbedeutend mit einer sofortigen
Auflösung der TCP-Verbindung. Dies sollte nicht der normale Weg
sein, eine TCP-Verbindung zu beenden – dafür ist die FIN-Flag vorhanden. RST wird zum Beispiel gesendet, wenn ein TCP/IP-Stack eingehende Daten auf einem Port registriert, hinter dem kein SocketListener (mehr) ist. Der Stack retourniert dann ein Segment mit gesetztem RST-Bit an den Sender. Das RST-Bit ist sicherheitsrelevant in der
„TCP-Sequenznummern-Attacke“ auf Seite 178.
• SYN (Synchronize): SYN-Flags kommen zweimal im TCP-Verbindungsaufbau vor; wie in Abbildung 1.16 gezeigt wird ein SYN in der
ursprünglichen TCP-Verbindungsaufbauanforderung des Clients zum
21.
Die Wartezeit ist eine Funktion, wie lange bisherige Bestätigungen benötigt haben.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
25
Server gesendet. Der Server bestätigt das erste SYN mit einem ACK und
sendet von sich aus ein Segment mit gesetztem SYN-Bit zum Client.
SYNs sind mit zwei TCP-Zuständen von Abbildung 1.19 assoziiert: dem
SYN_RCVD- und dem SYN_SENT-TCP-Zustand. SYNs sind sicherheitsrelevant in der Attacke „TCP-SYN-Flooding“ auf Seite 185.
• FIN (Finish): Das FIN-Bit wird in dem ordentlichen (engl.: graceful)
Abbau einer TCP-Verbindung gesetzt. Der Abbau von TCP-Verbindungen muss bei Vollduplexbetrieb für jede der beiden Richtungen separat erfolgen, womit in Summe zwei Segmente mit gesetztem FIN-Bit
übertragen werden. Abbildung 1.17 verdeutlicht den Handshake zwischen dem initialen Client-FIN, Server-ACK für das FIN und vom Server gesendetem FIN.
Abb. 1.15:
TCP-Header
Das den TCP-Flags folgende Feld in Abbildung 1.15 ist die 16-Bit-Fenstergröße. Fenster bzw. Datenbuffer werden in TCP im Rahmen des Sliding-Window-Protokolls benötigt (siehe „TCP Windows“ auf Seite 181). Die Fenstergröße entspricht den Daten, welche ein Empfänger bereit ist aufzunehmen, bevor der empfangene Block mit einem ACK bestätigt werden muss. Sie gibt
weiterhin den Bereich der validen Sequenznummern über die aktuelle hinaus
an.
In das 16-Bit-TCP-Prüfsummenfeld wird eine Prüfsumme zur Fehlererkennung aus IP- und TCP-Header und Datenpayload eingetragen – genauso wie
für UDP zuvor (und vergleichen Sie erneut IP, wo nur der Header geschützt
wird). Das Verfahren zur Fehlererkennung dazu durchläuft die folgenden
Schritte:
TCPPrüfsummenbildung
• Bildung eines sogenannten Pseudoheaders aus den IP-Headerdaten mit
der IP-Quell- und -Zieladresse, Protokollfeld und der im TCP-Header
und Datenlänge.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
26
1 Erweiterte Grundlagen von Internet-Netzwerken
• Einerkomplementsumme (engl.: One's Complement Sum) aller zu sichernden Daten in 16-Bit-Blöcken. Die zu sichernden Daten sind der
Pseudoheader, der TCP-Header und die TCP-Payload. Die Einerkomplementsumme wird derart gebildet, dass, wenn sich bei der Addition
zweier 16-Bit-Zahlen ein Übertragsbit ergibt, dieses zurück zum geringstwertigen Bit (engl.: Least Significant Bit – LSB) addiert wird. Ein
Beispiel für zwei 16-Bit-Wörter ist:
Einerkomplementsumme
1101
1011
1100
0101
1011
0111
0111
1111
1100 1
001 0
001 1
0110
1
• Das Prüfsummenfeld selbst wird in der blockweisen Addition mit Nullen ausgefüllt (engl.: padded), genauso wie freie Stellen bei einer ungeraden Anzahl an 16-Bit-Wörtern.
• Schlussendlich wird die Einerkomplementsumme negiert (anderer
Ausdruck für die Bildung eines Einerkomplements von Dualzahlen),
was die Prüfsumme ergibt.
Die empfängerseite Kontrolle der Prüfsumme beinhaltet dieselbe Bildung
einer Einerkomplementsumme der empfangenen Daten, allerdings diesmal inklusive des Prüfsummenfeldes. Ist die Summe durchgehende Einsen (Hexadezimal 0xFFFF), dann ist die Prüfsumme korrekt. Divergiert die Summe, dann
wird das TCP-Segment nicht mit ACK bestätigt, was die erneute Übertragung
des Segments vom Sender zum Empfänger zur Folge hat.
Der TCP-Prüfsummenalgorithmus ist ein relativ einfaches Verfahren zur
Fehlererkennung. Es hat aber verglichen mit anderen Methoden wie der des
Cyclic Redundancy Checks (CRC) eine relativ geringe Fehlererkennungsrate
(engl.: Error Detection Rate). Die Wahrscheinlichkeit des Nichterkennens eines korrumpierten Pakets bzw. TCP-Segments (engl.: Checksum Escape) und
damit der Weitergabe fehlerhafter Daten ist relativ hoch. Im Vergleich erkennt
das im Ethernet eingesetzte CRC-32-Verfahren mit 32 Sicherungsbits Fehler
wesentlicher effektiver.
Die 16-Bit-TCP-Prüfsumme erkennt [12]:
• alle weniger als 15 Bit langen Sequenzen an fehlerhaften Bits
• alle 16-Bit-Fehler, bei denen 16 aufeinanderfolgende binäre Einsen
Null werden und umgekehrt
Für alle anderen Fehlerfälle wird bei gleichförmig verteilten Daten (d.h.,
dass zum Beispiel die Frequenz aller einzelnen Buchstaben bei der Übertragung von Texten über die gesamte Zeit gleich ist) nur eine Rate von 1 in
16
2 nicht erkannten fehlerhaften Paketen erwartet [12], [8]. Die Anzahl der tatsächlich durchgelassenen Pakete mit Checksum Escapes ergibt sich als Produkt aus letzterer TCP-Prüfsummenfehlerrate und der Fehlerrate der auf dem
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
27
Link Layer liegenden Datensicherung. Die nicht allzu gute Erkennungsrate der
TCP-Prüfsumme bedingt, dass die tatsächliche Rate an Checksum Escapes
primär von der Sicherung des Link Layers abhängig ist.
Tatsächliche bei Internet-Verkehr gemessene Fehlerraten zeigten sich aus
zum Beispiel in [8] mit einer Rate von 1 aus 5.000 an fehlerhaften und vom
Linklayer nicht korrigierten Paketen22. Extrapoliert würde mit obigen
TCP-Prüfsummenlimitationen ca. jedes dreihundertmillionste Paket
16
6
( 2 ⋅ 5000 ≈ 300 ⋅ 10 ) unerkannt fehlerhaft weiterverarbeitet werden. Da
diese Pakete zum Beispiel zur unerkannten Veränderung von Datenbankinhalten, von Textdateien etc. führen können, zeigt sich die Wichtigkeit der
Fehlerkorrektur auf Ebene des Link Layers. Ethernet mit CRC-32 bietet im
Vergleich zu den in der Messung verwendeten T1-Leitungen (T-Träger 1) im
Zugangsnetz wesentlich besseren Schutz. Genauso kann eine zusätzliche
Point-to-Point Protocol (PPP)-Schicht (mit CRC-16) die Fehlererkennung
verbessern. Allerdings induzieren nicht nur die Übertragungsstrecken Fehler.
Wie von Stone und Partridge [11] gemessen, sind genauso die Datenstationen
und Router wesentliche Fehlerquellen. Ein Mitgrund dürfte die dort nicht vorhandene Link-Layer-CRC-Sicherung sein, da sich zum Beispiel in Routern
Daten transient in Speichern befinden können. Die Gegenmaßnahme ist auch
hier der zusätzliche Einzug von Schichten/Protokollen mit Fehlererkennung
und -korrektur. So kann im Falle von Schicht-2-Virtual Private Networks
(VPNs) ein CRC-gesicherter Link Layer über eine existierende IP-Infrastruktur transportiert werden, womit sich die Fehlersicherung verstärkt.
TCP beinhaltet neben der Prüfsumme noch zusätzliche Mechanismen, um
Fehler zu erkennen. Zum einen bietet die Sequenzierung durch die zwei
32-Bit-Sequenz- und -Bestätigungsnummern eine Möglichkeit, fehlende Segmente sofort zu erkennen und ab einem Schwellenwert weg von normalen
Out-of-Sequence-Empfang hin auf Fehler zu schließen. Ein weiteres Verfahren ist der Fast Retransmit and Recovery-Algorithmus (FRR). Hier wird bei
verlorenen Segmenten nicht auf den Timeout gewartet, sondern nach Erkennung sofort drei doppelte ACKs an den Sender geschickt, der das vorherige
Segment dann erneut überträgt.
Der 16 Bit Urgent Pointer im Dringlichkeitsfeld wird von der zuvor besprochenen URG-Flag genutzt.
Das TCP-Optionenfeld ist 0–44 Oktette lang. Es beinhaltet eine Reihe
möglicher Erweiterungen, wobei die TCP-Timestamp Option im Folgenden
weiter vorgestellt wird. Tabelle 1.5 gibt eine Übersicht über die vorhandenen
Options-Definitionen [76] und [77]. TCP-Optionen müssen im initialen
Handshake im SYN-Segment gesendet werden. Je nach Option kann die
Option nur im SYN des Initiators ausreichen bzw. sie muss in beiden SYNs
des initialen Handshakes erscheinen.
22.
TCP-Optionen
Pakete über das Internet über Zugangsverbindungen mittels >T1
(Euro > E1 Pendant) [8].
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
28
1 Erweiterte Grundlagen von Internet-Netzwerken
Tab. 1.5: TCPOptionen
TCP-TimestampOption
Bezeichnung
Bezeichnung
#
End of Option List
#
1
Referenz
RFC 793
CC.ECHO
14
Referenz
RFC 1644
No-Operation
2
RFC 793
TCP Alternate
Checksum Request
15
RFC 1146
Maximum
Segment Size
3
RFC 793
TCP Alternate
Checksum Data
16
RFC 1146
WSOPT –
Window Scale
4
RFC 1323
Skeeter
17
Steve
Knowles
SACK Permitted
5
RFC 2018
Bubba
18
Steve
Knowles
SACK
6
RFC 2018
Trailer Checksum
Option
19
Subbu und
Monroe
Echo (obsolet durch
Option 8)
7
RFC 1072
MD5 Signature Option
20
RFC 2385
Echo Reply (obsolet
durch Option 8)
8
RFC 1072
SCPS Capabilities
21
Keith Scott
TSOPT – Timestamp
Option (obsolet durch
Option 8)
9
RFC 1323
Selective Negative
Acknowledgements
22
Keith Scott
Partial Order
Connection Permitted
10
RFC 1693
Record Boundaries
23
Keith Scott
Partial Order Service
Profile
11
RFC 1693
Record Boundaries
24
Keith Scott
CC
12
RFC 1644
SNAP
25
Vladimir
Sukonnik
CC.NEW
13
RFC 1644
TCP Compression
Filter
26
Steven
Bellovin
Die TCP-Timestamp-Option (# 9 in Tabelle 1.5) fügt einen Zeitstempel in
ein TCP-Paket ein. Zeitstempel dienen TCP zur Bestimmung der Paketrundlaufzeit (engl.: Roundtrip Time – RTT), welche wiederum in der Fehlererkennungs- und Flusskontrolle zur Justierung von Wartezeiten benötigt wird. Die
RTT ist strikt stetig steigend. Die RTT wird – je nach TCP/IP-Stack-Implementierung – für jedes Empfangsfenster neu bestimmt. Die Option inkludiert
vier Felder: (a) das 8-Bit-Bezeichnungfeld, (b) das 8-Bit-Längenfeld, (c) die
32-Bit-Timestamp Value und (d) die 32-Bit-Timestamp Echo Reply.
Ein Sender trägt einen Timestamp-Wert in (a) ein, der Empfänger sendet
denselben Wert zurück, wodurch sich die RTT ergibt. Der Timestamp-Wert ist
einheitenlos, und das Inkrement hängt wieder von der TCP/IP-Stack-Implementierung ab, wobei Linux den Wert mit schnellen 1 ms erhöht. Windows XP
bzw. Windows Server 2003 fügen standardmäßig keinen Timestamp-Wert in
ausgehende TCP-Pakete ein, antworten aber mit einer Timestamp Echo Reply,
sollte es Segmente mit der Option empfangen. TCP-Timestamps können in
Windows XP und Windows Server 2003 allerdings in der Registry leicht mit
folgendem zusätzlichen DWORD-Eintrag Tcp1323Opts über das Programm
regedit aktiviert werden:
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
29
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\Tcp1323Opts -> DWORD 2 oder 3
Der DWORD Wert 2 resultiert in der ausschließlichen Verwendung von Timestamps in Windows TCP, 3 von Timestamps und Window Scaling (siehe
auch „TCP Windows“ auf Seite 181). Bei aktivierter TCP-Timestamp-Option
beträgt die Zeitauflösung unter Windows XP 100 ms.
Ein Nachteil der Timestamp-Option ist, dass sie auch eine Schwachstelle
darstellt. Es kann durch sie leicht die Uptime eines Hosts bestimmt werden.
Genauso kann der Timestamp wie von [99] beschrieben zur Bestimmung einer
Taktverzögerung-(engl.: Clock Skew)-Signatur eines Hosts herangezogen werden. Diese Signatur-Taktverzögerung ist die erste Ableitung der Differenz
zwischen Systemzeit und der tatsächlichen Zeit23 nach der Zeit. In der Notation von [99] ist die gemessene Systemzeit R [ C ] ( t ) zur tatsächlichen Zeit t.
Clock Skew = ( R [ C ] ( t ) – t )
d
dt
(1)
Der TCP-Verbindungsaufbau durchläuft insgesamt drei Phasen und wird
damit als 3-Wege-Handshake (engl: 3-way Handshake) bezeichnet. Abbildung 1.16 zeigt einen Senderhost pluto und einen Empfängerhost merkur.
Das Protokoll in einer Synopsis ist dabei:
TCPVerbindungsaufbau
pluto → merkur: SYN, ISN pluto
merkur → pluto: SYN, ISN merkur , ACK ( ISN pluto )
pluto → merkur: ACK ( ISN merkur )
Der Host pluto als Initiator sendet ein TCP-Paket mit gesetztem SYN-Bit
und einer Initial Sequence Number (ISN) an merkur. Letzterer antwortet
ebenso mit einem SYN-Bit-Paket, einer eigenen ISN und einem Acknowledgement der ISN des Initiators. Als letzter Teil des 3-Wege-Handshakes sendet pluto ein ACK mit der von der Senke generierten ISN.
Abbildung 1.16 zeigt einen 3-Wege-Handshake zwischen den zwei Hosts
pluto und merkur. Im ersten Segment ist dabei die ISNa 1415531521. Im
selben Segment wird eine TCP-Option 3: Maximum Segment Size (mss) von
1024 mitgesendet. Segment 2 von merkur zu pluto beinhaltet eine ISNb
1823083521 und ein ACK für ISNa, welches ISNa +1 = 1415531522 ist. Im
letzten Schritt bestätigt pluto dessen ISNb mittels des ACK (1823083522).
23.
In Linux wird die interne Systemzeit als Sekunden, die seit dem 1.1.1970
0.00 Uhr Mitternacht UTC (Coordinated Universal Time) vergangen sind,
geführt.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
30
1 Erweiterte Grundlagen von Internet-Netzwerken
Abb. 1.16: TCPVerbindungsaufbau
merkur
pluto
SYN 141553
Segment 1
0.0
1521:141553
1521(0)
<mss 1024)
83521(0)
3521:18230
SYN 182308
1024>
ss
<m
,
1522
ack 141553
0.002402 (0.0024)
0.007224 (0.0048)
Segment 3
4.155441 (4.1482)
Segment 10
Segment 2
ack 18230835
22
FIN 14155315
22:14155315
22
(0) ack 1823
083522
1523
Segment 11
ack 141553
4.156747 (0.0013)
83522(0)
3522:18230
FIN 182308
4.158144 (0.0014)
4.180662 (0.0225)
1523
ack 141553
ack 18230835
Segment 13
23
pluto
TCPVerbindungsabbau
Segment 12
merkur
Der graceful TCP-Verbindungsabbau umfasst vier Schritte. Wie zuvor in
den TCP-Flags besprochen, erfolgt der Abbau einmal für jede Richtung. Der
Initiator des Verbindungsabbaus schließt eine Verbindung „aktiv“, das Gegenüber „passiv“. Abbildung 1.17 zeigt einen Client, der den Abbau-Handshake
mit einem initialen Client-FIN eröffnet. Der Server retourniert ein ACK(FINclient) und dann von sich aus eine Terminierung des Rückkanals mittels eines
FIN zum Server. Die Verbindung ist mit dem ACK(FINserver) vom Client zum
Server komplett abgebaut.
Abb. 1.17: TCPVerbindungsabbau
Client
Applikation schließen
Server
FIN
EOF an Applikation senden
ack für FIN
FIN
Applikation schließen
ack für FIN
Abbildung 1.18 zeigt nun denselben Verbindungsabbau anhand tatsächlicher Sequenz- und Bestätigungsnummern. Ein FIN mit der Sequenznummer
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
31
1415531522 wird vom Client zum Server gesendet und als 1415531523 bestätigt. Der Server sendet von sich aus ein FIN 1823083522, welches der Client
zur Beendigung des Verbindungsabbaus als ACK mit 1823083522 zurücksendet.
merkur
pluto
SYN 141553
Segment 1
0.0
1521:1415531
521(0)
<mss 1024)
83521(0)
3521:18230
SYN 182308
1024>
1522, <mss
ack 141553
0.002402 (0.0024)
0.007224 (0.0048)
Segment 3
4.155441 (4.1482)
Segment 10
Segment 2
ack 18230835
22
FIN 14155315
22:141553152
2(0) ack 1823
083522
1523
Segment 11
ack 141553
4.156747 (0.0013)
23
k 14155315
83522(0) ac
3522:18230
FIN 182308
4.158144 (0.0014)
4.180662 (0.0225)
Abb. 1.18: TCPVerbindungsabbau
mit SYN/ACKNummern
Segment 13
Segment 12
ack 18230835
pluto
23
merkur
TCP kennt elf Zustände:
TCP-Zustände
• CLOSED: Zustand ohne TCP-Verbindung.
• CLOSING: Das letzte FIN wurde noch nicht mit ACK bestätigt.
• CLOSE_WAIT: Transienter Zustand, der den Port nach dem Schließen
noch weiter blockiert, um eventuell verzögerte Out-of-Order-Segmente
nicht an die falsche empfangende Anwendung zu senden.
• TIME_WAIT entspricht CLOSE_WAIT für den aktiven Partner des
Verbindungsabbaus.
• ESTABLISHED: Zustand einer aufrechterhaltenen Verbindung.
• LISTEN: Wartezustand auf Verbindungen eines „Listeners“.
• SYN_RCVD: Zustand, bei dem ein ACK gesendet wurde, nachdem ein
SYN empfangen und ein ACK(SYN) gesendet wurde.
• SYN_SENT: Zustand nach dem Senden des initialen SYNs, für welches noch kein ACK empfangen wurde.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
32
1 Erweiterte Grundlagen von Internet-Netzwerken
Abb. 1.19: TCPZustandsübergänge
Ausgangspunkt
CLOSED
CK
,A
YN
:S
de
LISTEN
(ABHÖREN)
n
: se
YN
:S
pf
em
pf
ST
:R
em
n
fne
Öf
es
tiv SYN
:
ak
pl: nde
Ap
se
Appl: passives Öffnen
sende: nichts
Ap
pl
:s
se end
nd
eD
e:
SY ate
n
N
empf: SYN
sende: SYN, ACK
simultanes Öffnen
SYN_RCVD
CK
,A
YN CK
S
:
A
pf
e:
em end
s
e
se mp
nd f: A
e:
C
ni K
ch
ts
Appl: schließen
sende: FIN
SYN_SENT
ESTABLISHED
(AUFGEBAUT)
en
ieß Datenübertragungsstatus
hl
c
:s
FIN
p.
e:
Ap
nd
se
empf: FIN
sende: ACK
App.: schließen
aktives Öffnen
oder Timeout
CLOSE_WAIT
Appl: schließen
sende: FIN
simultanes Schließen
empf: FIN
FIN_WAIT_1
empf: ACK
sende: nichts
FIN_WAIT_2
sende: ACK
em
p
se f: F
nd IN
e: , AC
AC
K
K
empf: FIN
sende: ACK
CLOSING
LAST_ACK
(SCHLIESSEND)
empf: ACK
sende: nichts
empf: ACK
sende: nichts
passives Schließen
TIME_WAIT
2MSL Timeout
zeigt normale Übergänge für den Client
zeigt normale Übergänge für den Server
Appl: zeigt Zustandsübergänge, die von der Applikation ausgelöst werden
empf: zeigt Zustandsübergänge, wenn ein Segment empfangen wurde
sende:: zeigt, was für diesen Übergang gesendet wurde
• FIN_WAIT_1: Zustand nach dem Einleiten des Verbindungsabbaus,
bei dem das erste FIN gesendet wurde, ohne noch ein folgendes ACK
oder FIN zu empfangen.
• FIN_WAIT_2: Zustand, der auf FIN_WAIT_1 folgt, bei dem der Hinkanal der Verbindung geschlossen wurde, aber noch kein Folge-FIN
zum Schließen des Rückkanals empfangen wurde. In der sogenannten
halboffenen Verbindung können weiterhin Daten empfangen werden,
obwohl dies praktisch kaum gemacht wird, da zuvor ein expliziter Abbau eingeleitet wurde.
• LAST_ACK: Zustand des Servers in unseren Beispielen, bei dem ein
FIN empfangen und das eigene Antwort-FIN zum Client bereits gesendet wurde. Das ACK darauf steht allerdings noch aus.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
33
In Abbildung 1.19 werden die TCP-Zustände und die Übergänge zwischen
ihnen dargestellt und weiter verdeutlicht.
TCP beinhaltet mehrere Flusskontrollmechanismen zur Fehler- und Überlastungsbehandlung. Mit Aufnahme einer Verbindung erhöht TCP progressiv
die Datenrate, bis der Fall eines Segmentverlusts oder eines ACK Timeout eintritt (Slow Start). Auf Fehler- und Überlastungszustände in der Verbindung
wird dynamisch durch Adaption des Sende- und Empfangsfensters reagiert.
Der Exponential-Backoff-Mechanismus reduziert die effektive Datenrate bei
verlorenen Paketen sofort drastisch. Dies geschieht durch Erhöhen der TCP
Retransmission Timeout Value (RTO). In der Folge wird wieder versucht,
durch lineare Vergrößerung der Fenstergröße die maximal erzielbare Datenrate und dieaktuellen Bedingungen zu approximieren (Congestion Avoidance). Zu den anderen TCP-Mechanismen zur Flusskontrolle gehören das
ACK Clocking, der Nagle-Algorithmus zur Vermeidung von Fluten kleiner
Pakete, Delayed ACKs, bei denen ACK-Segmente zusätzlich mit Daten gefüllt werden, und der zuvor besprochene Algorithmus Fast Retransmit and Recovery (FRR), um zu lange Timeouts zu vermeiden.
TCP-Flusskontrolle
TCP- und UDP-Ports sind ähnlich wie IP-Adressen teilweise reguliert. Die
Vergabe und Verwaltung von Ports ist inhärent weniger kritisch als die von IPAdressen, da öffentliche IP-Adressen der Eigenschaft der weltweiten Einmaligkeit (engl.: Globally Unique) genügen müssen. Die IANA ist auch hier zentraler Verwalter. Ports teilen sich wie in Tabelle 1.6 gezeigt in drei Bereiche,
wobei nur der Block der „Well Known Ports“ praktisch eindeutig ist.
TCP- und UDPPortvergabe
Bezeichnung
Portbereich
Well Known Ports
0-1023
Registered Ports
1024-49151
Private (dynamische) Ports
49152-65534
Tab. 1.6: TCP/UDPPortbereiche
ICMP
Das Internet Control Message Protocol (ICMP) ist ein Hilfsprotokoll des
TCP/IP-Stacks auf Schicht 3 des ISO/OSI-Modells – derselben Schicht, auf
der sich IP befindet. Es ist in dem RFC 792 [23] aus dem Jahr 1981 spezifiziert, was ICMP zum Teil der ersten Gruppe an TCP/IP-Protokollen macht.
Die Funktion von ICMP ist primär die Unterstützung des verbindungslosen
und nicht fehlergesicherten IP mit zusätzlichen Status-, Steuer- und Fehlerinformationsmeldungen. Neben IP können auch höher gelagerte Protokolle wie
TCP, Routing-Protokolle oder auch Anwendungen die Information von
ICMP-Nachrichten verwerten. Der bekannteste ICMP-Nachrichtentyp ist der
im Weiteren vorgestellte ICMP Echo Request bzw. Echo Reply, welcher im
Programm ping zur Anwendung kommt.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
34
1 Erweiterte Grundlagen von Internet-Netzwerken
Abbildung 1.20 zeigt die Verkapselung von ICMP-Nachrichten in IP, was
verdeutlicht, dass ICMP IP als Transportprotokoll nutzt.
Abb. 1.20: ICMP-IPVerkapselung
IP-Datagramm
IP-Header
ICMP-Nachricht
20 Bytes
Das ICMP-Datagramm selbst ist in Abbildung 1.21 gezeigt. Es besteht aus
einem 8-Bit-Nachrichtentypfeld, einem ebenfalls 8 Bit langen Codefeld, welches jeder Meldung eine Zahl zuordnet, einer 16-Bit-Prüfsumme, deren Berechnung der TCP-Prüfsumme entspricht, und einem frei gestaltbaren Datenbereich mit verschiedenen Inhalten je nach Nachrichtentyp.
Abb. 1.21: ICMPDatagramm
0
7 8
8-Bit-Typ
15 16
8-Bit-Code
31
16-Bit-Prüfsumme
(Inhalt hängt von Typ und Code ab)
ICMPNachrichtentypen
Tabelle 1.7 gibt eine Übersicht über die verschiedenen ICMP-Nachrichtentypen und deren einzelne Meldungen. Typ 0 sind die Rückantworten von
ICMP Echo Requests (ping) – die ICMP Echo Reply. Typ-3-Nachrichten mit
16 verschiedenen Meldungen dienen dazu, einem Sender mitzuteilen, dass die
von ihm angesprochene Node aus dem in der Nachricht enthaltenen Grund
nicht erreichbar ist. ICMP-Ziel unerreichbar (engl.: Destination unreachable)
-Nachrichten werden zumeist von Routern gesendet. Das typische Verhalten
ist, dass ein Ausnahmefall eintritt, das auslösende Paket verworfen wird und
die entsprechende ICMP-Nachricht an die Quelladresse des Pakets gesendet
wird. Zumeist ist der Grund, warum das Paket nicht weitergeleitet werden
konnte, nur eingeschränkt aus der Nachricht ersichtlich. Ausnahmen sind zum
Beispiel die Meldung Nr. 4, die dem Sender klar mitteilt, dass ein Paket fragmentiert werden muss, um das nächste Segment zu traversieren, allerdings das
IP-Nicht-Fragmentieren-Bit gesetzt war.
Typ-4-Source Quench-Nachrichten helfen dem sonst mit keinerlei Flusskontrollfunktionen ausgestatteten IP, einem Sender mitzuteilen, dass er seine
Datenrate reduzieren soll. Auslöser für Source Quench-Nachrichten sind
Empfänger („Gateways“ in der Terminologie des ICMP RFCs), deren Buffer
keine weiteren Pakete transient aufnehmen können. Es gibt keine Skala oder
Rate von Source Quench-Nachrichten, die einem bestimmten Überlastungsgrad entsprächen. Die Nachricht ist mit zwei Zuständen dichotom – entweder
sie wird gesendet oder nicht. Das heißt, wenn Typ-4-Meldungen empfangen
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
35
werden, sollte die Rate reduziert werden. Sobald kein Überlastungszustand
mehr vorliegt, werden einfach keine weiteren Nachrichten gesendet. Ein sendendes Protokoll kann daher nur iterativ einen optimalen Paketratenwert approximieren.
Typ
Code
0
3
0
4
5
8
9
10
11
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0
0
1
2
3
0
0
0
0
1
12
13
14
15
16
17
18
0
1
0
0
0
0
0
0
Beschreibung
Echo Reply
Ziel unerreichbar
Netzwerk unerreichbar
Host unerreichbar
Protokoll unerreichbar
Port unerreichbar
Fragmentierung erforderlich, aber Nicht-Fragmentieren-Bit gesetzt
Source Route fehlerhaft
Zielnetzwerk unbekannt
Zielhost unbekannt
Quellhost isoliert (veraltet)
Zielnetzwerk administrativ untersagt
Zielhost administrativ untersagt
Netzwerk für TOS unerreichbar
Host für TOS unerreichbar
Kommunikation administrativ durch Filter untersagt
Host-Präzedenzverstoß
Präzedenz-Cutoff wirksam
Quelle unterdrücken (Source Quench – grundlegende Flusssteuerung)
Redirect
Redirect für Netzwerk
Redirect für Host
Redirect für Type-of-Service und Netzwerk
Redirect für Type-of-Service und Host
Echo Request ping-Anforderung
Router-Advertisement
Router-Anforderung
Zeitüberschreitung
Time-to-Live gleich 0 im Transit
Time-to-Live gleich 0 während Reassemblierung
Parameterproblem
IP-Header fehlerhaft (allgemeiner Fehler)
Erforderliche Option fehlt
Zeitstempel-Anforderung
Zeitstempel-Antwort
Informationen anfordern (veraltet)
Informationen melden (veraltet)
Adressmaske anfordern
Adressmaske antworten
Query
Fehler
Tab. 1.7: ICMPNachrichtentypen
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
Source Quench-Nachrichten sind ein gutes Beispiel für ICMP-Nachrichten,
die auf mehreren Protokollschichten verarbeitet werden können. RFC 1009
[27] besagt, dass Gateways (Router) Source Quench-Nachrichten senden sollten. So könnte zum Beispiel das egress-Interface auf einem sendenden Router
seine IP-Paketrate entsprechend den Source Quench-Nachrichten variieren
(praktisch verwenden heutige Router diesen Flusskontrollmechanismus allerdings kaum). Der Flusskontrollmechanismus von TCP kann ebenfalls Source
Quench-Nachrichten mit einbeziehen, so zum Beispiel über eine aliquote Verkleinerung des Empfangsfensters. Dies ist implementierungsabhängig und
durch die präziseren Flusskontrollmechanismen von TCP allerdings selten.
Typ-5-, -9- und -10-Nachrichten sind für Routing-Anwendungen weiter unter „ICMP Redirect und Router Discovery“ auf Seite 67 beschrieben.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
36
1 Erweiterte Grundlagen von Internet-Netzwerken
ICMP Echo
Abb. 1.22:
ICMP Echo
Typ-8-ICMP-Echo-Request-Nachrichten werden gemeinsam mit Typ-0
Echo-Rückantworten von ICMP Echo Requests zur Determinierung des Online/Offline-Status benutzt. Das Utility ping basiert auf der ICMP-EchoNachricht. Abbildung 1.22 zeigt die einzelnen Felder der ICMP-Echo-Nachricht.
1
7 8
Typ (0 oder 8)
15 16
Code (0)
31
Prüfsumme
8 Bytes
Sequenznummer
Kennung
Optionale Daten
Es ist zu beachten, dass die Echo-Request/Reply-Nachrichtentypen nur einen Code (0) beinhalten. Es ist daher keine weitere Differenzierung über den
Nachrichtentypus allein möglich, sondern es müssen aus Sicht des Senders eines Pings auch andere ICMP-Nachrichten verstanden werden. Das ping unter
Windows und Linux unterstützt dies, wie in dem folgenden Beispiel gezeigt:
Hier antwortet auf Seiten des Servers kein echo-Dienst, womit eine Nachricht
des Typs 3 Code 10 (siehe Tabelle 1.7) generiert wird.
# ping www.orf.at
PING www.orf.at (194.232.104.21) 56(84) bytes of data.
From www.orf.at (194.232.104.21) icmp_seq=0 Dest Unreachable, Bad Code: 10
ICMP Echo ist ein wesentliches Tool von Angreifern in der Netzwerk-Discovery und korrespondierend dem Footprinting (siehe Seite 123).
ICMP Echo wird gerne von Angreifern zur
Discovery und Erkennung des Online-Status
von Hosts benutzt. Obwohl dafür auch andere
Socket-Ports verwendet werden könnten, ist
ICMP Echo der primäre Mechanismus. Das
Abschalten von ICMP Echo ist daher ratsam,
sollten Produktivanwendungen es nicht benötigen.
Auf Linux-Hosts kann ICMP Echo erzeugerseitig und mittels einer Firewall
unterdrückt werden. Ersteres wird über den nächsten Befehl zur Laufzeit
(nicht persistent nach einem Reboot) realisiert.
echo “1“ > /proc/sys/net/ipv4/icmp_echo_ignore_all
Unter Windows XP/Vista bietet die Firewall die Möglichkeit, Echo Requests zu filtern (siehe dazu „ICMP-Einstellungen“ auf Seite 314). Das Monitoring von ICMP Echo Requests ist in jedem Fall eine nützliche Maßnahme,
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
37
da dadurch Footprinting und das „Interesse“ fremder Hosts beobachtet werden
können. Unter Cisco IOS dient dazu der Befehl:
Router# show ip traffic
ICMP statistics:
Rcvd: 11263 echo, 0 echo reply, 0 mask requests, 0 mask replies, 0 quench
Sent: 0 redirects, 4790 unreachable, 160 echo, 11263 echo reply
[Ausgabe verkürzt]
Unter Windows XP/Vista zeigt der untere Befehl Statistiken zu ICMP Echo
und Echo Response [Ausgabe verkürzt]:
C:\netstat -s
...
ICMPv4-Statistik
Echos
Echoantworten
Empfangen Gesendet
2943
843
152
2943
Typ 9 Router-Advertisements und Typ 10 Router-Anforderungen (engl.:
Solicitations) dienen dem Austausch von Information über Router im Netz. Sie
sind keine vollständigen Routing-Protokolle wie RIP, OSPF oder BGP, welche Prioritäten zwischen Routern setzen, sondern fungieren allein im Austausch von Information über Router und deren geroutete Adressbereiche.
RouterAdvertisements
Router-Advertisements werden zyklisch von Routern ausgesendet, um
Hosts im Netz über ebendiese zu informieren. Andererseits dienen Router-Anforderungen dazu, dass Hosts, welche keine (default) Router-Information besitzen, Router im Subnetz auffordern können, Advertisements zu senden.
Letzterer Mechanismus ist ähnlich zu dem des Dynamic Host Configuration
Protocol (DHCP) zur Konfiguration eines default-Routers.
Router-Advertisements und -Anforderungen stellen ein Sicherheitsrisiko
dar, da sie nicht authentifiziert und leicht fälschbar sind. So können über sie
malicious (bösartige) Routen bekannt gemacht werden. Das Kapitel „ICMPRedirect- und Router-Discovery-Nachrichten“ auf Seite 147 diskutiert Angriffe und Gegenmaßnahmen zu diesen ICMP-Nachrichten weiter.
Typ-9-Zeitüberschreitungsnachrichten sind die letzten wesentlichen ICMPNachrichten, welche wir behandeln. Sie teilen sich in zwei Varianten: (a)
Nachrichten zur Zeitüberschreitung bei der Reassemblierung von fragmentierten Paketen – Code 1, und (b) Nachrichten zur Zeitüberschreitung von Paketen
in Transit – Code 0.
Zeitüberschreitungen
Die in der Netzwerksicherheit relevante Typ 9 Code 0 Nachricht geht einher
mit dem Verwerfen (engl.: Drop) von IP-Paketen, bei denen der Inhalt des Time-to-Live-(TTL)-Feldes 0 erreicht hat. Solche Pakete werden fallengelassen,
um endloses Kreisen in Netzwerken zu vermeiden. Tritt der Fall TTL=0 ein,
wird neben dem Verwerfen des Pakets zeitgleich eine ICMP-Zeitüberschreitungsnachricht an den Sender des Pakets ausgelöst.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
38
1 Erweiterte Grundlagen von Internet-Netzwerken
Der Zeitüberschreitungs-Mechanismus wird in den Befehlen traceroute
(Linux) bzw. tracrt (Windows) ausgenutzt (siehe „Windows und Linux traceroute“ auf Seite 126). Die Befehle zeichnen den Pfad von IP-Paketen über
ein Netzwerk nach. Sie senden dabei iterative Pakete mit einem sich verringerndem Time-to-Live-(TTL)-Wert aus. Netzwerkelemente bzw. Nodes, die
ein Paket mit einer abgelaufenen TTL erhalten, senden die ICMP Typ 9 Code
0 Meldung „Time-to-Live gleich 0 im Transit“ (TIME_EXCEEDED) an den
Ausgangspunkt. Damit werden Nodes im Pfad zwischen Sender und Empfänger sichtbar (engl.: discovered). Werden keine ICMP-Zeitüberschreitungsnachrichten ausgesendet, ist ein Rückverfolgen mittels traceroute nicht
möglich.
ARP
Das Address Resolution Protocol (ARP) dient der Zuordnung (engl.: Binding)
zwischen ISO/OSI-Schicht-2-MAC-Adressen und Schicht-3-IP-Adressen.
Das ARP-Protokoll liegt zwischen den ISO/OSI-Schichten 2 und 3 – und ist
damit ähnlich wie MPLS ein sogenanntes Schicht-2,5-Protokoll. Wenn eine
Datenstation auf einem Ethernet-LAN mit einer anderen Datenstation kommunizieren will, reicht es nicht aus, die IP-Adresse des Gegenübers zu kennen.
Da die Verbindung zwischen den zwei Datenstationen hier über das Schicht2-Ethernet-System geschaffen wird, muss die Adressierung zur effektiven Datenübertragung auch auf Schicht 2 passieren. Letztere ist die MAC-Adressierung des Ethernets, womit nur noch eine Zuordnung zwischen der Ziel-IPAdresse und der korrespondierenden Ziel-MAC-Adresse geschaffen werden
muss.
Abbildung 1.23 zeigt den Ablauf einer IP-zu-MAC-Adressauflösung (engl.:
Address Resolution). Ein Node möchte an einen anderen im selben LAN eine
Datei mittels ftp übertragen. Im ersten Schritt (1) ruft der sendende Node den
ftp-Server über dessen DNS-Namen auf. Sogleich wird der Domain-Name
über einen DNS-Resolver in eine IP-Adresse umgewandelt. In (2) übergibt der
TCP/IP-Stack des sendenden Nodes die ersten Pakete von TCP (welches von
ftp genutzt wird) an das darunterliegende IP.
Da in unserem Beispiel sowohl Sender als auch Empfänger im selben LAN
sind, erkennt die IP-Protokoll-Implementierung auf unserem Linux- oder
Windows-Host schnell, dass die Zieladresse lokal ist24. Im nächsten Schritt (5)
wird überprüft, ob die MAC-Adresse der IP-Zieladresse bereits bekannt ist,
d.h. gecached wurde. In unserem Fall ist sie es nicht, somit wird eine AddressResolution-Anfrage von dem ARP-Protokoll eingeleitet: Ein ARP-RequestPaket wird generiert, welches neben der IP-Zieladresse die eigene IP- und
MAC-Adresse enthält.
24.
Zwei Datenstationen sind im selben Subnetz, wenn die ersten drei
Byte/Oktette der IP-Adresse a.b.c.d ident sind (zum Beispiel a.b.c.57 und
a.b.c.112).
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
Hostname
Hostname
Resolver
(1)
39
Abb. 1.23: ARPSequenz
FTP
IP-Adresse
Verbindung mit
IP-Adresse herstellen
(2)
TCP
(3)
(5)
(4)
ARP
(6)
sendet IP-Datagramme
zur IP-Adresse
IP
(8) (9)
EthernetTreiber
ARP-Anfrage (Ethernet-Broadcast)
EthernetTreiber
EthernetTreiber
ARP
(7)
ARP
IP
TCP
In Schritt (6) übernimmt im Fall von Linux das Kernel-ARP-Modul [57] gemeinsam mit dem Ethernet-Treiber die Verarbeitung. Die ARP-Anfrage wird
in eine Ethernet-Broadcast-Adresse umgewandelt, welche in der 48-Bit-Ethernet-Adresse nur als Einsen repräsentiert ist. In der unteren Linux-Befehlsausgabe ist sie im Hexadezimal-Äquivalent FF:FF:FF:FF:FF:FF gezeigt.
# ip link show eth0
2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:0g:60:eb:83:32 brd ff:ff:ff:ff:ff:ff
Der Ethernet-(Broadcast)-Frame ergeht nun an alle Datenstationen im LAN.
Ist jedoch das LAN über einen Ethernet-Switch in ein logisches Virtual LAN
(VLAN) partitioniert, dann wird der Broadcast-Frame von allen Nodes des zugehörigen VLANs empfangen. In Schritt (7) erkennt nun einer der Empfänger,
dass die in dem ARP Request nachgefragte IP-Adresse seine eigene ist. Infolgedessen sendet er eine ARP-Reply-Nachricht, in der die gewünschte MACAdresse des Empfängers an den Sender übermittelt wird (8). Im letzten Schritt
(9) kann der Sender seinen ftp-Transfer starten, da nun sowohl die IP- als
auch die Ethernet-MAC-Adresse des Empfängers bekannt ist.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
40
1 Erweiterte Grundlagen von Internet-Netzwerken
Proxy-ARP
Ein Spezialfall der MAC Address Resolution ist der Proxy-ARP. Hier agiert
ein Router (der als Proxy-ARP fungiert) als ein Stellvertreter (Proxy) eines
Hosts, der eigentlich nicht direkter Teil des LANs ist. Proxy-ARPs haben mehrere Anwendungen, wie zum Beispiel:
• einzelne Hosts außerhalb eines Ethernet-LANs als Teil desselben erscheinen zu lassen
• demilitarized Zones – DMZs (siehe „Begriffe“ auf Seite 83)
• Abbildung einer Learning Bridge mittels eines Routers
• Verbindung von unterschiedlichen Netzen, ohne zusätzliche IP-Subnetze definieren zu müssen
Proxy-ARPs eignen sich nur für Ausnahmeanwendungen, wenn zusätzliche
IP-Subnetze und Routen zwischen den Netzen nicht infrage kommen. Sie sollten nach Möglichkeit in Enterprise-Netzwerkarchitekturen nur spärlich eingesetzt werden, da sie in einer klassischen Ethernet + IP-Security-Architektur
(IP-Firewalls, Zugriffskontrolllisten (ACLs) – Kapitel 5 et al.) einbezogen
werden müssen.
Abbildung 1.24 zeigt ein Beispiel eines Netzwerks mit Proxy-ARP. Der Node sun ist durch eine Modemwählleitung über das Serial Line Interface Protocol (SLIP)25 und den Router netb an das Ethernet-Subnetz 140.252.1.0 angebunden. Ziel ist es, sun ebenfalls mit der IP-Adresse 140.252.1.29 als Teil
dieses Subnetzes erscheinen zu lassen und von diesem transparent über Ethernet erreichbar zu sein26. Alternativen wären, (a) sowohl den Router als auch
alle Interfaces der SLIP-Verbindung in das Subnetz einzufügen und (b) separate Subnetze für den Link zwischen netb und sun zu nutzen. netb agiert in
dem Beispiel als Proxy-ARP, wobei er alle Pakete für 140.252.1.29 auffängt
und über die SLIP-Verbindung an die eigentliche Destination weiterleitet. Aus
Sicht anderer Datenstationen in dem Netz 140.252.1.0 – wie zum Beispiel des
Hosts Gemini – ist sun Teil des lokalen Netzes.
Der ARP-Prozess bzw. das ARP-Protokoll sind nicht auf Sicherheit hin entwickelt worden. Sie beinhalten daher eine ganze Reihe sicherheitsrelevanter
Problemstellungen. Da nicht authentifiziert wird, ist sowohl die ARP-Anfrage,
der ARP-Cache als auch die ARP-Response leicht fälschbar. Die gefährlichsten Man-in-the-Middle-(MiM)-Attacken in IP-Netzen basieren auf diesen
ARP-Schwachstellen. ARP-Attacken werden in „ARP-Spoofing“ auf Seite
127 weiter behandelt.
25.
26.
Vorläufer des Point-to-Point-(PPP)-Protokolls [41].
Der Node sun ist zusätzlich mit dem Subnetz 140.252.13.0 verbunden.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
1.1 TCP/IP
41
Abb. 1.24:
Proxy-ARP
Gemini
ARP-Request für 140.252.1.29
Ethernet, Subnetz 140.252.1
140.252.1.183
ARP-Reply
netb
}
Router
als Proxy-ARP-Agent für
den Host sun konfiguriert
Modem
SLIP (Wählverbindung)
Modem
140.252.1.29
SLIP
slip
.65
bsdi
sun
svr4
.66
.35
.33
.34
Ethernet 140.252.13
DNS
Das DNS (Domain Name System) dient zur Zuordnung (Bindung, engl.: Binding) von IP-Adressen zu symbolischen Namen. Die Bindung erlaubt, für
Menschen lesbare, aber nicht leicht zu handhabende IP-Adressangaben in hierarchische, geografisch oder gruppenorientierte Darstellung zu bringen. DNS
ist ein Anwendungsprotokoll, welches allerdings auch der ISO/OSI-Schicht 5
– der Sitzungsschicht – zugeordnet werden kann. DNS wird in einer Reihe von
RFCs definiert, die wichtigsten unter ihnen sind RFC 1034 [29], RFC 1035
[30] und RFC 1591 [40].
DNS-Protokolle erlauben, Abfragen von einem Bindungselement zum anderen zu stellen. Bei Abfragen in Vorwärtsrichtung (engl.: Forward Lookup)
liefert DNS die IP-Adresse zu einem DNS-Namen (engl.: Fully Qualified Domain name – FQDN). In Rückwärtsrichtung (engl.: Reverse Lookup) wird der
Name zu einer IP-Adresse geliefert27.
27.
Abfragerichtungen
Die Möglichkeit, Reverse Lookups durchzuführen, bedingt eine reversierte
Datenstruktur des Adressbaumes. Dafür wurde die Zone .in-addr.arpa
(IPv4) und .ip6.arpa (IPv6) definiert, in der dann die IP verschiedener
Adressbereiche an die Verwender deligiert werden. Sie werden darin in einem Reverse Canonical Format für Reverse Lookups aufgeführt. Wenn
zum Beispiel ein Resolver nach der Adresse 192.0.34.166 fragt, wird die
Anfrage zu der Adresse als 166.34.0.192.in-addr.arpa gestellt; das Ergebnis der Anfrage ist wiederum www.example.com.
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
Symbols
.cer siehe Internet Security Certificate File
.htaccess 418
.NET (CryptoAPI Wrapper Klassen) 272
.pem siehe Privacy Enhanced Mail
.pfx siehe Personal Information Exchange File
.rhosts 152, 247
Numerics
1000Base-T siehe IEEE Standards (802.3ab)
3DES 210, 246, 281, 333
3-Wege-Handshake siehe Transmission Core Protocol (TCP) - Verbindungsaufbau
A
Abelsche Gruppe siehe Gruppen (kommutative)
ABGB siehe Allgemeines Bürgerliches Gesetzbuch
Abhören 114, 233
Abstreiten 117
Access Control Listen 40, 52, 55, 138, 449
Access Control siehe Zugriffskontrolle
Access Point (AP) 427
Access-Router 50, 56, 326
A-CERT 270
ACK siehe Acknowledgement
Acknowledgement (ACK) siehe Transmission
Core Protocol (TCP)
ACL siehe Access Control Listen
Active Directory 315, 358
Active Directory Certificate Services (Vista) 271
ActiveX 409
Adaptive Chosen Ciphertext 256
Adaptive Chosen Text 256
AdAware 105
Add-Drop Multiplexer (ADM) 49, 337
Address Resolution Protocol (ARP) 8, 11, 38
Broadcast Storms 129, 134
Linux Kernel ARP-Modul 39
Promiscuous Mode 103
Proxy-ARP 40
Ad-hoc Mode siehe Unabhängige Netze
ADM siehe Add-Drop Multiplexer
Administratorfehler 296
ADSL siehe Asynchronous Digital Subscriber
Line
Advanced Encryption Standard (AES) 210, 222,
246, 334
Advanced Program-to-Program Communication
(APPC) 350
Advanced Research Projects Agency 1
Adware 104
AES siehe Advanced Encryption Standard
AH siehe IPSec (Authentication Header Protokoll)
Air Interface siehe Luftschnittstelle
AirSnare 441
AJAX siehe Asynchronous JavaScript and XML
Akamai 137
Alice (gleichbedeutend mit Sender)
Allgemeines Bürgerliches Gesetzbuch (ABGB)
271
American National Standards Institute (ANSI)
229
X9.31-1 229
American Standard Code for Information Interchange (ASCII) 174
Analytical Research Assistant (TARA) 145, 163
Angriffsmöglichkeiten 120
Angriffsmuster 120
strukturierte Angriffe 121
unstrukturierte Angriffe 120
Angriffssequenz 121
Anonymisierung 150
Anonymität (Anonymity) 85
ANSI siehe American National Standards Institute
Anwendungsprotokolle 72–74
Anwendungsschicht siehe ISO/OSI Referenzmodell
Anycasting 139
AP siehe Access Point
Apache 405
API siehe Application Programming Interface
APPC siehe Advanced Program-to-Program
Communication
Application Layer siehe ISO/OSI Referenzmodell
(Anwendungsschicht)
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
456
Index
Application Layer Switch siehe Firewalls
(Anwendungsgateway)
Application Layer Switch siehe Routing und Switching
Application Programming Interface (API) 313
Application Specific Integrated Circuit (ASIC)
172
A-Records siehe Domain Name System (A
Records)
A-Records siehe Domain Name System (DNS)
ARP siehe Address Resolution Protocol
ARPA siehe Advanced Research Projects Agency
ARPANET (Advanced Research Projects Agency
Network) 1, 3, 166
ARP-Spoofing siehe Attacken und Gegenmaßnahmen
AS siehe Routing und Switching (Autonomous
System)
ASCII siehe American Standard Code for Information Interchange
ASIC siehe Application Specific Integrated Circuit
Asymmetrische Kryptographie 211–212
Authentifizierungsfunktion 212
Datenintegritätsprüfung 212
Diffie-Hellman-Verfahren 214
Ver-Entschlüsselungsfunktion 212
Asynchroner Transfer Modus (ATM)
ARP Service 338
IP über ATM 337
ISO/OSI 4
MPLS 60
Schicht-2 Übertragungssystem 48
VPN 332
Zellen 48
Asynchronous Digital Subscriber Line (ADSL
337
Asynchronous JavaScript and XML (AJAX) 420
ATM siehe Asynchroner Transfer Modus
A-Trust 270
Attacke (Attack) 83
aktiv 83
passiv 83
Attacken und Gegenmaßnahmen 113–194
ARP-Spoofing 127, 134
Buffer Overflow 119, 130
Cross Site Scripting 134
Denial-of-Service 98, 118, 121, 134, 295
Distributed Denial of Service 134, 395
Distributed Reflected Denial of Service
(DRDoS) 135, 136
DNS Denial of Service 139
DNS-Attacken 138
Email (D)DoS 134, 171
Homepage Defacement 144
ICMP Attacken 147
Identitätsaufdeckung 150
IP Spoofing 151
Konfiguration von Netzwerkelementen 154
Packet Crafting 134, 155
Packet Sniffing und Eavesdropping 156
Phishing 160
Port-Scans 161
Privilegieneskalation 162
Replay-Attacken 163
RIP-Routing-Attacke 164
Search-Engine-Attacken 165
SMTP-Attacken 165
Smurf/Fraggle-Attacken 134, 173
Social Engineering 175
TCP SYN Flooding 134
TCP-Sequenz-Nummern Attacke 134
TTL-Expiration-Attacke 136
unerwünschte E-Mail 165
Audit Ereignisse 107
Audits 95
Aufdeckung 114
Außenseiter (Outsider) 83
Authentication Header (AH) Protokoll siehe
IPSec
Authentifikation (Authentication) 55, 85, 88
Authentizität (Authenticity) 85
Authentizitätsprüfung 347
Autoenrollment 358
Autonomous System (AS) 56, 64
Autorisierung 55
B
Backplane 57
Balanced-Hybrid-Routing-Protokolle siehe Routing und Switching
Bandbreite (Bandwidth) 50
Bankomatkarte 275
Baseline Security Analyzer siehe SicherheitsAudits mit Tools
Basic Service Set 427
Bastion-Host 308, 409
Bayes 93
Filter 168
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
BB84 siehe Bennett-Brassard-Algorithmus
Beam Splitter 237
doppelbrechendes Kristall 237
halbdurchlässiger Diagonalspiegel 237
bedingte Wahrscheinlichkeit siehe konditionale
Wahrscheinlichkeit
Bedrohungen 79–86
Gefährdungs Kategorien 81
Konsequenzen (Threat Consequences) 83
Statistiken 79
Survival Time 80
Zwischenfälle 80
Behinderung 118
Bennett-Brassard-Algorithmus (BB84)
Algorithmus 239
Attacken und Gegenmaßnahmen 241
Erwartungswert 238
Experimentalaufbau 236
Filter 236
Grundlage des Algorithmus 235
Heisenbergsche Unschärferelation 238
öffentlicher Kanal 240
Polarisationsbasis 238
Protokoll 240
Quantenkanal 239
Vertraulichkeitsverstärkung 240
Zustandsreduktion 238
Zustandswahrscheinlichkeiten 237
Bereichsspezifische Personenkennzeichen (bPK)
276
Berkeley Packet Filter (BPF) 156
BGbl (Bundesgesetzblatt) 268
BGP (Border Gateway Protocol) 8
BGP siehe Border Gateway Protocol
Bidirektionales NAT siehe Network Address
Translation
Bildschirmtext (BTX) 119
Binary Large Object (BLOB) 272
BIND siehe Domain Name System (Berkeley
Internet Name Domain)
Binding (ARP) 38
Bitübertragungsschicht siehe ISO/OSI Referenzmodell
Blacklist 167, 312
Blaster-Wurm 132
blinde Attacke 335
BLOB siehe Binary Large Object
Block Cipher 220–222
CBC-Modus (Cipher Block Chaining) 221
457
Cipher Feedback (CFB) 221
Diffusion 220
Feistel Cipher 220
Substitutions-Permutations-Netze (S-P) siehe
Block Cipher
Blowfish 210, 221, 222
Blue-White-Red Book 89
BMI siehe Bundesministeriums für Inneres
Bob (gleichbedeutend mit Empfänger) 209
Bob Metcalfe 3
BOOTP siehe Bootstrap Protocol
Bootstrap Protocol (BOOTP) 23, 73
Border Gateway Protocol (BGP) 8, 11, 58, 64, 66,
71–72
Authentifizierung 72
BGP-Route 72
Exterior BGP (EBGP) 71
Forwarding-Tabellen 72
Interior BGP (IBGP) 71
Metriken 71
Next_Hop Attribute 72
Peers 72
Route-Advertisements 72
Topologieabbild 72
Wegewahl 71
Bounds Checking 133
BPF siehe Berkeley Packet Filter
bPK siehe Bereichsspezifische Personenkennzeichen
Bridge 52, 53
British Standard 7799 88
Broadcast Adresse siehe Internet Protocol
Broadcast DoS 128
Broadcast Sniffing 128
Brute-Force-Attacke 210, 233, 256, 443
BSI siehe Bundesamt für Sicherheit in der Informationstechnik
BSS siehe Basic Service Set
BTX siehe Bildschirmtext
Buffer Overflow siehe Attacken und Gegenmaßnahmen
Bugtraq 127
Bundesamt für Sicherheit in der Informationstechnik 79
Bundesministeriums für Inneres (BMI) 276
Bundesnetzagentur 269
Bürgerkarte 273
Bürgerkartenumgebung 274
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
458
Index
C
CA siehe Certificate Authority
Caching 304, 327
Cain&Abel 95
Canaries 133
Carnegie Mellon Universität (CMU) 79
Carrier Sense Multiple Access with Collision
Detection (CSMA/CD) 7
Cäsar-Cipher 205
CBAC siehe Context-based Access Control
CCC siehe Chaos Computer Club
CCITT siehe Comité Consultatif International
Téléphonique et Télégraphique
CCMP siehe Counter Mode with Cipher Block
Chaining Message Authentication Code
Protocol
CDN siehe Content Distribution Network
CE siehe Multi Protocol Label Switching (Customer Edge)
Central Processing Unit (CPU) siehe Prozessor
CER siehe Internet Security Certificate File
CERT siehe Computer Emergency Response
Team
Certificate Authority (CA) 270, 360
Certificate Revocation List (CRL) 267
CGI siehe Common Gateway Interface
Challenge-Handshake Authentication Protocol
(CHAP) 335, 345, 437
Challenge-Zahl 176
Chaos Computer Club (CCC) 119
CHAP siehe Challenge-Handshake Authentication Protocol
Chiffriergerät 203
Chosen Ciphertext Kryptoanalyse 256
Chosen Plaintext 257
Chosen Text 257
chroot-Umgebung 408
CIDR siehe Internet Protocol (Classless InterDomain Routing)
CIM siehe Common Information Model
Cipher Block Chaining (CBC) siehe Block Cipher
Cipher Feedback (CFB) siehe Block Cipher
Cipher Negotiation 334
Cipher Suite 246
Ciphertext 203
Ciphertext Only 257
Circuit Level Gateway siehe Verbindungs-Gateway
Cisco
Access Control Listen 323
Carrier Routing System 57
Internet Operating System (IOS) 58, 113
Internet Operating System XR 58
Intrusion Detection System 401
Intrusion Protection System 380
IOS Firewall siehe Firewalls 302
PIX Firewall 326
Software Authentication Manager 155
Class of Service, siehe auch IEEE 802.11p 61,
340, 341
CLI siehe Command Line Interface
Clifford Stoll 119
CMA siehe Cryptographic Message Standard
CMS siehe Cryptographic Message Syntax
CMU siehe Carnegie Mellon Universität
CMU-CERT siehe Computer Emergency
Response Team (Carnegie Mellon University)
CN siehe Common Name
CNAME Records siehe Domain Name System
(DNS)
Code Review 134
CODEC siehe Coder/Decoder
Coder/Decoder (CODEC) 58
CodeRed Wurm 373
Comité Consultatif International Téléphonique et
Télégraphique (CCITT) 3, 10
X.509 229
Command Line Interface (CLI) 312
Common Criteria 89
Common Gateway Interface (CGI) 407
Common Information Model (CIM) 106
Common Name (CN) 413
Community Attributes siehe Border Gateway Protocol (BGP)
Computer Emergency Response Team (CERT)
Carnegie Mellon University 79
European Network and Information Security
Agency 79
National Infrastructure Security Coordination
Centre 79
Content Aware Switch siehe Application Layer
Switch
Content Aware Switch siehe Application Layer
Switche
Content Distribution Networks (CDNs) 137
Context-based Access Control (CBAC) 307, 325
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
Coordinated Universal Time (UTC) 29
Core-Router 50, 61, 62
Corruption siehe Korruption
CoS siehe Class of Service, auch IEEE 802.11p
Counter Mode with Cipher Block Chaining Message Authentication Code Protocol (CCMP)
438
CPU siehe Prozessor (Central Processing Unit)
Cracker 84
CRC siehe Cyclic Redundancy Check
CRL siehe Certificate Revocation List
CRM siehe Customer Relationship Management
Crossbar-Matrix 54, 57
Crossconnect 48
Cross-Site Scripting (CSS oder XSS) 406
CRS-1 siehe Cisco (Carrier Routing System)
Cryptographic Message Standard (CMA) 266
Cryptographic Message Syntax (CMS) 214, 274
CSMA/CD siehe Carrier Sense Multiple Access
with Collision Detection
CSS siehe Cross-Site Scripting
Customer Edge (CE) siehe Multi Protocol Label
Switching (MPLS)
Customer Relationship Management (CRM) 308
Cut-through Architektur 54
CVS siehe Concurrent Versions System
CX siehe Komplexität
Cyclic Redundancy Check (CRC) 7, 26, 438, 443
D
DAC siehe Discretionary Access Control (DAC)
Darstellungsschicht siehe ISO/OSI Referenzmodell
Data Encryption Standard (DES) 210, 222, 246,
334
Data Interception 115
Data Link Switching (DLSw) 350
Datagramm 12
DATEX-L 332
DCOM siehe Distributed Component Object
Model
DDoS siehe Attacken und Gegenmaßnahmen
(Distributed Denial of Service)
Dead Drop-Box 122
Deaktivierung 117
DEC siehe Digital Equipment Corporation
Deception siehe Täuschung
DECnet 70
DEC-PDP siehe Digital Equipment Corporation
(PDP)
459
DECT siehe Digital Enhanced Cordless Telecommunication
Deep (Packet) Inspection 168, 309
Delay Lines 242
Delegations 43
Demilitarized Zone (DMZ) 40, 84, 310
Denial of Service siehe Attacken und Gegenmaßnahmen
DER siehe Distinguished Encoding Rules
DES siehe Data Encryption Standard
DES-Challenge-III 210
DESPAM 172
Destination Unreachable Attacke siehe Internet
Control Message Protocol (Attacken)
Deutschen Forschungsnetzes 79
DFN siehe Deutschen Forschungsnetz
DHCP siehe Dynamic Host Configuration Protocol
Differentielle Kryptoanalyse 221, 257
Diffie-Hellman-Verfahren (DH) 204, 214–219,
228
Algorithmus 217
Beispiel 218
Exponentialfunktion 216
gemeinsames Geheimnis 217
öffentlichen private Teil des Schlüssels 217
Protokoll 217
Verschlüsselungsfunktion 217
DiffServ-Codepoints siehe Internet Protocol
Digital Enhanced Cordless Telecommunication
(DECT) 425
Digital Equipment Corporation 1
Programmed Data Processor (PDP) 1
Spam 166
Digital Signature Algorithm (DSA) 212, 214, 277
Digital Signature Standard (DSS) 281
Digital Video Broadcasting - Satellite (DVB-S)
306
Digitale Signatur 212–214
Authentizität 214
Cryptographic Message Syntax (CMS) 214
Erstellung 213
Integrität 214
Message Digest 212
Überprüfung 213
Verschlüsselungsfunktion 213
XML-Signature Syntax and Processing Empfehlung (xmldsig) 214
Digitale Zertifikate siehe Zertifikate
Digitaler Signalprozessor (DSP) 131
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
460
Index
Direct record electronic (DRE) 85
Directory Service 172
Directory-Traversal-Angriff 408
Discovery 36, 393, 439
Discretionary Access Control (DAC) 307
disjunktive Ereignisse 93
diskreter Logarithmus 217, 218, 227, 234
Disruption siehe Störung
Distance-Vector-Protokolle siehe Routing und
Switching
Distinguished Encoding Rules (DER) 266, 272
Distributed Component Object Model (DCOM)
132, 316
DLL siehe Dynamic Link Library
DLSw siehe Data Link Switching
DMZ siehe Demilitarized Zone
DNS siehe Domain Name System
Domain Name System (DNS) 2, 23, 41–48, 73
Address (A) Records 42, 47, 170
Administration 46
Anfrage (Query) 45
Authoritative Resource Record 43
Berkeley Internet Name Domain (BIND) 44, 88
Cache Poisoning 138, 141
Cache-Server 44
Canonical Name (CNAME) Records 42, 48
Clients 44
Delegations 43
Denial of Service (DoS) 138
DoS Attacke siehe Attacken und Gegenmaßnahmen
Dynamische Client-Einträge 44
Dynamisches DNS 44
Forward Lookup 41
Fully Qualified Domain Name (FQDN) 42
Hijacking 139, 143
IDHacking 139
Internet Corporation For Assigned Names and
Numbers (ICANN) 46
Itarative Anfragenbehandlung 45
Mail Exchanger (MX) Records 48
MX Records 170
Nachrichten Format 46
Nameserver (NS) 47
Namespace 42
nslookup 44
Primary-Server 44
Protokoll 46
Rekursive Anfragen 45
Reverse Lookup 41
Root Server 139
Secondary Server 44
Sender Policy Framework 48
Server 44
Spoofing 139
Start of Authority (SOA) Records 47
Statische Client-Einträge 44
Time-to-Live 44
Top-Level-Domains (TLD) 43
Zone File 46
Zonen 43
Domäne 64
doppelbrechende Kristalle siehe Beamsplitter
DoS siehe Attacken und Gegenmaßnahmen
(Denial of Service)
Dovecot 288
DRDoS siehe Attacken und Gegenmaßnahmen
(Distributed Reflected Denial of Service)
DRE siehe Direct Record Electronic
DSA siehe Digital Signature Algorithm
DSCPs siehe Internet Protocol (DiffServ-Codepoints)
DSP siehe Digitaler Signalprozessor
DSS siehe Digital Signature Standard
DVB-S siehe Digital Video Broadcasting - Satellite
DWORD 29, 148
Dynamic Access Control Lists siehe Cisco
(Access Control Listen)
Dynamic Host Configuration Protocol (DHCP)
23, 61, 73
Dynamic Link Library (DLL) 95
Dynamische Analyse 134
Dynamisches NAT siehe Network Address Translation
Dynamisches Routing siehe Routing und Switching
E
E1 siehe E-Träger 1
E2E siehe End-to-End
E3 siehe E-Träger 3
EAL siehe Vertrauenswürdigkeitsstufe (Evaluation Assurance Level)
EAP over LAN (EAPOL) 436
EAP siehe Extensible Authentication Protocol
EAPOL siehe EAP over LAN
Eavesdropping siehe Abhören
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
ECC siehe Elliptische Kurvenkryptographie
ECDH siehe Elliptic Curve Diffie-Hellman
ECDLP (Elliptic Curve Discrete Logarithm Problem) siehe siehe Elliptische Kurvenkryptographie (diskreter Logarithmus)
ECDSA siehe Elliptic Curve DSA
ECIES siehe Elliptic Curve Integrated Encryption
Scheme
EDFA siehe Erbium-doped Fiber Amplifier
Edge-Router 50, 62
EESSI siehe European Electronic Signature Standardization Initiative
E-GovG 269
EGP siehe Exterior Gateway Protokoll
Egress 50
Einbettung (Encapsulation) 348
Eindringen siehe Intrusion
Einerkomplementsumme siehe Transmission
Core Protocol (Prüfsummenbildung)
einmal verwendete Zahlen 164, 335
Einwegfunktion 217
Einzelphotonenquelle 236
Elektrischer Hub 53
Elektrotechnische Hochschule (ETH) Zürich 222
ElGamal 212, 228
mit DSA 214, 281
Elliptic Curve Cryptography (ECC) siehe Elliptische Kurvenkryptographie
Elliptic Curve Diffie-Hellman (ECDH) 227, 228
Elliptic Curve Discrete Logarithm Problem
(ECDLP) siehe Elliptische Kurvenkryptographie (diskreter Logarithmus)
Elliptic Curve DSA (ECDSA) 214, 228
Elliptic Curve Integrated Encryption Scheme
(ECIES) 212, 228
Elliptische Kurvenkryptographie 224–228
Additionsoperation 226
Algorithmus 227
Diffie-Hellman 224, 227
diskreter Logarithmus 227
Implementierungen 228
Multiplikation 226
Protokoll 227
Schlüssellänge 224
Zahlenkörper 225
E-Mail
Authentifikation 168
Dezentrale Filterung 167
Domain Keys 170
461
Filter 166
MTA Acquaintance Protocol 171
Simple Mail Transfer Protocol (SMTP) 167
unerwünschte siehe Attacken und Gegenmaßnahmen
Zentrale Filterung 167
E-Mail-Signaturen und -Verschlüsselung 280–288
Encapsulating Security Payload Protokoll (ESP)
siehe IPSec
Encapsulation siehe Einbettung
Endpoint Integrity siehe Trusted Computing
End-to-End (E2E) 346
ENISA siehe European Network and Information
Security Agency
Enterprise Resource Planning (ERP) 159
Enterprise-Switches 54
EoM siehe Multi Protocol Label Switching
(Ethernet over MPLS)
EPR-Paradox (Einstein Podolsky Rosen) 235
Erbium-doped Fiber Amplifier (EDFA) 52
ERP siehe Enterprise Resource Planning
Erweiterte Grundlagen von Internet Netzwerken
1–78
ESP siehe IPSec (Encapsulating Security Payload)
ESS siehe Extended Service Set
ETH Zürich siehe Elektrotechnische Hochschule
Zürich
Ethereal siehe Wireshark
Ethernet 48
Ethernet über MPLS (EoMPLS) 61
VPN 341–342
Ethernet-Broadcast 39
E-Träger 1 27, 332
E-Träger 3 332
Ettercap 129
Euklidische Ebene 226
Eulerscher Satz 230
European Electronic Signature Standardization
Initiative (EESSI) 277
European Network and Information Security
Agency (ENISA) 79
Eve (gleichbedeutend mit Abhörende) 217
Event Logs 106
Expertensysteme 386
Exploit 84
Exposure siehe Aufdeckung
Extended Access Control Lists siehe Cisco
(Access Control Listen)
Extended Service Set (ESS) 428, 447
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
462
Index
Extensible Authentication Protocol (EAP) 435
Extensible Markup Language (XML) 106
Exterior BGP (EBGP) siehe Border Gateway Protocol (BGP)
Exterior Gateway Protokoll (EGP) 64
F
Faktorisierung 234
false Negative 376
Falsification siehe Verfälschung
Fast Retransmit and Recovery-Algorithmus
(FRR) 27, 33
FDM (Frequency Multiplex) siehe Frequenzmultiplex
Features 86
FEC siehe Multi Protocol Label Switching (Forward Equivalence Class)
Fehlererkennungsmechanismus 8
Fehlerkorrektur 241
Fehlerraten 27
Fehlersicherung 7
Feistel Networks siehe Feistel Cipher
Fernsehkanal 58
Field Programmable Gate Array (FPGA) 172
File Tranfer Protocol (S)FTP 10, 39, 73
filter (iptables Tabelle) siehe iptables
Filterregeln 299
FIN siehe Finish
finger 126
fingerd 119, 304
Finish (FIN) siehe Transmission Core Protocol
(TCP)
finites Feld 215
Firewalls 293–328
Anwendungs-Gateways 303
Application Layer Switches 306
Cisco Internet Operation System (IOS)
323–326
Durchgängigkeit 350
eigenständige 326–327
Firestarter 302, 312, 312
Host 294, 297
iptables siehe iptables
Kategorien 297–309
kommerzielle 327
Nachteile 310–311
netfilter siehe iptables 318
Network/Port Address Translation (NAT/PAT)
55, 150, 162, 294, 300
Netzwerk 297
Netzwerkarchitekturen 293, 309–310
Paketfilter 297
Schutzfunktionen 294–296
Screened-Host-Architektur 309
Screened-Subnet-Architektur 310
Transport-Gateways 299
Windows Internet Security and Acceleration
Server (ISA) 327
Windows Vista Firewall 316–318
Windows XP Internet Connection Firewall
(ICF) 312–316
Firmware 87
Flash 411
Flooding 65
Flusskontrolle 7
Fortgeschrittene Signatur 271
Forward Lookup 41
Forwarding Bridge 52
Forwarding Equivalence Classes (FEC) siehe
Multi Protocol Label Switching (MPLS)
Fouriertransformation 385
FPGA siehe Field Programmable Gate Arrays
FQDN siehe Fully Qualified Domain Name
Fragmentation siehe Fragmentierungsbehandlung
Fragmentierungsbehandlung 13
Frame 48
Frame Relay 332
Frequenzanalysen 205
Frequenzmultiplex 431
FRR siehe Fast Retransmit and Recovery-Algorithmus
FTP siehe File Tranfer Protocol
Fully Qualified Domain Name 41, 135
G
G.722.2 58
G.729 58
Galois-Feld 215, 225, 228
Gateway 52, 59
Gauß
Kurve 383
Test 384
GCC siehe GNU Compiler Collection 133
GCHQ siehe Government Communications Headquarters
GDI siehe Graphical Device Interface
Gefährdungs Kategorien 81
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
Gegenmaßnahme (Countermeasure) siehe Attacken und Gegenmaßnahmen
Geheimhaltungszertifikat 275
Geldkarte 275
Gemeinsames Geheimnis (Shared Key) 70
GENA siehe Generic Event Notification Architecture
General Packet Radio Servic (GPRS) 332
General Public License (GPL) 98
Generator siehe Gruppen
Generic Event Notification Architecture (GENA)
328
Generic Routing Encapsulation (GRE) 333, 344,
351
Tunnel Beispiel 351
gethostbyname 44
glibc siehe libc
Global System for Mobile Communications
(GSM) 425
Remote Access (RAS) 331
Short Message Service (GSM-SMS) 59
globally unique 33
GMK siehe Groupwise Master Key
GNU ("GNU’s not UNIX" revers)
GNU Compiler Collection (GCC) 133
GNU Privacy Guard (GnuPG) 281, 282
GNU Zebra 58
GnuPG siehe GNU Privacy Guard
Google 123
Government Communications Headquarters
(GCHQ) 214
GP Prozessor siehe Mehrzweck-Prozessor
GPL siehe General Public License
GPRS siehe General Packet Radio Servic
Grad der Vernetzung 86
Graphical Device Interface (GDI) 277
Graylisting 168
GRE siehe Generic Routing Encapsulation
Green Book 89
Group Policy siehe Windows XP/Vista
Groupwise Master Key (GMK) 437
Groupwise Transient Key (GTK) 437
Gruppen
additive 215
Generator 216
kommutative 225
multiplikative 215
primitives Element 216
Untergruppen 215
zyklische 216, 217
463
Gruppen(begriff) 215
Gruppenrichtlinien 315
GSHB siehe IT-Grundschutzhandbuch
GSM-SMS siehe Global System for Mobile Communications/Short Message Service
GTK siehe Groupwise Transient Key
gTLD-MoU siehe Top Level Domain Memorandum of Understanding
gzip 207
H
Hacker 84, 120
halbdurchlässiger Diagonalspiegel siehe Beam
Splitter
Harddisk 134
Hardwareadresse 7
Hardware-Token 153
Harvard-Architektur 131
HashCash 171
Hashes 207–208
Anwendungen 207
Blockbildung 207
Erzeugung 207
Geschwindigkeit 208
IS-IS Protokoll 70
MD5 208, 219, 347
SHA-1 208, 219, 274, 347
Hash-Funktionen siehe Hashes
Hersteller ID 7
H-IDS siehe Intrusion Detection Systeme (Hostbasierte IDS)
Hintertür (Backdoor) 87
HMAC siehe Keyed-hash Message Authentication Code
HMAC-MD5-96 siehe Message Authentication
Codes
HMAC-RIPEMD-160 siehe Message Authentication Codes
HMAC-SHA-1-96 siehe Message Authentication
Codes
Homepage Defacement siehe Attacken und
Gegenmaßnahmen
Homogenität 86
Honey Nets 374
Honey Pots 374
Honeynet Project 80
Hop 49
Hostadresse siehe Internet Protocol
Adressierung
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
464
Index
Hostadresse siehe Internet Protocol (Adressklassen)
HOST-IDS siehe Intrusion Detection Systeme
(IDS)
Hosting-Farmen 136
hosts.equiv Datei 247
HTML siehe Hypertext Markup Language
http Request Smuggling siehe Attacken und
Gegenmaßnahmen
HTTP siehe Hyptertext Transfer Protocol
httpd 405
Hub 52
Hypertext Markup Language (HTML) 9
Cross-Site Scripting 407
Meta-Tags 165
Hypertext Transfer Protocol (HTTP) 10, 73
Cross-Site Scripting 406
Version 1.1 245
I
IANA siehe Internet Assigned Numbers Authority
ICANN siehe Internet Corporation For Assigned
Names and Numbers
ICMP siehe Internet Control Message Protocol
ICMP-Attacken siehe Attacken und Gegenmaßnahmen
ICS siehe Internet Connection Firewall
ICV siehe Integrity Check Value
IDEA siehe International Data Encryption Algorithm
Identitätsaufdeckung 150
Identitätsvortäuschung 116
Identity Interception 114
IDES siehe Intrusion Detection Expert System
IDS Policy Manager 399
IDS siehe Intrusion Detection System
IDScenter 397
IEC siehe International Electrotechnical Commission
IEEE siehe Institute of Electrical and Electronics
Engineers - Standards
IETF siehe Internet Engineering Task Force
ifconfig 7, 58
IGMP (Internet Gateway Management Protocol) 8
IGP siehe Interior Gateway Protocol
IIS siehe Internet Information Server
IKE siehe IPSec (Internet Key Exchange Protocol)
IMAP siehe Internet Message Access Protocol
IMP (Interface Message Processor) 1, 3
In-band 119
Incapacitation siehe Deaktivierung
Inference siehe Schlussfolgerungen
Informationstechnologie 79
Infrastructure Mode siehe Infrastruktur-Netze
Infrastruktur-Netze 427
Initial Sequence Number (ISN) 29
Initialisierungsvektor (IV) 433
Insider 84
Institute of Electrical and Electronics Engineers
Standards 425
802.11 7, 222
802.11 (Wi-Fi) 426–430
802.11 (Wi-Fi) - Vergleich der Standards 426
802.11i 438–439
802.11p 48, 50, 340
802.16 (WiMax) 430–431
802.1X 434
802.2 LLC 7
802.3 7, 52
802.3u 52
802.3z 6
802.x 7
P1363 227
Integrated Services Digital Network (ISDN) 331
Integrität (Integrity) 84, 85
Integrität siehe Sicherheitsziele
Integritätsprüfung 347
Integrity Check Value (ICV) 223, 433
Interception siehe Abfangen
Interface Message Processor (IMP) 1
Interface siehe Schnittstelle
Interior BGP (IBGP) siehe Border Gateway Protocol (BGP)
Interior Gateway Protocol (IGP) 11, 61, 64
Intermediate System to Intermediate System (ISIS) Protokoll 64, 66, 70
Intermediate-System-zu-Intermediate-SystemProtokoll (IS-IS)
ISO/IEC 10589 70
Metriken 70
Wegewahlentscheidungen 70
International Data Encryption Algorithm (IDEA)
210, 222, 246
International Electrotechnical Commission (IEC)
70, 89
International Standards Organization (ISO) 3
10118-3 227
9796 229
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
International Telecommunications Union (ITU)
H.323 325
ITU-T 4
X.200 4
X.500 279
X.509 265
Internet
Domänen 2
Skalierbarkeit 2
Wachstum 2
Internet Assigned Numbers Authority (IANA) 17,
21, 43, 64, 140
Internet Connection Firewall (ICF) siehe Firewalls
Internet Control Message Protocol (ICMP) 8, 33,
50, 51, 67–68
Attacken 147, 149
Echo Request/Reply 34, 147
Fragmentierung 352
IP Verkapselung 34
Redirect-Nachricht 67, 147
Router-Advertisements 37
Router-Discovery 67, 147, 164
Source Quench 34
Traceback 393
Windows XP Firewall 314
Zeitüberschreitung 37
Internet Corporation For Assigned Names and
Numbers (ICANN) 46
Internet Engineering Task Force (IETF) 2
Internet Gateway Management Protocol (IGMP) 8
Internet Information Application Protocol Interface (ISAPI) 409
Internet Information Server (IIS) 106, 373, 405
Lockdown Tool 420
Internet Message Access Protocol (IMAP) 288
Internet Priting Protocol (IPP) 73
Internet Protocol 1, 12
Adressbereiche 18
Adressierung 16
Adressklassen 17
Adressraum 15, 49
Adressvergabe 15
Broadcast Adresse 20
Classless Inter-Domain Routing (CIDR) 16, 21,
49, 56, 174
DiffServ-Codepoint (DSCP) 13
Header 56
465
Header-Prüfsumme 14
IPv4 12
IPv6 12, 15, 350
Loopback Adresse 18
Minimallänge 12
Netzmaske 19, 63
Options-Bits 14
Record Route Option 391
RFC 791 12
Subnetze 16, 18, 63, 164
Type of Service (TOS) 13, 50, 318
Variable Length Subnet Masking (VLSM) 21
Internet Security Association and Key Management Protocol (ISAKMP) 349
Internet Security Certificate File (.cer) 266
Internet Service Provider (ISP) 21, 166
Internet Software Consortium (ISC) 44
Internet Storm Center (ISC) 80
Internetwork Packet Exchange Protokoll (IPX)
101
Intrusion 84, 115
Intrusion Detection Expert System (IDES) 389
Intrusion Detection System (IDS)
Monitoring 106
Sensor 59
Intrusion Detection Systeme (IDS) 371–402
Angriffe auf IDSs 387–389
Anomalieerkennung 381, 381–386
Apache Modul 417
Datenquellen 372–375
Denning-Ansatz 382
Ereignis Klassifikation 376–377
Globale Event-Aggregation 402
Historische Entwicklung 389
Hostbasierte IDS (H-IDS) 379
Hybrid IDS 381
Linux-, Windows- und Cisco-ID-Systeme 393–
402
Markov-Ketten-Modelle 384
Netzwerkbasierte IDS (N-IDS) 379
Reaktionen auf Angriffe 377–378
Rückverfolgung von Angriffen 389–393
Sensoren 379
Signaturerkennung 381
Snort siehe Haupteintrag Snort 393
Statistiken 383
Target Based Monitoring 373
Übergeordnete Ereignisbewertung 387
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
466
Index
Unterscheidung nach Art der Detektion 381
Unterscheidung nach Datenmaterial bzw.
Datenquellen 379–380
IOS siehe Cisco (Internet Operating System)
IOS XR siehe Cisco (Internet Operating System
XR)
IP Header Extensions (für IPv6) 350
IP siehe Internet Protocol
ipchains 318
ipconfig 8, 45
ipfw 318
ipfwadm 318
IPP siehe Internet Priting Protocol
iproute2 58, 318
IPSec 15, 73, 152, 164, 346–350
Authentication Header (AH) Protokoll 220,
347, 392
Encapsulating Security Payload (ESP) Protokoll 220, 347
HMACs 220
Internet Key Exchange Protocol (IKE) 73, 336
L2TP/IPSec IPSec Beispiel 357
Linux IPSec Beispiel 364
Negotiated Key Beispiel 366
Pre-shared Secret Beispiel 366
Schlüsselmanagement 348, 349
Transport Mode 347
Tunnel Mode 346
Windows Vista Firewall Authentifizierung 316
Windows XP L2TP/IPSec VPN Beispiel 357
IP-Spoofing siehe Attacken und Gegenmaßnahmen
IP-Switching 60
iptables 58, 302, 318–323
Beispiele 320
filter Tabelle 318
Logging 323
mangle Tabelle 318
nat Tabelle 318
netfilter 318
Network und Port Address Translation (NAT/
PAT) 322
Regeln 319
Tabellen 318
IPv6 siehe Internet Protocol
IP-VPN-Protokolle 343–351
IPX siehe Internetwork Packet Exchange Protokoll
ISA siehe Windows Internet Security and Acceleration Server
ISAKMP siehe Internet Security Association and
Key Management Protocol
ISAKMP-SA (Internet Security Association and
Key Management Protocol Security Association) 349
ISAPI siehe Internet Information Application Protocol Interface
ISC siehe Internet Software Consortium
ISC siehe Internet Storm Center
ISDN siehe Integrated Services Digital Network
IS-IS siehe Intermediate System to Intermediate
System Protokoll
ISN siehe Initial Sequence Number
ISO siehe International Standards Organization
ISO/IEC
10589 70
17799 89
ISO/OSI (International Organization for Standardization/Open Systems Interconnection) 1
ISO/OSI Referenzmodell 3
Anwendungsschicht (Application Layer) 10
Aufgaben 4
Bitübertragungsschicht (Physical Layer) 6, 426
Darstellungsschicht (Presentation Layer) 9
Merkhilfe 4
Sicherungsschicht (Link Layer) 6, 60, 426
Sitzungsschicht (Session Layer) 9
Transportschicht (Transport Layer) 8
Vermittlungsschicht (Network Layer) 8
ISP siehe Internet Service Provider
IT siehe Informationstechnologie
IT-Grundschutzhandbuch (GSHB) siehe Sicherheitsmanagement
ITU siehe International Telecommunications Unition
IV siehe Initialisierungsvektor
J
Java 409
JavaScript 406
John Draper 119
John Postel 3, 166
Jumbo Frames 12
K
Kalkspat 236, 237
Karl Koch 119
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
Kerberos 172, 317
Key Distribution Center siehe Schlüsseldistributionspunkt
Key Stream 223
Keyboard Logger 104
Keyed-hash Message Authentication Code
(HMAC) 219, 347
Kismet 441
Klasse-A-E Adresse 18
Known Plaintext 258
Kommerziell verfügbare Zertifikate 269–270
Komplexität 86
Komprimittierung 80
konditionale Wahrscheinlichkeit 93
Konfidenzintervall 383
Konfiguration von Netzwerkelementen 154
Konfigurationsintegrität 154
Konvergenzeigenschaften siehe Routing und
Switching
Koppler 52
Kopplungseinheiten 51
Korruption 117
Kryptoanalyse 255–258
Eigenschaften der Sprache 257
Menschliche Fehler 258
Schwächen in der Implementierung 258
Timing-Attacken 258
Kryptographieanwendungen 243–255
Kryptographiebasierte Techniken 203–259
Latency 335
Steganographie 203
Kryptographische Verfahren 214–242
kryptós 203
L
L2F siehe Layer 2 Forwarding
L2TP Access Concentrator (LAC) 346
L2TP Network Server (LNS) 346
Label 52
Label Edge Router (LER) siehe Multi Protocol
Label Switching (MPLS)
Label Information Base(LIB) siehe Multi Protocol
Label Switching (MPLS)
Label Switched Path 60
Label Switched Path (LSP) siehe Multi Protocol
Label Switching (MPLS)
LAC siehe L2TP Access Concentrator
LAN (Local Area Network) 7, 8
LAN Emulation (LANE) 338
467
Land Attack 155
LANE siehe LAN Emulation
LAN-zu-LAN VPN 331
Lastvariierung 393
Lastverteilung 304
Latency 306
Lawinen-Effekt 220
Layer 2 Forwarding (L2-F) 333
Layer 2 Tranport Protocol (L2TP) 73, 334, 345–
346
LDAP siehe Light Weight Directory Access Protocol
Learning Bridges 53
LER siehe Multi Protocol Label Switching (Label
Edge Router)
LIB siehe Multi Protocol Label Switching (Label
Information Base)
libc 44, 132
Light Weight Directory Access Protocol (LDAP)
73, 267, 279
Line Termination 6
Lineare Kryptoanalyse 258
Link Flaps 66
Link State Advertisements (LSA) siehe Routing
und Switching
Link-State-Protokolle siehe Routing und Switching
Linux 58
als Router 58
Auditing 110
Daemon 95
Firestarter Firewall 312
IPSec Beispiel 364
iptables Firewall 318
Kernel ARP-Modul 39
Logging 110
netfilter 318
Non-Execution Flag 133
OpenVPN SSL VPN Beispiel 360
PPTP VPN Beispiel 362
Privilegieneskalation 163
Protokoll Wrapper 111
root-User 163
Run-Level 320
Survival Time 80
LLC siehe Logical Link Control
LLC-Schicht 7
LNS siehe L2TP Network Server
Load Balancing 59
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
468
Index
Local Area Network (LAN) 7
Local Preference Attribute siehe Border Gateway
Protocol (BGP)
Logging
Anwendungs Logs 373
Apache 415–416
Pakete 318, 392
System Log 372
Logical Link Control (LLC) 6, 101
Logical Unit (LU) 350
Logischer Kanal 6, 48
lógos 203
LogSentry 110
Logwatch 110
lokal signifikant 60
Loopback Adresse 18
LSA siehe Routing und Switching (Link State
Advertisements)
LSP siehe Multi Protocol Label Switching (Label
Switched Path)
LU siehe Logical Unit
Luftschnittstelle 6
M
MAC siehe Mandatory Access Control
MAC siehe Media Access Control
MAC siehe Message Authentication Code
MAC-Adresse 7
MAC-Schicht siehe ISO/OSI-Referenzmodell
(Sicherungsschicht)
Mail Exchanger (MX) Records 48
Mail Relay 171
Mail Transfer Agent (MTA) 169, 170, 171, 288
Malicious Code 296
Malicious Logic 116, 118
Malware 120, 166
Filter 168
Management Information Base (MIB) 110, 112
Mandatory Access Control (MAC) 307
mangle (iptables Tabelle) siehe iptables
Man-in-the-Middle (MiM)-Attacke 40, 128, 218,
242
Manipulation 82
Manuelle Analyse 134
Markov-Ketten-Modelle siehe Intrusion Detection Systeme (IDS)
Marshalling 304
Maskierung/Verschleierung siehe Masquerading
Masquerading 153
Maximum Transmission Unit (MTU) 13, 352
MD5-Verfahren (Message Digest 5) siehe Hashes
Media Access Control 6, 53, 127
Trusted Network Connect (TNC) 153
Mehrzweck-Prozessoren 56
Memory Management Unit 131
Menschliche Fehler 86
Message Authentication Code (MAC) 219
Message Authentication Codes 219–220
in Verbindung mit Block Ciphers 219
in Verbindung mit Stream Ciphers 219
Message Integrity Code (MIC) 438
Meta-Tags siehe Hypertext Markup Language
Metric siehe Routing und Switching
MIB siehe Management Information Base
MIC siehe Message Integrity Code
MIC siehe Michael-Integritätsprüfung
Microsoft
Baseline Security Analyzer 95
Internet Security and Acceleration Server
(ISA) 327
Network (MSN) 328
Outlook 273, 285
SQL Server (MSSQL) 88
TechNet 107
Visual C++ 131
Windows siehe auch Windows XP/Vista
Windows Defender 105
Microsoft Network (MSN) 328
Microsoft Point-To-Point Encryption Protocol
(MPEE) 363
MiM siehe Man-in-the-Middle
Misappropriation siehe unautorisierte Aneignung
Missbrauch 118
Misuse siehe Missbrauch
mmc-Befehl 273, 315
mod_evasive 419
mod_security 419
mod_ssl 412
Modulare Hardware 52
Modulus 215
Monitoring
automatisiertes 105
manuelles 105
Router 112
SNARE 109
monoalphabetische Substitution siehe Substitutions- und Transpositions-Ciphers
Morris Wurm 119
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
Moving Picture Experts Group (MPEG)
MPEG-2 58
MPEE siehe Microsoft Point-To-Point Encryption
Protocol
MPEG siehe Moving Picture Experts Group
MPLS siehe Multi Protocol Label Switching
MPOA siehe Multi-Protocol over ATM
M-Root Server 140
MRTG siehe Multi Router Traffic Grapher
MSN siehe Microsoft Network
MSSQL siehe Microsoft SQL Server
MTA siehe Mail Transfer Agent
MTU siehe Maximum Transmission Unit
Multi Protocol Label Switching (MPLS) 52, 60
Customer Edge (CE) 60
Ethernet over MPLS 61, 341–342
Forwarding Equivalence Classes (FEC) 61
Label Edge Router (LER) 60
Label Information Base 61
Label Switched Path (LSP) 61
Provider Edge (PE) 60
Router 60
VPN 338–339
Multi Router Traffic Grapher 140
Multi Router Traffic Grapher (MRTG) 111
Multicast 8, 18, 54, 65, 139
Multi-Exit Discriminator Attribute siehe Border
Gateway Protocol (BGP)
Multifactor Authentication 175
Multihomed AS siehe Autonomous System (AS)
Multi-Moden-Telekom-Glasfaser 235
Multiplexen von Verbindungen 304
Multiplexer 48
Multi-Protocol over ATM (MPOA) 335
Multistage-Matrix 57
MX Record siehe Domain Name System (DNS)
N
Nameserver 47
nat (iptables Tabelle) siehe iptables
NAT siehe Network Address Translation
NAT/PAT siehe Firewalls (Network/Port Address
Translation)
National Infrastructure Security Coordination
Centre (NISCC) 79
National Institute of Standards and Technology
(NIST) 222
National Science Foundation Network 1
NCP siehe Network Control Protocol
469
ND Protokoll siehe Neighbor Discovery Protokoll
NE siehe Netzwerk Element
Neighbor Discovery Protokoll 16
Nessus 96
NetBSD/FreeBSD 86
Netgear Wireless Access Point 87
Netscape 243
netstat-Befehl 51
NetStumbler 440
Network Address Translation (NAT) siehe Firewalls
Network Control Protocol 3
Network File System (NFS) 23, 73, 308
Network Interface Card 6
Network Layer siehe ISO/OSI-Referenzmodell
(Vermittlungsschicht)
Network Management System (NMS) 374
Network News Transfer Protocol (NNTP) 73
Network Time Protocol (NTP) 10, 73
Netz werkadresse siehe Internet Protocol
Adressierung 49
Netz werkadresse siehe Internet Protocol
Adressierung
Netz-IDS siehe Intrusion Detection Systeme
(IDS)
Netzwerk Element (NE) 307
Netzwerkadresse siehe Internet Protocol (Adressklassen)
Netzwerktopologie 63
Next Hop Resolution Protocol (NHRP) 338
Next_Hop Attribute siehe Border Gateway Protocol (BGP)
NFS siehe Network File System
ngrep 99
NHRP siehe Next Hop Resolution Protocol
NIC siehe Network Interface Card
Nichtabstreitbarkeit (Non-repudiation) 85, 117
N-IDS siehe Intrusion Detection Systeme (Netzwerkbasierte IDS)
NISCC siehe National Infrastructure Security
Coordination Centre
NIST siehe National Institute of Standards and
Technology
Nmap 96
NMS siehe Network Management System
NNTP siehe Network News Transfer Protocol
No Cloning Theorem 235, 241
non-blocking 50
Nonces siehe einmal verwendete Zahlen
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
470
Index
Non-Execution Flag 131, 133
Normalverteilung 383
Novell
Evolution 281
IPX 101
nP 328
NS siehe Domain Name System (Nameserver)
NSFNET siehe National Science Foundation Network
nslookop 125
nslookup 44
NT LAN Manager (NTLM) 317
NTLM siehe NT LAN Manager
ntop 102
NTP siehe Network Time Protocol
Null-Shares 99
NX (no execute) siehe Non-Execution Flag
O
Oakley-Protokoll 349
Obstruction siehe Behinderung
OCSP siehe Online Certificate Status Protocol
OEM siehe Original Equipment Manufacturer
OFDM siehe Orthogonal Frequency Division
Multiple Access
öffentlicher Schlüssel siehe Asymmetrische Kryptographie
Oktett 12
One-time Pad 234, 235
Onion Routing 150
Online Certificate Status Protocol (OCSP) 267,
279
Open Shortest Path First (OSPF) 11, 21, 58, 61, 64,
66, 70–71, 334
Authentifizierung 71
Discovery 71
Pfade 71
Wegewahl 71
Open System Authentication 87, 432
Open Systems Interconnection 3
Open Vulnerability and Assessment Language
(OVAL) 87
OpenPGP 281
OpenSSL 212
OpenVPN 360
Operator-VPN siehe Virtual Private Networks
Optische Netzwerkelemente 52
Orange Book 89, 91
Ordnung 215
Organisationseinheit siehe Domäne
Organisatorischer Mängel 81
Original Equipment Manufacturer (OEM) 87
OSI (Open Systems Interconnection) 4
OSI siehe Open Systems Interconnection
OSPF siehe Open Shortest Path First
Outlook siehe Microsoft
Out-of-band 119
Signalisierung 391
OVAL siehe Open Vulnerability and Assessment
Language
Overlay-Netz 331
P
P2P siehe Peer-to-Peer
Packet Crafting siehe Attacken und Gegenmaßnahmen
Packet Sniffing siehe Attacken und Gegenmaßnahmen
Pad 206
Padding 219
Pairwise Master Key (PMK) 437, 447
Pairwise Transient Key (PTK) 438
Paketfilter siehe Firewalls
Paketgenerator 299
Paketrundlaufzeit 28
Paket-Sniffer siehe Sicherheits-Audits mit Tools
PAM siehe Pluggable Authentication Modules
PAP siehe Password Authentication Protocol
Password Authentication Protocol (PAP) 335, 437
PAT siehe Port Address Translation
Path-Vector-Ansatz siehe Routing und Switching
PBS siehe Polarizing Beam Splitter
pcap 157, 394
PCI Bus siehe Peripheral Component Interconnect
PCI Express Bus siehe Peripheral Component
Interconnect
PDP (Programmed Data Processor) 1
PDU (Protocol Data Unit) 5, 6
PDUs siehe Protocol Data Units
PE siehe Multi Protocol Label Switching (Provider Edge)
Peers siehe Border Gateway Protocol (BGP)
Peer-to-Peer (P2P) 98, 137
PEM siehe Privacy Enhanced Mail
PEP siehe Performance Enhancing Proxy
Performance Enhancing Proxy (PEP) 306
Peripheral Component Interconnect
PCI Bus 58
PCI-Express Bus 58
Perl 165, 410
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
persistente Route 62
Personal Identification Number (PIN) 175
Personal Information Exchange File (.pfx) 272
Personal Information Exchange Syntax Standard
siehe Public Key Cryptography Standard
#12
Pfad 50
pfx siehe Personal Information Exchange Syntax
Standard
PGP siehe Pretty Good Privacy
Phase V Routing siehe Intermediate-System-zuIntermediate-System-Protokoll (IS-IS)
Phishing-Attacken siehe Attacken und Gegenmaßnahmen
Photodetektor 236
Photonen 235
Photonenvervielfältiger 237
PHP 165, 408
Phrack 120, 132
PHY (Physisches Interface) 6
PHY siehe Physisches Interface
Physical Layer Convergence Protocol (PLCP) 430
Physical Layer siehe ISO/OSI Referenzmodell
(Bitübertragungsschicht)
Physischen Kanal 48
Physischer Zugang 154
Physisches Interface 6, 426
PIN siehe Personal Identification Number
ping 124, 148
Ping of Death 148
ping siehe Internet Control Message Protocol
(Echo)
Pivot 165
PKCS siehe Public Key Cryptography Standard
PKI siehe Public Key Infrastructure
PKIX siehe Public Key Infrastructure using X.509
PLCP siehe Physical Layer Convergence Protocol
Pluggable Authentication Modules (PAM) 247
PMK siehe Pairwise Master Key
Pockels-Zelle 236
Point-to-Point Connection 7
Point-to-Point Protocol (PPP) 27, 333, 334, 435
Point-to-Point Tunneling Protocol (PPTP) 344–
345
Beispiel 353
Polarisation 235
diagonal 236
horizontal 236
Licht 236
vertikal 236
471
Polarizing Beam Splitter (PBS) siehe Strahlenteiler
Policy 327
Policy-Informationen 67
Pollard 228
rho-Methode 228
Zahlenkörpersieb 233
POP siehe Post Office Protocol
POP3 siehe Post Office Protocol (POP)
Port Address Translation (PAT) siehe Firewalls
Port Forwarding siehe Secure Shell (SSH)
Port Scanning 294
Portnummer 22
Ports 162
Port-Scan 80
Port-Scans siehe Attacken und Gegenmaßnahmen
Post Office Protocol (POP) 10, 73, 100, 288
PPP siehe Point-to-Point Protocol
PPTP siehe Point-to-Point Tunneling Protocol
PPVPN siehe Provider Provisioned Virtual Private Network
Prefix siehe Internet Protocol (CIDR)
Presentation Layer siehe ISO/OSI Referenzmodell (Darstellungsschicht)
Pre-Shared Key Mode (PSK) 434, 447
Pre-shared Secret (PSK) 349
Pretty Good Privacy (PGP) 222, 281
Prim-Feld 215
primitives Element siehe Gruppen
Primitivwurzel 216
Primzahl 215
Primzahlenfaktorisierung 234
Primzahlenkörper 225, 227
Privacy Amplification siehe Bennett-BrassardAlgorithmus (Vertraulichkeitsverstärkung)
Privacy Enhanced Mail (PEM) 266, 281
PEM Format 413
privater Schlüssel siehe Asymmetrische Kryptographie
Privilegieneskalation siehe Attacken und Gegenmaßnahmen
Probable Plaintext 258
Process Identification Number (PID) 97
Promiscan 103
Promiscuous Mode 103, 156
Protection Profile (PP) siehe Schutzprofil
Protocol Data Units 5, 6, 219
Protokollumsetzung 52
Provider Provisioned Virtual Private Network
(PPVPN) 331
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
472
Index
Proxy-Server 150, 303
Socks 309
transparentes Proxying 305
Prozessor 56, 134, 171
Prüfsumme 219
Pseudowires (PWs) siehe Virtual Private Networks
Pseudo-Zufallszahlengenerator
Stream Cipher 222
PSK siehe Pre-Shared Key Mode
PSK siehe Pre-shared Secret
PSTN siehe Public Switched Telephone Network
PTK siehe Pairwise Transient Key
Public Key Cryptography Standard (PKCS) 229
PKCS #12 266
PKCS#7 266
Public Key Infrastructure (PKI) 267, 269, 277–279
Public Key Infrastructure using X.509 (PKIX) 279
Public Switched Telephone Network 3, 59
PuTTY 247
PW siehe Pseudowire
Q
QBER siehe Quantum Bit Error Rate
QND siehe Quantum Non Demolition Measurements
QoS siehe Quality of Service
Qualifizierte Zertifikate 267–269, 270
Quality of Service (QoS) 8, 55, 61, 64, 67, 106
Asynchroner Transfer Modus (ATM) 337
Quantenalgorithmen 234
derzeitige Kryptographie Verfahren 234
kryptographische 234
Zeitunterschied zu klassischen Verfahren 234
Quantencomputer 234
Quantenkryptographie 233–242
Ambainis-Algorithmus 234
BB84 siehe Bennett-Brassard-Algorithmus
EPR-basiertes Verfahren nach Ekert 235
Faktorisierungsalgorithmus von Shor 234
Fehlerkorrektur (Error Correction) 241
idQuantique 235
Quanten Coin Flipping 234
Quantenaxiome 235
Quantenverschränkung 234
Quantum Bit Error Rate (QBER) 241
Quantum Non Demolition Measurements (QND)
242
Qubit (Quantum Bit) 239
Quotas (auf Datentransfervolumen) 318
R
RA siehe Registration Authority
RACE Integrity Primitives Evaluation Message
Digest (RIPEMD) 220
RADIUS siehe Remote Authentication Dial-In
User Service
RAM siehe Random Access Memory
Random Access Memory (RAM) 56, 134, 171
RAS siehe Remote Access Server
Rate Limiting 136, 138, 318
SYN-Rate via iptables 322
Rate Shaping siehe Rate Limiting
Rauschen 440
RBAC siehe Role-based Access Control
r-Befehle 120, 152
RC2 246
RC4 210, 222, 223, 246, 431
RC-5 222
rcp 152
RDN siehe Relative Distinguished Name
Real Time Protocol (RTP) 23
Real Time Streaming Protocol (RTSP) 73
Reassembly siehe Fragmentierungsbehandlung
Rechtsgültigkeit elektronischer Unterschriften
270–271
Record Route Option siehe Internet Protocol
Referrer 416
Reflected Denial of Service-Attacke 173
Reflexive Access Control Lists siehe Cisco
(Access Control Listen)
Registration Authority (RA) 278
Reihe 216
Re-key 245, 246
Rekursive Anfragen 45
Relative Distinguished Name (RDN) 279
Remote Access Server (RAS) 331
Remote Authentication Dial-In User Service
(RADIUS) 435, 436
Remote Procedure Call (RPC) 9, 132
UPnP 328
Repeater 52
Replayprüfung 347
Repudiation siehe Abstreiten
Request for Comments (RFC) allgemein 2
Réseaux IP Européens (RIPE) 21, 64, 140, 152,
389
Reset (RST) siehe Transmission Core Protocol
(TCP)
Ressourcen (Erhöhungung) 136
Reverse Address Resolution Protocol (RARP) 11
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
RFC siehe Request for Comments
RIP siehe Routing Information Protocol
RIPE siehe Registry Réseaux IP Européens
RIPEMD siehe RACE Integrity Primitives Evaluation Message Digest
RIP-Routing-Attacke siehe Attacken und Gegenmaßnahmen
Risikoabschätzung 93–95
rlogin 152
Robert Morris 119
robots.txt 165
Role-based Access Control (RBAC) 307
Root Certificates siehe Wurzelzertifikat
Rootkit 121
Root-Server siehe Domain Name System
root-User siehe Linux
Roundtrip Latency 305
routbare Adressen 389
Route Flap Dampening 66
route-Befehl 51, 58, 62, 334
routed 69
Router 56
Router-Architekturen 56
Routing Information Protocol (RIP) 8, 11, 58, 64,
68–70, 334
Attacke auf 164
Daemon 68
GNU Zebra 69
Konvergenzzeit 69
Nachrichten Format 69
Request/Response 68
RIPv2 vs. RIPv1 68
Skalierbarkeit 68
Routing Tabelle 62
Routing und Switching 48–72
Access-Router 50, 56
Application Layer Switches 59
Autonomous System (AS) 56
Backplane 57
Balanced-Hybride Protokolle 66
Bandbreite (Bandwidth) 50
Begriffe 50
Core-Router 50
Crossbar Matrix 54, 57
Cut-through Architektur 54
Distance-Vector-Protokolle 65
Durchsatz 57
Dynamisches Routing 63
Edge-Router 50
473
Egress-Verkehr 50
Elektrischer Hub 53
Exterior-Gateway-Protokolle 65
Flooding Bridge 53
Forwarding Bridge 53
Heimnetzwerk-Router 56
Ingress-Verkehr 50
Interior Gateway Protokolle (IGPs) 64
Konvergenzeigenschaften 65, 66
Kopplungseinheiten 49, 51
Learning Bridge 53
Link-State-Protokolle 65
Metric 63, 334
Non-blocking 50
Path-Vector-Ansatz 66
Pfad (Path) 50
Port 50
Router Interface 50, 55
Router-Architekturen 56
Routing (Wegewahl) Grundlagen 49
Routing Protokolle Gegenüberstellung 66
Routing und Switching 65
Routing-Table (Forwarding-Tabelle) 50, 56
Spanning Tree Algorithmus (STP) 53
Statisches Routing 61
Store-and-Forward-Architektur 54
Switch Fabric 57
Switches 54
Switching Matrix 50
Switching-Router 58
Wegewahl 56, 63
Wire-speed 50
Routing-Table 50
RPC siehe Remote Procedure Cal
RSA (Rivest, Shamir, Adelman) 228
RSA-Challenge 233
RSA-Verfahren 204, 212, 214, 222, 228–233
Algorithmus 230
Beispiel 232
Block-Modus 231
Brute-Force-Attacken 233
Erweiterte Euklidische Algorithmus 230
Kryptoanalyse und Timing-Attacken 232
öffentlicher Schlüssel 230
Patentrechtliches 228
Primzahlenfaktoren 230
private Schlüssel 230
SSL/TLS 244
Ver-und Entschlüsselung 152, 231
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
474
Index
rsh 152
RST siehe Reset
RTO siehe TCP (Retransmission Timeout Value)
RTP siehe Real Time Protocol
RTR-GmbH siehe Rundfunk- und TelekomRegulierungs-GmbH
RTSP siehe Real Time Streaming Protocol
RTT (Roundtrip Time) siehe Paketrundlaufzeit
Rückverfolgung von Angriffen siehe Intrusion
Detection Systeme (IDS)
Rundfunk- und Telekom-Regulierungs-GmbH
(RTR-GmbH) 269
S
S/MIME 214, 229, 281
SA siehe Security Association
SAD siehe Security Association Database
Sandbox 411
SANS-Institut (SysAdmin, Audit, Network, Security) 80, 88
Santa Cruz Operation (SCO) 145
Santy-Wurm 409
SAP siehe Service Access Port
Satelliten
transparentes Proxying 305
Satz von Euklid 215
Schlüsseldistribution
IPSec 349
Symmetrische Kryptographie 209
Schlüsseldistributionspunkt (Key Distribution
Center) 209
Schlussfolgerungen 115
Schneier, Bruce 345
Schnittstelle (Interface) 63
Schutzprofil 90
Schwachstellen 86–88
Definition 84
empirische Formel 86
Grad der Vernetzung 86
Homogenität 86
Menschliche Fehler 86
SCO siehe Santa Cruz Operation
Screened Host Architektur siehe Firewalls
Screened-Subnet-Architektur siehe Firewalls
SDH siehe Synchronous Digital Hierarchy/Synchronous Optical Network (SDH/SONET)
Search-Engine-Attacken siehe Attacken und
Gegenmaßnahmen
Secure Key Exchange Mechanism for the Internet
(SKEME) 349
Secure Shell (SSH) 73, 159, 246–255
Asymmetrische Authentifizierung 253
Authentifizierung 247
Basisprotokolle 247
Cipher-Suite 247
Client und -Server unter Linux 251
Funktionen 246
für VPN Tunnels 345
Konfiguration von Netzwerkelementen 155
Port Forwarding 248
Server unter Windows 250
SSH File Transfer ProtocolSSH File Transfer
Protocol 73
Tunnel 249
Secure Socket Layer (SSL) 9, 10, 59, 97
Apache SSL Web-Server-Einrichtung 412–414
Authentifizierung 244
Diffie-Hellman 245
Kryptographie 245
mit SMTP 287
symmetrischer Session-Schlüssel 244
Tunnels 333
Virtual Private Network (VPN) 350
Zertifikat 413
Secure Socket Layer (SSL/TLS) 243–246
Alert-Protokoll 243
Handshake-Protokoll 243
Record-Protokoll 243
Verbindungsaufbau 243
Secure/Multipurpose Internet Mail Extensions (S/
MIME) 281
Security Association (SA) 244
IPSec 348
Security Association Database (SAD) 348
Security Parameters Index (SPI) 348
Segment 52
Sender Policy Framework (SPF) 48
Sender Policy Framework (SPF) siehe E-Mail
sendmail 169, 172
Serial Line Interface Protocol (SLIP) 40
Server Message Block (SMB) 96, 99, 315, 402
Service Access Port (SAP) 7
Service Level Agreement (SLA) 106
Service Set Identifier (SSID) 428
Serviceklassen 13
Session Initiation Protocol (SIP) 9, 10, 73, 307
Session-Hijacking 128
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
Set 163
Set Group ID (SGUID) 163
Set User ID (SUID) 163
SGUID siehe Set Group ID
Sguil 110, 399
SHA-1-Verfahren (Secure Hash Algorithm) siehe
Hashes
Shannon 220
Shared Key siehe Gemeinsames Geheimnis
Shared Media 7
Shared Memory-Architektur 56
Shared-Media 156
Sicherheits-Audits mit Tools 95–113
Baseline Security Analyzer 95
Host-Audits 104
Nessus 96
netstat 95
ngrep 99
Nmap 96
ntop 102
Promiscan 104
Sniffit 100
SuperScan 98
Tara 100
tcpdump 101
Wireshark 101
Sicherheitsmanagement 88–113
Basel II 93
IT-Grundschutzhandbuch (GSHB) 89
Risikoabschätzung 93
Sicherheitskonzepte 92
Standards 89
Sicherheitsvorgaben (Security Target) 90
Sicherheitsziele 84
Sicherungsschicht siehe ISO/OSI-Referenzmodell
Side-Channel-Attacke 258
SigG siehe Signaturgesetz
Signalerkennung 385
Signalstärke 440
Signalverstärker 52
Signaturen (IDS) siehe Intrusion Detection Systeme (IDS)
Signaturgesetz
Deutschland (SigG) 268
Österreich (SigG) 269
Signaturkarten und Signaturumgebungen 273–277
Konzept Bürgerkarte 273
Signaturrichtlinie (EU SigRL) 265, 271
Signaturschlüssel 275
475
Signaturverordnung (SigV) siehe Verordnung zur
digitalen Signatur
SigRL siehe Signaturrichtlinie
SigV siehe Signaturverordnung
Simple Mail Transfer Protocol (SMTP) 10, 11, 73,
98, 106, 280, 308
Attacken 165
AUTH-Befehls 168
Spam 167
Simple Network Management Protocol (SNMP)
23, 73, 106, 110, 155
Simple Network Time Protocol (SNTP) 73
Simple Object Access Protocol (SOAP) 328
Simple Service Discovery Protocol (SSDP) 328
Single Photon Source (SPS) siehe Einzelphotonenquelle
SIP siehe Session Initiation Protocol
SITA siehe Société Internationale de Télécommunications Aéronautiques
Sitzungsschicht siehe ISO/OSI ReferenzmodellI
(Session Layer)
SKEME siehe Secure Key Exchange Mechanism
for the Internet
Skype 96
Skytala 203
SLA siehe Service Level Agreements
SLIP siehe Serial Line Interface Protocol
Slow Start siehe Transmission Core Protocol
(TCP)
Smartcard 175, 275
SMB siehe Server Message Block
SMTP siehe Simple Mail Transfer Protocol
Smurf/Fraggle Attacke siehe Attacken und
Gegenmaßnahmen
SNA siehe System Network Architecture
SNAP (Subnet Access Protocol) 7
SNARE 109
Sniffer Detection Tools 160
Sniffit 100
SNMP siehe Simple Network Management Protocol
Snort 104, 393
Detection-Engine 395
Präprozessor 394
Regeln 395
Sensor 394
SnortALog 400
snprintf() 133
SNTP siehe Simple Network Time Protocol
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
476
Index
SOA siehe Domain Name System (Start of Authority Records)
SOAP siehe Simple Object Access Protocol
Social Engineering siehe Attacken und Gegenmaßnahmen
Société Internationale de Télécommunications
Aéronautiques (SITA) 17
Sockets 8
Socks-Proxy 308
SONET siehe Synchronous Digital Hierarchy/
Synchronous Optical Network
Source Quench Attacke siehe Internet Control
Message Protocol (Attacken)
Source Routing 15, 61
S-P siehe Substitutions-Permutations-Netze
Spam 165
Spam Assassin 167
Spanning Tree Algorithmus (STP) 53
SPF siehe Sender Policy Framework
SPI siehe Security Parameters Index
Splitter 52
Spoofing siehe Identitätsvortäuschung
sprintf() 133
SPS (Single Photon Source) siehe Einzelphotonenquelle
Spybot 105
Spyware 104
SQL siehe Structured Query Language
Squid 305
SSDP siehe Simple Service Discovery Protocol
SSH siehe Secure Shell
SSID siehe Service Set Identifier
SSL siehe Secure Socket Layer
ST siehe Sicherheitsvorgaben (Security Target)
Stack Smash 132
Stammzertifikat siehe Wurzelzertifikat
Standard Access Control Lists siehe Cisco
(Access Control Listen)
Stanford University 1
STARTTLS 159, 286
Stateful Firewall 55
stateful Inspection siehe Firewalls (Transport
Gateway)
stateful siehe zustandsorientiert
Statische Analyse 134
Statisches NAT siehe Network Address Translation
Statisches Routing siehe Routing und Switching
Statistiken zu Bedrohungen siehe Bedrohungen
Steganalyse siehe Kryptographiebasierte Techniken
Steganographie siehe Kryptographiebasierte
Techniken
Store-and-Forward-Architektur 54
Störung 85, 117
STP siehe Spanning Tree Algorithmus
Strahlenteiler (der Polarisierung) 236
strcat() 133
strcpy() 132
Stream Cipher 222–224, 334
Stromversorgung 82
Structured Query Language (SQL) 104
Stub AS siehe Autonomous System (AS)
Stunnel 243
Subnet Access Protocol (SNAP) 7
Subnetting siehe Internet Protocol (Subnetze)
Subnetzmaske siehe Internet Protocol (Netzmaske)
Substitution Attacke 128
Substitutions- und Transpositions-Ciphers 205–
207
monoalphabetische Substitution 205
Substitutions-Cipher 205
Transpositions-Cipher 206
Substitutionsboxen (S-Boxen) 221
Substitutions-Permutations-Netze (S-P) 220
Subversion 88
SUID siehe Set User ID
Supernetting siehe Internet Protocol (Classless
Inter-Domain Routing)
SuperScan 98
Supplicant siehe IEEE 802.1X
Surveilance siehe Verfügbarkeitsüberwachung
Survival Time 80
Switch Fabric 57
Switched-Ethernet 157
Switches 54
Switching Matrix 50
Switching Router 52
Switching-Router 58
Switching-Router siehe Routing und Switching
Symmetrische Kryptographie 208–211
Anwendungen 208
Schlüssel 210
siehe auch Message Authentication Codes 219
Ver-Entschlüsselungsfunktion 209
SYN siehe Synchronize
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
Synchronize (SYN) siehe Transmission Core Protocol (TCP)
Synchronous Digital Hierarchy/Synchronous
Optical Network 48
Synchronous Digital Hierarchy/Synchronous
Optical Network (SDH/SONET) 55
sysklogd 110
syslogd 162, 372
System Network Architecture (SNA) 350
T
T1 siehe T-Träger 1
Tag Switching 60
Taktverzögerung 29, 150, 392
tar 207
TARA siehe Analytical Research Assistant
Target Based Monitoring siehe Intrusion Detection Systeme (IDS)
Täuschung 85, 116
TCG siehe Trusted Computing Group
TCP siehe Transmission Core Protocol
TCP und UDP Vergleich 9
TCP/IP siehe Transmission Control Protocol/
Internet Protocol
tcpdump 101
TCP-Sequenz-Nummern Attacke siehe Attacken
und Gegenmaßnahmen
TDM siehe Zeitmultiplex (Time Division Multiplex)
teilerfremd 230
Telefonkanal 58
Telekom-Control-Kommission (TKK) 269
Telnet 73, 308
Temporal Key Integrity Protocol (TKIP) 434, 437
TFTP siehe Trivial File Transfer Protocol
Threat
siehe Bedrohung
Three-Factor-Authentifizierung 176
Thunderbird 281
Tiger Analytical Research Assistant (TARA) 101
Time Division Multiplex (TDM) siehe Zeitmultiplex
Time To Live (TTL) 13
Time-Based Access Control Lists siehe Cisco
(Access Control Listen)
Timestamp-Option siehe Transmission Core Protocol (TCP) - Optionen
Timing-Attacken siehe Kryptoanalyse
TKIP siehe Temporal Key Integrity Protocol
477
TKK siehe Telekom-Control-Kommission
TLD siehe Top-Level-Domain
TLS (Transport Layer Security) siehe Secure
Socket Layer
tn3270(E) 350
TNC siehe Trusted Network Connect
Token Ring 7
Tokens 164
Top Level Domain Memorandum of Understanding (gTLD-MoU) 43
Top-Level-Domains (TLD) 43
Topologieänderungen 65
Topologieerkennung siehe Discovery
TOS siehe Internet Protocol (Type of Service)
TPM siehe Trusted Platform Modul
Traceback (ICMP) siehe Internet Control Message
Protocol (ICMP)
traceroute 126, 389
Tracing 136
tracrt 126
Traffic Engineering siehe Multi Protocol Label
Switching
Transit AS siehe Autonomous System (AS)
Transmission Control Protocol/Internet Protocol
(TCP/IP) 1–48
Protokoll-Stack 11
Verkapselung 12
Transmission Core Protocol (TCP) 8, 23
Acknowledgement (ACK) 24, 27, 29, 31
Datagrammeinheit 23
Fast Retransmit and Recovery-Algorithmus
(FRR) 27
Finish (FIN) 25, 30
Flusskontrolle 33
Header 11, 25
Offload 59
Optionen 27
Out-of-Sequence 27
Ports und Portvergabe 33
Prüfsummenbildung 25
Reset (RST) 24
Retransmission Timeout Value (RTO) 33
Sequenznummer 24, 30
Slow Start 306
Synchronize (SYN) 24, 29
Time-Stamp Option 150
über Satellit 305
über TCP 351
Verbindungsabbau 30, 31
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
478
Index
Verbindungsaufbau 29
Zustände 31
Zustandsübergänge 32
Transponder 6
Transport Layer Security (TLS) siehe Secure
Socket Layer (SSL)
Transport Layer siehe ISO /OSI Referenzmodell
(Transportschicht)
Transport-Gateway siehe Firewalls
Transportnetz 331
Transportschicht siehe ISO/OSI Referenzmodell
Transpositionsfunktion 221
Tripwire 373
Trivial File Transfer Protocol (TFTP) 23, 73
Trojanische Pferde 82, 122
trustDesk 274
Trusted Computing 152
Endpoint Integrity 153
Trusted Network Connect (TNC) 74, 153, 391
Trusted Computing Group (TCG) 152
Trusted Network Connect (TNC) siehe Trusted
Computing
Trusted Platform Modul (TPM) 152
t-Test 384
TTL siehe Time To Live
TTL-Expiration-Attack siehe Attacken und
Gegenmaßnahmen
TTLS siehe Tunneled TLS
T-Träger 1 27
Tunnel 331, 333
Tunneled TLS (TTLS) 435
Tupel 230
Turing-Test 171
Two-Factor-Authentifizierung 176
Type of Service (TOS) siehe Internet Protocol
(Type of Service)
Type of Service siehe Internet Protocol
U
Überschneidendes NAT siehe Network Address
Translation
Überwachbarkeit (Monitorability) 85
UCLA (University of California Los Angeles) 1
UDP siehe User Datagram Protocol
UMTS-SMS siehe Universal Mobile Telecommunications System
unabhängige Ereignisse 93
Unabhängige Netze 427
Unauthorized Disclosure siehe Unerlaubte Preisgabe
unautorisierte Aneignung 118
Unbefugtes Eindringen 82
Unerlaubte Preisgabe 85, 114
Unidirektionales NAT siehe Network Address
Translation
Universal Mobile Telecommunications System
(UMTS) 425
RSA 229
Short Message Service (UMTS-SMS) 59
Universal Plug and Play (UPnP) 327
Universal Resource Identifier (URI) 245
University of California Los Angeles (UCLA) 1
University of Southern California (USC) 139
Information Sciences Institute (ISI) 139
Unix-to-Unix Copy (UUCP) 171
Unternehmensnetze 62
UPnP siehe Universal Plug and Play
URI siehe Universal Resource Identifier
USC siehe University of Southern California
Usenet 123
User Datagram Protocol (UDP) 8, 22
Header 22
Prüfsumme 22
UTC siehe Coordinated Universal Time
UUCP siehe Unix-to-Unix Copy
V
V.90 331
VBP siehe Verzögerungs-Bandbreitenprodukt
VCC siehe Virtual Channel Connection
Verbindlichkeit (Accountability) siehe Sicherheitsziele
Verbindungs-Gateways (Circuit Level Gateway)
308
Verbindungsorientierung 9
Verfälschung 116
Verfügbarkeit (availability) 84, 86
Verfügbarkeitsüberwachung (Surveilance) 106
VeriSign 46, 139
Verkapselung siehe Transmission Control Protocol/Internet Protocol
Verkehrs-Monitoring 55
Vermittlungsschicht siehe ISO/OSI-Referenzmodell
Vernam-Cipher 206, 233
als Stream Cipher 222
Pad 206
Verordnung zur digitalen Signatur 268
Verteilen von Servern 137
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Index
Vertrauenswürdigkeitsstufen (Evaluation Assurance Levels) 91
Vertraulichkeit 84, 85
VerwSigV 269
Verzeichnis-Listings 405
Verzögerungs-Bandbreiten-Produkt 306
Videoverbindungen 350
Vigenère-Cipher 206
Vinton Cerf 3
Virtual Channel Connection (VCC) 338
Virtual LAN (VLAN) 39, 54, 154, 323
Virtual Private LAN 331
Virtual Private Networks (VPNs) 27, 55, 160, 331–
367
Authentifizierung 335
Beispiel-Konfigurationen 351–367
Ethernet über MPLS 341–342
Fehlersicherung 27
Generic Routing Encapsulation Tunnels 351
Hard Tokens 176
IP Spoofing Gegenmaßnahme 152
IPSec siehe IPSec 346
Kryptographie 334
Linux SSL VPN Beispiel 360
Metro-Ethernet-Dienste 339–341
Operator VPNs 337–343
Optische VPNs 342–343
Pseudowires (PWs) 343
Router 55
Secure Socket Layer (SSL) VPN 350
Tunnels 333
über öffentliche Netze 332–336
über private Datenleitungen 332
Windows XP L2TP/IPSec Beispiel 357
Windows XP PPTP Beispiel 353
Virus 84
VLAN Access Control Lists siehe Cisco (Access
Control Listen)
VLAN siehe Virtual LAN
VLSM siehe Internet Protocol (Variable Length
Subnet Masking)
Voice-over-IP (VoIP) 9, 55, 59
IPSec 350
Vollduplexbetrieb
Transmission Core Protocol (TCP)
25
Vollduplexkommunikation 150
Von-Neumann-Architektur 131
VPN siehe Virtual Private Network
479
W
W32/Nimda.A Wurm 416
Wardriving 87
Waveplate 236
Web of Trust 281, 283
Web-based Distributed Authoring and Versioning
(WebDAV) 73
WebDAV siehe Web-based Distributed Authoring and Versioning
Web-Server-Sicherheit 405–420
Apache SSL-Einrichtung 412–414
Apache-spezifische Sicherheitmaßnahmen
416–420
Attacken 405–411
Internet Information Server 420
Logging 415–416
Wegewahl siehe Routing und Switching
weißes Rauschen 115
Well Known Ports 33
WEP siehe Wired Equivalent Privacy
Whitedust Security 127
Whitelist 167, 312
whois 124
whois-Dienst 389
WIDE siehe Widely Integrated Distributed Environment
Wide-Area Network 333
Wide-Area Network siehe Wide-Area Network
Widely Integrated Distributed Environment
(WIDE) 140
Widerrechtliche Aneignung
85
WIDS siehe Wireless Intrusion Detection System
Wi-Fi (Wireless Fidelity) 7
Wi-Fi Protected Acces (WPA)
Einsatzformen 434
Wi-Fi Protected Access (WPA) 434–438
Wi-Fi siehe Institute of Electrical and Electronics
Engineer Standards (802.11)
WiMax siehe Institute of Electrical and Electronics Engineers Standards (802.16)
Win32 API 272
Windows Presentation Foundation Everywhere
(WPF/E) 411
Windows XP/Vista
AntiSpyware 105
Auditing 106
Digitale Zertifikate 271
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
480
Index
E-Mail mit Zertifikaten 285
Group Policy 358
Logging 106
Non-Execution Flag 133
Remotedesktopverbindung 249
SSH Client (PuTTY) 247
Vista Firewall 316
XP Internet Connection Firewall (ICF) 312
XP L2TP/IPSec VPN 357
XP Point-to-Point Tunneling Protocol (PPTP)
VPN 353
WinPcap 157, 394
Wired Equivalent Privacy (WEP) 222, 431–434
Authentifizierung 432
Paketformat 432
Schwächen 433
Ver-und Endschlüsselung 223
Wireless Intrusion Detection System (WIDS) 441
Wireless LAN (WLAN) 48
Attacken und Gegenmaßnahmen 439–450
Auffinden (Discovery) 439
Frame-Format (802.11) 429
Intrusion Detection Systems 448
Sicherheit 425–450
Verbindungsaufbau (802.11) 428
Wireless Local Loop 431
Wireless Markup Language (WML) 9
Wireshark 101, 158
wire-speed 50
WLAN siehe Wireless LAN
WLL siehe Wireless Local Loop
WML siehe Wireless Markup Language
Wörterbuchattacken 258
WPF/E siehe Windows Presentation Foundation
Everywhere
Wurm 84
Wurzelzertifikat (Root Certificate) 270
X
X.500 siehe International Standards Organization
(ISO)
X.509 siehe International Telecommunications
Union (ITU)
XD (execute disable) siehe Non-Execution Flag
xinetd 111, 174
XML siehe Extensible Markup Language
xmldsig siehe XML-Signature Syntax and Processing Empfehlung
XML-Signature Syntax and Processing Empfehlung (xmldsig) 214, 274
XSS siehe Cross-Site Scripting
Z
Zebra siehe GNU Zebra
Zeitmultiplex 7, 48, 55, 332, 431
Zeitreihenanalyse 385
Zeitüberschreitungs Attacke siehe Internet Control Message Protocol (Attacken)
Zero-Day Exploit 84, 87
Zertifikate 265–279
Dienste (Windows) 271
Generierung 360, 412
Gesetze (Deutschland) 268
Gesetze (Österreich) 269
Installation (Windows) 271
Regulierung 269
Skelett-Zertifikat 265
Softwarezertifikate 175
Zertifikatsmanagement, Zertifikatsdistribution
und PKI 277–279
Zertifikatspeicher (Windows) 273
Zivilprozessordnung (ZPO) 271
Zombie Netzwerk 162
Zone File 46
Zonen 43
ZPO siehe Zivilprozessordnung
Zufallszahlen 164
Zugriffskontrolle 307
Zugriffskontrolllisten (ACLs) siehe Access Control Listen
Zuordnungstabelle (PAT) 300
Zustandsdiagramm 385
zustandslose Verarbeitung 297
zustandsorientiert Verarbeitung 294, 299, 318
Zuverlässigkeit (Reliability) 9, 85
zyklische Gruppen siehe Gruppen
© des Titels »Netzwerke und Netzwerksicherheit« (ISBN 3-8266-5048-2) 2006 by Hüthig Verlag,
Heidelberg
Herunterladen