Looney Tunables: Rechteausweitung durch Pufferüberlauf in glibc

In der zentralen Linux-Bibliothek klafft eine Lücke, durch die Angreifer Root-Rechte erlangen können. Patches stehen bereit.

In Pocket speichern vorlesen Druckansicht 59 Kommentare lesen

(Bild: J0hnTV/Shutterstock.com)

Lesezeit: 2 Min.

In der GNU libc führt ein Pufferüberlauf zur Rechteausweitung für lokale Nutzer. Der Bug wurde behoben und aktualisierte Pakete für die großen Linux-Distributionen stehen bereit.

Die libc-Bibliothek ist eine der zentralen Komponenten jedes Linux-Systems und stellt unter anderem die Funktionen zum dynamischen Laden anderer Softwarekomponenten bereit. Ein vom Sicherheitsunternehmen Qualys entdeckter Pufferüberlauf erlaubt Angreifern nun, ihre eigenen Rechte auszuweiten und so ein anfälliges Linux-System zu übernehmen.

Der Pufferüberlauf kann bei der Verarbeitung der Umgebungsvariable GLIBC_TUNABLES auftreten – wie Qualys in einer ausführlichen Analyse anmerkt, gab es bereits in der Vergangenheit an ähnlicher Stelle in glibc Sicherheitsprobleme. Mithilfe des Pufferüberlaufs waren die Forscher imstande, auf aktuellen Debian-, Ubuntu- und Fedora-Systemen Root-Rechte zu erlangen. Die Sicherheitslücke wird als CVE-2023-4911 mit einem CVSS-Wert von 7.8 und demnach dem Risiko "hoch" geführt; Qualys hat sie auf den Namen "Looney Tunables" getauft.

Der dynamische Loader ld.so verarbeitet bei jedem Aufruf vom Nutzer übergebene Daten etwa aus der Umgebungsvariable GLIBC_TUNABLES. Der Programmcode erwartet Parameter in der Form tuneable1=wert1:tuneable2=wert2. Durch die Angabe etwa von tuneable1=tuneable2=wert können bösartige Akteure jedoch einen Pufferüberlauf provozieren. In der Folge können sie den Stack manipulieren, SUID-Programme wie mount dazu bringen, Code mit Root-Rechten auszuführen und so das System übernehmen.

Die Entwickler der glibc sowie die betroffenen Distributionen haben bereits reagiert: Sowohl für Ubuntu, als auch für Debian sowie RedHat-basierte Linuxe stehen aktualisierte Pakete bereit, welche die Lücke im dynamischen Loader beheben.

(cku)