Sicherheitslücke im Linux-Kernel

"Alles begann mit einem Support-Ticket"

08.03.2022
Von Redaktion Computerwoche
Ein Softwareentwickler entdeckte eine schwerwiegende Sicherheitslücke in Linux. Die “Dirty-Pipe”-Schwachstelle ermöglicht Unberechtigten, schreibgeschützte Dateien zu überschreiben.
Das Ticket eines Kunden, der sich darüber beschwerte, dass die von ihm heruntergeladenen Zugangsprotokolle nicht dekomprimiert werden konnten, brachte den Stein ins Rollen.
Das Ticket eines Kunden, der sich darüber beschwerte, dass die von ihm heruntergeladenen Zugangsprotokolle nicht dekomprimiert werden konnten, brachte den Stein ins Rollen.
Foto: GaudiLab - shutterstock.com

Es liest sich fast wie die Erzählung einer Geschichte, was der Softwareentwickler Max Kellermann über die Schwachstelle "Dirty Pipe" schreibt. Tatsächlich handelt es sich aber um eine schwerwiegende Sicherheitslücke im Linux-Kernel ab Version 5.8 (CVE-2022-0847), die der Softwareentwickler sehr ausführlich und dokumentarisch beschreibt. Die Schwachstelle ermöglicht es, Dateien zu überschreiben, ohne über die entsprechenden Zugriffsrechte zu verfügen. Betroffen sind davon nicht nur Computer mit Linux-Systemen sondern auch Android-Smartphones, auf denen nicht vertrauenswürdige Apps ausgeführt werden.

Akribisch zur Wurzel des Linux-Übels

Kellermann wurde erstmals im Februar 2021 über ein Support-Ticket darauf aufmerksam. Er fand eine beschädigte Protokolldatei auf einem der Protokollserver und behob den Fehler durch das Korrigieren des CRC-Wertes am Ende der Datei. Als sich aber in den kommenden Monaten immer mehr Support-Tickets mit dem gleichen Problem häuften, machte sich der Developer auf die Suche nach dem Ursprung. In akribischer Kleinarbeit erkannte Kellermann ein Muster und konnte den Fehler in der Verarbeitung von Pipes im Linux-Kernel nicht nur lokalisieren sondern auch reproduzieren.

Ende Februar 2021 informierte der Developer die Linux-Distribution, das Linux Kernel Security Team sowie das Android Security Team. Nur wenige Tage später reagierte das Linux-Team mit den Realeases 5.16.11, 5.15.5 und 5.10.102. Auch Google hat Kellermanns Bugfix bereits in den Android-Kernel integriert. (bw)