Ubuntu-Lücke in snap-confine: Lokaler Nutzer wird zu Root
Die Qualys Threat Research Unit hat eine Schwachstelle in snap-confine gefunden, über die ein unprivilegierter lokaler Nutzer auf einem Standard-Ubuntu vollständige Root-Rechte erlangen kann. Die Lücke trägt die Kennung CVE-2026-8933 und ist mit einem CVSS-Wert von 7.8 als hoch eingestuft. Betroffen sind Standardinstallationen mehrerer aktueller Ubuntu-Versionen. Canonical hat die Fehler bereits gepatcht, die Updates sollten zeitnah eingespielt werden.
Der Haken an der Sache: Die Lücke entstand ausgerechnet durch eine Änderung, die Ubuntu sicherer machen sollte. Wer eine der betroffenen Versionen betreibt, sollte heute prüfen, ob snapd aktuell ist, und danach neu starten.
Was snap-confine macht und warum das so heikel ist
snap-confine ist die Komponente des Paketdienstes snapd, die Snap-Anwendungen in einer isolierten Umgebung startet, der sogenannten Sandbox. Sie setzt dafür mehrere Schutzmechanismen des Linux-Kernels ein, darunter Mount-Namespaces, AppArmor und eine Dateisystemisolation. Diese Mechanismen sollen verhindern, dass eine Anwendung aus ihrer Umgebung ausbricht und auf den Rest des Systems zugreift.
Genau diese Komponente läuft mit hohen Rechten. Ursprünglich startete snap-confine über das Setuid-Bit direkt als Root und gab diese Rechte nach der Initialisierung wieder ab. Canonical hat in neueren Ubuntu-Versionen auf ein Set-Capabilities-Modell umgestellt. Dabei werden die Root-Rechte in einzelne Berechtigungen zerlegt, sodass ein Prozess nur die Fähigkeiten bekommt, die er wirklich braucht. Das folgt dem Prinzip der minimalen Rechtevergabe und ist eigentlich die sicherere Bauweise. In diesem Fall hat die Umstellung aber ein Zeitfenster geöffnet, das vorher nicht existierte.
Wie der Angriff funktioniert
Während der Einrichtung der Sandbox läuft snap-confine nun unter der Benutzerkennung des aufrufenden Nutzers, behält aber weiterhin nahezu vollständige Root-Fähigkeiten. Gleichzeitig legt das Programm temporäre Verzeichnisse und Dateien unter /tmp an. Diese gehören zunächst dem unprivilegierten Nutzer und werden erst kurz darauf an Root übertragen. In diesem kurzen Moment hat der Angreifer noch die Kontrolle über die Verzeichnisstruktur.
Der von Qualys beschriebene Exploit nutzt zwei ineinandergreifende Wettlaufsituationen aus. Zuerst hängt der Angreifer unmittelbar nach dem Anlegen ein FUSE-Dateisystem über das temporäre Verzeichnis. Damit umgeht er die Mount-Namespace-Isolation, die snap-confine erst danach anwendet, und behält den Zugriff auf das Verzeichnis von außerhalb der Sandbox. Anschließend legt er einen symbolischen Link an, der auf eine beliebige Zieldatei zeigt. Wenn snap-confine dann eine Datei in der Sandbox anlegt, folgt der open()-Aufruf dem Link und schreibt in die Zieldatei. Eine zweite Wettlaufsituation erlaubt es, die Dateirechte auf 0666 zu setzen, bevor snap-confine mit fchown() den Besitz an Root übergibt.
Um schließlich die AppArmor-Beschränkung zu umgehen, zielt der Angriff auf den Pfad /run/udev/, für den Schreibzugriff erlaubt ist. Legt der Angreifer dort im Verzeichnis /run/udev/rules.d/ eine manipulierte .rules-Datei ab und stößt einen Ein- und Aushängevorgang des FUSE-Dateisystems an, führt systemd-udevd beliebige Befehle als Root aus. Am Ende dieser Kette steht die vollständige lokale Rechteausweitung bis zum Root-Benutzer.
Wichtig zur Einordnung: Der Angreifer braucht bereits einen Zugang zum System, also ein Benutzerkonto oder die Möglichkeit, lokal Code auszuführen. Aus der Ferne allein lässt sich die Lücke nicht ausnutzen. Wer aber schon einen Fuß in der Tür hat, etwa über eine kompromittierte Anwendung oder ein schwaches Nutzerkonto, macht daraus mit dieser Lücke die volle Kontrolle über das System. Damit werden Arbeitsplatzrechner, Entwicklersysteme und administrative Endpunkte zum Teil der Angriffsfläche.
Betroffene Versionen
Laut dem offiziellen Bulletin von Canonical sind die Standardinstallationen von Ubuntu 22.04 LTS, Ubuntu 24.04 LTS und Ubuntu 26.04 LTS betroffen. Qualys nennt zusätzlich Ubuntu Desktop 25.10.
Ein Detail verdient Aufmerksamkeit: Bei Ubuntu 24.04 hängt die Verwundbarkeit davon ab, ob das System auf die aktuelle snapd-Version mit der Set-Capabilities-Variante von snap-confine aktualisiert wurde. Es reicht also nicht, sich am Alter der Release-Version zu orientieren. Entscheidend ist die tatsächlich installierte snapd-Version. Prüfen Sie diese, statt sich auf den Patch-Stand der Distribution zu verlassen.
Canonical hat die Korrekturen am 21. Juli 2026 mit dem Advisory USN-8579-1 veröffentlicht, das gleich drei Schwachstellen in snapd schließt. Neben CVE-2026-8933 sind das:
- CVE-2026-15226 (CVSS 8.4), gefunden von Zygmunt Krynicki bei Canonical. Ein Angreifer, der bereits Code als eingeschränkter Root-Prozess ausführen kann, bricht aus der Confinement-Umgebung aus und wird zu uneingeschränktem Root, indem er beliebige Setuid-Programme anlegt.
- CVE-2024-5300 (CVSS 5.6), gefunden von James Henstridge bei Canonical. Eine eingeschränkte Anwendung kann über die varlink-Schnittstelle von systemd-userdbd an die Passwort-Hashes von Nutzern gelangen.
Wer wegen der snap-confine-Lücke patcht, schließt diese beiden Lücken also gleich mit.
- Aktualisieren Sie snapd umgehend über die verfügbaren Sicherheitsupdates. Auf Ubuntu genügt in der Regel sudo apt update gefolgt von sudo snap refresh.
- Prüfen Sie die tatsächlich installierte snapd-Version, statt sich auf die Release-Nummer zu verlassen. Gerade bei Ubuntu 24.04 hängt die Verwundbarkeit an der konkreten Paketversion.
- Nutzer der älteren LTS-Versionen 20.04, 18.04 oder 16.04 erhalten die gepatchten Pakete über Ubuntu Pro und die ESM-Repositories.