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