Forscher der Qualys Threat Research Unit haben fünf Sicherheitslücken in der Ubuntu-Standardkomponente „needrestart“ entdeckt. Die Schwachstellen ermöglichen eine lokale Rechteausweitung (Local Privilege Escalation, LPE) auf betroffenen Systemen.
Diese Schwachstellen können von jedem nicht privilegierten Benutzer ausgenutzt werden, um vollen Root-Zugriff zu erlangen, ohne dass eine Interaktion des Benutzers erforderlich ist. Die identifizierten Schwachstellen wurden mit den CVE-Kennungen CVE-2024-48990, CVE-2024-48991, CVE-2024-48992, CVE-2024-10224 und CVE-2024-11003 versehen, was die Notwendigkeit einer sofortigen Behebung zum Schutz der Systemintegrität unterstreicht.
Das Qualys TRU-Team hat erfolgreich funktionale Exploits für diese Schwachstellen entwickelt. Wir werden unsere Exploits zwar nicht offenlegen, aber man sollte sich bewusst sein, dass diese Schwachstellen leicht ausnutzbar sind und andere Forscher möglicherweise kurz nach dieser koordinierten Offenlegung funktionierende Exploits veröffentlichen werden.
Diese Schwachstellen bestehen seit der Einführung der Interpreterunterstützung in der Version 0.8 von needrestart, die im April 2014 veröffentlicht wurde.
Was ist needrestart?
Needrestart ist ein Dienstprogramm, das Systeme scannt, um festzustellen, ob ein Neustart für das System oder seine Dienste erforderlich ist. Insbesondere kennzeichnet es Dienste für einen Neustart, wenn sie veraltete gemeinsam genutzte Bibliotheken verwenden – beispielsweise, wenn eine Bibliothek während einer Paketaktualisierung ersetzt wird.
Da es in Server-Images integriert ist, ist needrestart so eingestellt, dass es nach APT-Vorgängen wie Installation, Upgrade oder Entfernung, einschließlich unbeaufsichtigter Upgrades, automatisch ausgeführt wird. Seine Hauptaufgabe besteht darin, Dienste zu identifizieren, die nach kritischen Bibliotheksaktualisierungen neu gestartet werden müssen, wie z. B. die C-Bibliothek (glibc). Dieser Prozess stellt sicher, dass Dienste die neuesten Bibliotheksversionen nutzen, ohne dass ein vollständiger Neustart des Systems erforderlich ist, wodurch die Betriebszeit und Leistung verbessert werden. Durch die sofortige Aktualisierung von Diensten mit den neuesten Bibliotheken ist needrestart für die Aufrechterhaltung der Sicherheit und Effizienz von Ubuntu Server von entscheidender Bedeutung.
Betroffene needrestart-Versionen:
Die Schwachstellen sind in der Komponente needrestart vorhanden, die standardmäßig auf Ubuntu Servern seit Version 21.04 installiert ist und eine beträchtliche Anzahl von Implementierungen weltweit betrifft. In Versionen vor 3.8 ermöglicht die Komponente lokalen Angreifern, beliebigen Code als root auszuführen. Dieser Exploit wird durch die Manipulation einer vom Angreifer kontrollierten Umgebungsvariablen erreicht, die den Python/Ruby-Interpreter beeinflusst, indem sie nicht bereinigte Daten an eine Bibliothek weiterleitet, die sichere Eingaben erwartet, wodurch die Ausführung beliebiger Shell-Befehle ermöglicht wird. Versionen von needrestart vor 3.8 sind betroffen, und eine Lösung ist in Version 3.8 verfügbar.
Mögliche Auswirkungen
Diese Schwachstellen im Dienstprogramm needrestart ermöglichen es lokalen Benutzern, ihre Berechtigungen zu erweitern, indem sie bei Paketinstallationen oder -aktualisierungen beliebigen Code ausführen, wobei needrestart häufig als Root-Benutzer ausgeführt wird.
Ein Angreifer, der diese Schwachstellen ausnutzt, könnte Root-Zugriff erlangen und die Systemintegrität und -sicherheit gefährden.
Dies birgt erhebliche Risiken für Unternehmen, darunter unbefugter Zugriff auf sensible Daten, Installation von Malware und Unterbrechung des Geschäftsbetriebs. Es könnte zu Datenschutzverletzungen, Nichteinhaltung von Vorschriften und Vertrauensverlust bei Kunden und Interessengruppen führen, was sich letztlich auf den Ruf des Unternehmens auswirkt. Unternehmen sollten dieses Risiko schnell mindern, indem sie die Software aktualisieren oder die anfällige Funktion deaktivieren.
Schritte zur Risikominderung
Die Deaktivierung der Interpreter-Heuristik in der Konfiguration von needrestart verhindert diesen Angriff. Die Konfigurationsdatei von needrestart befindet sich normalerweise unter /etc/needrestart/needrestart.conf. Diese Datei enthält verschiedene Einstellungen, die das Verhalten des Dienstprogramms needrestart steuern.
Weitere technische Informationen hier.