
Netflix-Entwickler haben vier Sicherheitslücken im TCP-Code der Kernel von Linux und FreeBSD entdeckt. Eine davon kann per Denial-of-Service Attacke zum Auslösen eines Kernel-Panic genutzt werden.
TCP steht für Transmission Control Protocol und ist ein Netzwerkprotokoll, das bestimmt, wie Daten zwischen Netzwerkkomponenten ausgetauscht werden. Im Gegensatz zum verbindungslosen UDP (User Datagram Protocol) stellt TCP dazu eine Verbindung zwischen zwei Endpunkten einer Netzverbindung her, auf der in beide Richtungen Daten übertragen werden können.
Angriff per Integerüberlauf
Die vier Lücken bieten einen Angriffsvektor in der Art, wie die TCP-Implementation im Kernel das Selective Acknowledgement (SACK) gehandhabt wird. Dabei handelt es sich um eine Erweiterung des TCP-Protokolls zur Steigerung des Datendurchsatzes bei Paketverlusten. Dabei wird per SACK nur das neue Paket und nicht der gesamte Inhalt des jeweiligen TCP Receive Window neu angefordert.
Die Lücke, die durch einen Integerüberlauf beim Verarbeiten des TCP-SACK einen Kernel-Panic und damit den Absturz von Servern herbeiführen kann ist als CVE-2019-11477 katalogisiert. Die anderen drei Verwundbarkeiten erreichen durch Denial-of-Service Attacken eine Ressourcenverknappung, der zum Verlangsamen des Systems, zum Systemstillstand oder -Absturz führen kann.
Die beiden anderen Linux betreffenden Lücken sind unter CVE-2019-11478 und CVE-2019-11479 katalogisiert. Die Lücke im Kernel von FreeBSD trägt die CVE-Nummer 2019-5599. Die mit Priorität hoch kategorisierte Lücke CVE-2019-11477 ist in allen Linux-Kerneln seit 2.6.29 aus dem Jahr 2009 vertreten.
Bereits geschlossen
Unter Linux wurden die Lücken bereits für die stabilen Kernel-Versionen 4.4.182, 4.9.182, 4.14.127, 4.19.52, sowie 5.1.11 geschlossen. Anwender, die nicht auf einen dieser Kernel aktualisieren können, behelfen sich mit einem Workaround, indem sie mittels
sudo echo "0" > /proc/sys/net/ipv4/tcp_sack
sudo echo "0" > /proc/sys/net/ipv6/tcp_sack
die Unterstützung für TCP-SACK deaktivieren. Der Hack ist nicht permanent und muss nach einem Neustart wiederholt werden.
Schreibe einen Kommentar