Kürzlich wurde im Netz die Nachricht von der Entdeckung veröffentlicht eine neue Schwachstelle in Linux was aufgeführt ist als „High Severity“, der alle Kernel seit Version 5.8 betrifft, sowie Derivate, einschließlich Android.
Bekannt als Dirty Pipe ermöglicht das Überschreiben von Daten in schreibgeschützten Dateien und kann zu einer Eskalation von Berechtigungen führen durch Einschleusen von Code in die "Root"-Prozesse.
Obwohl es bereits in den Mainline-Linux-Kernel gepatcht wurde, könnte der Fehler in Form eines Rechte-Eskalations-Exploits auf allen Geräten mit Linux-Kernel-Version 5.8 oder höher als Waffe eingesetzt werden.
Es bedeutet auch, dass eine Reihe neu veröffentlichter Android-Smartphones, wie das Samsung Galaxy S22 und Google Pixel 6, ebenfalls anfällig sind, bis jedes Gerät den entsprechenden Kernel-Patch vom jeweiligen OEM erhält.
Über Dirty Pipe
Die Schwachstelle war enthüllt vom Sicherheitsforscher Max Kellerman und katalogisiert als (CVE-2022-0847), dauerte es einige Monate, bis ein Proof-of-Concept-Exploit gefunden wurde.
Die Schwachstelle ermöglicht es einem nicht privilegierten Benutzer, Daten in schreibgeschützte Dateien einzufügen und zu überschreiben, einschließlich SUID-Prozessen, die als Root ausgeführt werden. Der umgangssprachliche Spitzname scheint ein Spiel mit dem berüchtigten Fehler zu sein Schmutzige Kuh und ein Linux-Mechanismus namens Pipelining für die Übermittlung von Nachrichten zwischen Prozessen, da letzterer während der Exploit-Routine verwendet wird.
Alles begann vor einem Jahr mit einem Support-Ticket im Zusammenhang mit beschädigten Dateien. Ein Kunde beschwerte sich, dass heruntergeladene Zugriffsprotokolle nicht entpackt werden konnten. Und tatsächlich gab es auf einem der Protokollserver eine beschädigte Protokolldatei; es könnte unkomprimiert sein, aber gzip hat einen CRC-Fehler gemeldet. Ich konnte nicht erklären, warum es beschädigt war, aber ich nahm an, dass der nächtliche Split-Prozess abgestürzt war und eine beschädigte Datei erzeugt hatte. Ich habe den CRC der Datei manuell korrigiert, das Ticket geschlossen und das Problem bald vergessen.
Nach monatelanger Analyse Der Forscher entdeckte schließlich, dass die beschädigten Client-Dateien das Ergebnis eines Fehlers im Linux-Kernel waren. Er fand einen Weg, Dirty Pipe auszunutzen, um jedem mit einem Konto, einschließlich weniger privilegierter „Niemand“-Konten, zu ermöglichen, einen SSH-Schlüssel zum Root-Benutzerkonto hinzuzufügen.
Um die Schwachstelle auszulösen, teilte Kellerman seinen Proof of Concept mit, muss der Angreifer Leserechte haben. Außerdem darf das Scrollen nicht an einer Seitengrenze erfolgen, das Schreiben darf eine Seitengrenze nicht überschreiten und die Größe der Datei kann nicht geändert werden.
Um diese Schwachstelle auszunutzen, müssen Sie: eine Pipe erstellen, die Pipe mit beliebigen Daten füllen (indem Sie das Flag PIPE_BUF_FLAG_CAN_MERGE für alle Einträge im Ring setzen), die Pipe leeren (das Flag für alle Instanzen der Struktur pipe_buffer in der Struktur gesetzt lassen). des Pipe_inode_info-Rings), führen Sie die Daten aus der Zieldatei (geöffnet mit O_RDONLY) in die Pipe kurz vor dem Ziel-Offset ein und schreiben Sie beliebige Daten in die Pipe.
Dirty Pipe betrifft auch jede Version von Android, die auf einer der anfälligen Versionen des Linux-Kernels basiert. Da Android so fragmentiert ist, können betroffene Gerätemodelle nicht einheitlich verfolgt werden.
Laut Kellermann Google hat seinen Bugfix letzten Monat mit dem Android-Kernel zusammengeführt, direkt nachdem es mit der Veröffentlichung der Linux-Kernel-Versionen 5.16.11, 5.15.25 und 5.10.102 behoben wurde.
Allerdings müssen wir wahrscheinlich noch etwas warten, bis die OEMs mit dem Rollout von Android-Updates beginnen, die den Fix enthalten. Googles Pixel 6 zum Beispiel ist immer noch anfällig, aber fortgeschrittene Benutzer können den Fehler abmildern, indem sie als alternative Option einen benutzerdefinierten gepatchten Aftermarket-Kernel installieren.
Linux-Kernel-Entwickler haben am 5.16.11. Februar Fixes (5.15.25, 5.10.102, 23) veröffentlicht, während Google den Android-Kernel am 24. Februar gepatcht hat. Kellermann und andere Experten verglichen die Schwachstelle damit CVE-2016-5195 „Schmutzige Kuh“ und sie sagten, es sei noch einfacher auszunutzen.
Wenn Sie mehr darüber erfahren möchten, können Sie die Details konsultieren im folgenden Link.