
Waffenisierter lokaler Privilege-Escalation-Exploit für CVE-2026-7867 in udisks2, der as-user-Mount-Spoofing verwendet, um PolicyKit zu umgehen und eine Root-Shell zu erlangen.
as-user Spoofing → Authorization Bypass → Root-context Mount → LPECVE-2026-7867 ist eine lokale Privilegienausweitungsschwachstelle in udisks2, die die D-Bus-Methode Filesystem.Mount, die Option as-user, fstab-gesteuerte Mount-Abläufe und eine fehlerhafte Autorisierungsbehandlung betrifft.
Dieses private Repository enthält die technischen Forschungsnotizen und Proof-of-Concept-Skripte, die zur Validierung des Problems in einer kontrollierten Laborumgebung verwendet wurden.
Die Schwachstelle wurde entdeckt und gemeldet von:
| Azizcan Daştan | azqzazq1 |
| Özlem Ozan | oz7oz7 |
Das Problem wurde zugewiesen:
CVE-2026-7867
Die Schwachstelle wird durch eine fehlerhafte Vertrauensbeziehung zwischen der tatsächlichen D-Bus-Aufrufer-UID und der berechneten/effektiven UID, die durch die Mount-Option as-user erzeugt wird, verursacht.
In anfälligen Abläufen kann ein unprivilegierter lokaler Benutzer den Mount-Ausführungspfad so beeinflussen, dass ein Dateisystem-Mount in einem privilegierten/Root-Kontext ohne das erwartete PolicyKit-Autorisierungsverhalten durchgeführt wird.
Der Kernfehler ist nicht einfach "benutzergesteuerte Mount-Optionen".
Das eigentliche Problem ist:
udisks2versäumt es, die ursprüngliche Aufruferidentität während der fstab-Mount-Autorisierung und -Ausführung konsistent von der berechnetenas-user-Identität zu unterscheiden.
| Feld | Wert |
|---|---|
| CVE | CVE-2026-7867 |
| Produkt | udisks2 |
| Komponente | Filesystem.Mount |
| Angriffsart | Lokale Privilegienausweitung |
| Primitive | as-user-Spoofing |
| Sicherheitsgrenze | D-Bus-Aufruferidentität → privilegierte Mount-Ausführung |
| Autorisierungsebene | PolicyKit / fstab-Mount-Autorisierung |
| Anbieter | Red Hat / udisks-Upstream |
| Status | Patch in Arbeit / koordinierte Offenlegung |
| Geplante Fix-Veröffentlichung | udisks 2.11.2 |
Die anfällige Logik ist mit dem fstab-Mount-Abwicklungspfad innerhalb von udisks2 verbunden, insbesondere wenn die Mount-Anfrage beinhaltet:
Filesystem.Mount
as-user
x-udisks-auth
user
users
Die relevanten sicherheitssensitiven Bereiche sind:
D-Bus-Aufruferidentität
↓
as-user-Optionsbehandlung
↓
fstab-Autorisierungslogik
↓
PolicyKit-Entscheidungsablauf
↓
Root-Kontext-Mount-Ausführung
┌─────────────────────────────┐
│ Unprivilegierter lokaler │
│ Benutzer │
└──────────────┬──────────────┘
│
│ Filesystem.Mount
│ mit as-user-Einfluss
▼
┌─────────────────────────────┐
│ udisks2 / udisksd │
│ privilegierter Systemdienst │
└──────────────┬──────────────┘
│
│ fstab-Logik wertet
│ Benutzer-/Auth-Optionen aus
▼
┌─────────────────────────────┐
│ Autorisierungslücke │
│ mount_other_user wird │
│ im übersprungenen Pfad │
│ nicht erzwungen │
└──────────────┬──────────────┘
│
│ Root-Kontext-Zweig erreicht
▼
┌─────────────────────────────┐
│ Dateisystem gemountet │
│ ohne erwarteten Auth-Ablauf │
└──────────────┬──────────────┘
│
│ Auswirkung hängt von Mount-Flags ab
▼
┌─────────────────────────────┐
│ Lokale Privilegienausweitung│
│ kontrollierte Laborvalidierung│
└─────────────────────────────┘
Das anfällige Verhalten wird durch einen Identitätsverwirrungsfehler verursacht.
Das System hat mehrere Identitätskonzepte:
tatsächliche D-Bus-Aufrufer-UID
berechnete as-user-UID
effektive Mount-UID
udisksd-Daemon-Privilegienkontext
Der anfällige Ablauf setzt diese Identitäten nicht konsistent durch.
Insbesondere:
mount_other_user kann wahr werden, weil as-user verwendet wirdx-udisks-auth, user oder users können den Autorisierungspfad beeinflussenmount_other_user-Prüfung wird außerhalb dieses Blocks nicht zuverlässig erzwungenDas Ergebnis ist eine Umgehung der lokalen Privilegiengrenze.
x-udisks-auth-ProblemDie Option x-udisks-auth soll einen administrativen PolicyKit-Autorisierungsablauf erzwingen.
Erwartetes Verhalten:
Mount-Anfrage
↓
Versuch, Mount als Aufrufer durchzuführen
↓
Berechtigungs-/Auth-Fehler
↓
PolicyKit-Prüfung filesystem-fstab
↓
Admin-Genehmigung
↓
Mount als autorisierte privilegierte Aktion
Anfälliges Verhalten:
Mount-Anfrage mit as-user-Einfluss
↓
berechnete Identität beeinflusst Ausführung
↓
Mount gelingt zu früh
↓
PolicyKit-Auth-Pfad wird wie erwartet nicht erreicht
↓
privilegierter Mount-Zustand wird erreicht
Dies macht das Sicherheitsmodell um x-udisks-auth im anfälligen Pfad unzuverlässig.
Erwartetes Modell:
Unprivilegierter Benutzer
↓
D-Bus-Mount-Anfrage
↓
PolicyKit / fstab-Autorisierung
↓
eingeschränktes Mount-Verhalten
Gebrochenes Modell:
Unprivilegierter Benutzer
↓
D-Bus-Mount-Anfrage mit as-user-Spoofing
↓
Autorisierungslogik-Mismatch
↓
Root-Kontext-Mount-Ausführung
Der Fehler ist besonders schwerwiegend, weil der betroffene Dienst mit erhöhten Privilegien läuft.
Eine erfolgreiche Ausnutzung kann es einem lokalen unprivilegierten Benutzer ermöglichen, ein Dateisystem über udisks2 in einem Root-Kontext-Ausführungspfad zu mounten, ohne die erwartete Autorisierungsabfrage.
Je nach Dateisystem und Mount-Flags können die Auswirkungen umfassen: