Heute haben wir über Zustand (State) im Netzwerk gesprochen. Wo und wann dieser erzeugt wird und welche Implikationen er haben kann, wenn es um Angriffe geht.
| Anfang | 2-msc-ain-internet-proto-design-160510 – Seite 36 |
|---|---|
| Ende | 2-msc-ain-internet-proto-design-160510 – Seite 42 |
State in Networking
Wo befinden sich Zustände (state)?
- PC: TCP Connection State (Lokale IP und Port, Remote IP und Port, Sequence- und Acknowledgement-Nummer, Größe des Windows) = TCP Control Bar (TCB)
- Firewalls/Middleboxes im Netzwerk: TCP und UDP Connection State, IPv4 Fragmente
- Router: IPv4 Fragmente
Wie werden solche Zustände verwaltet?
- Erzeugung: TCP-SYN-Packete
- Reguläre Entfernung: TCP-FIN-Packete (Nicht immer gegeben)
- Sonstige Entfernung: Zeitgesteuert mit Timern
- Feste Zustände: „Sowas macht man nicht!“
Was ist ein Soft State?
- Dies bedeutet, dass der Zustand an eine Lebensdauer geknüpft ist
- Dies wird bspw. durch einen Timer gesteuert
- Nahezu jeder Status/Zustand ist ein Soft State
Was passiert, wenn der Timer ausläuft?
- Kommt ein Paket innerhalb des Gültigkeitszeitraumes an, wird der Timer zurückgesetzt (Refresh)
- Läuft der Timer ohne ein Paket aus, wird der Zustand wird sofort/nach einer Wartezeit entfernt
Warum ist es bei TCP schlecht, sofort einen Zustand anzulegen, wenn das erste SYN-Paket eingeht?
- Ein Angreifer kann zahlreiche SYN-Pakete schicken und nicht auf die SYN+ACK-Pakete antworten (ignorieren/droppen)
- Durch diese halboffenen Verbindungen kann die Betriebsfähigkeit eines Dienstes bzw. Hosts eingeschränkt werden (vgl. Abbildung 1)

Was ist ein Delayed State?
- Man sollte nur einen Zustand erzeugen, wenn man sicher ist, dass der andere auch da ist und es ernst meint
- Dies kann mit dem SYN-Cookies-Mechanismus gelöst werden
- Der Zustand wird erst nach Rücklieferung des Cookies erzeugt (vgl. Abbildung 2)
- Mithilfe eines rechenintensiven Puzzles (Primzahlen) kann dies noch verstärkt werden (vgl. Abbildung 3)

