Weiter Zurück [Inhalt] Online Suche im Handbuch LITTLE-IDIOT NETWORKING

14.19 TCP sequence number checking

SINUS Firewall kann einige weitere Angriffe wirkungsvoll bekämpfen, die vielen Anbietern noch Probleme bereiten:

Spoofing

Besonders beliebt ist ein Angriff, der ein wenig der Mithilfe einer Arbeitsstation im Netzwerk bedarf. Hierzu sendet man an einen beliebigen Benutzer in einem Unternehmen unter einem Vorwand ein Programm, welches dieser dann startet. Was er nicht weiß, daß dieses Programm, mit der gespooften (vorgetäuschten) Adresse eines Servers oder der Firewall eine Verbindung zu einem Server im Internet aufbaut. Die Firewall, in Erwartung eines Datenstromes von diesem Server als Antwort läßt somit Pakete eines Angreifers, die an die Firewall oder einen Server im geschützten Netzwerk adressiert sind, passieren. Woher sollte die Firewall wissen, daß es nicht der Server oder die Firewall selber war, die die Verbindung aufgenommen hat. Bei einer vorgetäuschten FTP-Verbindung, z.B. könnte mit dem Befehl PORT 23 der Firewall signalisiert werden, daß ein Datenstrom aus dem Internet zum inneren Server auf Port 23 (telnet) zuzulassen ist. Der Angreifer hätte somit aus dem Internet auf den internen Server über die Firewall hinweg Zugriff.

Window Oversize

Server mit sehr schneller Anbindung sind einer zusätzlichen Gefahr ausgesetzt. Sequenznummern müssen in ein gewisses Fenster fallen. Zu Beginn einer TCP-Verbindung wird dem Server vom Client mitgeteilt, daß ab der "initial seqeuence number" (ISN) sich alle übermittelten Sequenznummern (SSN) in einem bestimmten Fenster befinden müssen. In "high speed networks" kann es somit passieren, daß ein Angreifer Pakete erzeugt, die ähnlich wie beim "session hijacking" dafür sorgen, daß ein "wrapping" der SSN´s, also ein Umbruch über das Maximum von 32 Bit stattfindet, und die SSN´s im untersten Bereich der möglichen SSN´s fortgeführt werden. Somit kann es einem Angreifer gelingen, das die Firewall Pakete passieren läßt, obwohl die die SSN´s falsch sind. Dieser Angriff ist nur dann möglich, wenn in hispeed networks der TCP/IP-Stack der Firewall die SSN´s nicht entsprechend mit dem vom Client vorgeschlagenen Fester (window size) vergleicht, nach "between", "before" und "after" differenziert, und Pakete, deren SSN nicht in das Fenster fällt, blockt. Einige Serverbetriebsysteme differenzieren nicht. Auch einige Firewalls, die sich zu Clustern zusammenkoppeln lassen, sparen sich diese Abfrage besonders in Hinsicht des Falles, daß die Verbindung erfolgreich zustande gekommen ist (connection established state). Sie tauschen nur bei der Einleitung (connection establishment), also während der SYN-SYN/ACK Sequenzen und Beendigung (connection termination), bzw. während der RST/RST oder FIN/FIN Übermittlung Informationen über das Fenster aus. Grund dieses Vorgehens ist, daß ein Datenaustausch zwischen den Firewalls über Verbindungszustände und dynamische Filterregeln nur bei Anfang und Ende einer Übertragung stattfinden muß. Falls sich Firewall Cluster auch noch nebenher über die windows size der einzelnen HiSpeed Verbindungen kontinuierlich austauschen müßten, wären wohl die Firewalls etwas überfordert. Angesichts der Tatsache, daß fehlerhafte Prüfsummen ein RESET Signal an die Sourceadresse zur Folge haben, könnte hiermit eine Firewall als RESET- Generator mißbraucht werden. Sämtliche an den Backbone angeschlossene Hosts sind in Gefahr, durch eine Flut von RESETs mit geschickt gewählten , gespooften IP - Nummern von dem Rest der Welt abgeschnitten zu werden.

DoS mit falschen Prüfsummen

Pakete mit falschen TCP Prüfsummen, die von der Firewall nicht frühzeitig aussortiert werden, können den TCP/IP Stack übermäßig stark beanspruchen und evtl. auch korrumpieren.

Windows scale option

Wie in RFC 1323 in den Erweiterungen für Hochgeschwindigkeitsnetze beschrieben, kann die "window size", in die die TCP SSN´s fallen müssen, auf 32 Bit erweitert. Sie kann nur im SYN segment initiiert werden und muß von beiden Hosts unterstützt werden (window scale option). Beim Einsatz von Servern in Hispeed LAN´s ist die Erweiterung auf 64 Bit zu empfehlen (LINUX 2.2, Solaris, NetBSD)

PASV Modus bei FTP

Der "passive" Modus (PASV-FTP) bei der FTP-Übertragung erfordert stets eine Erweiterung gewöhnlicher Filter oder generischen Proxy's um die spezifischen Protokollmechanismen. Es muß dafür gesorgt werden, daß der Client innerhalb des gesicherten Netzwerkes beim Zugriff auf einen FTP-Server über die Firewall stets die Portnummer bestimmt. Dies geschieht über den PORT Befehl. Die Firewall muß also den PORT Befehl auf Zahlen < 1024 überprüfen, damit ein Zugriff auf die privilegierten Ports aus dem Internet unterbunden wird. Ein Restrisiko bleibt jedoch. Viele Intranet-Server, Proxy-Cache und SQL - Server belegen unpriviligierte Ports. Hier muß dafür gesorgt werden, daß IDENTD , DNS (reverse lookup) im gesicherten Netzwerk zuverlässig funktionieren. Evtl. sind weitere Filterregeln notwendig, um diese Ports auf internen Servern nochmals abzusichern. Die SINUS Firewall begrenzt die möglichen Ports, aufalle unpriviligierten < 1024, mit Ausnahme der für X-Windows reserviertenPorts 6000...6100. Ein Zugriff auf privilegierte Ports oder X-Window -Server über die Firewall hinweg ist dann nicht mehr möglich. Es gibt aber genügend Portnummern, die z.B. für Fernwartung, Proxy-Cache o.ä. genutzt werden. Diese Ports sind weiterhin gefährdet.


Weiter Zurück [Inhalt] Online Suche im Handbuch LITTLE-IDIOT NETWORKING