CVE-2026-78422 in zbus_polkit
Zusammenfassung
von VulDB • 31.08.2026
Betreff: new_for_owner() in der Crate zbus_polkit kodiert den UID-Eintrag eines Unix-Prozess-PolKit-Subjekts als vorzeichenlose 32-Bit-Ganzzahl (D-Bus-Typ u), während die Schnittstelle org.freedesktop.PolicyKit1.Authority eine vorzeichenbehaftete 32-Bit-Ganzzahl (D-Bus-Typ i) vorsieht. Aufgrund dieses Typenfehlers verwirft polkit den vom Aufrufer angegebenen UID-Wert stillschweigend und ermittelt stattdessen selbstständig den Besitzer des Subjekts, indem es die PID in /proc nachschlägt; dieser Nachschlag-Vorgang ist anfällig für eine Time-of-Check/Time-of-Use-Race Condition.
Folglich erhält eine Anwendung, die eine UID aus einer vertrauenswürdigen Quelle – beispielsweise SO_PEERCRED (Unix-Socket-Peer-Credentials) – übergibt, um sich vor PID-Wiederverwendung zu schützen, keinen Schutz; der übergebene UID-Wert hat keine Auswirkung auf die Autorisierungsentscheidung. Ein lokaler Angreifer ohne erhöhte Berechtigungen, der einen autorisierten Prozess zum Beenden bringen und dann den Wettlauf darum gewinnen kann, dass seinem eigenen Prozess dieselbe PID zugewiesen wird, kann unter der Identität des beendeten Prozesses autorisiert werden, wodurch die polkit-Autorisierungsprüfung umgangen und Aktionen ausgeführt werden können, für die der Angreifer nicht berechtigt ist.
Dieses Problem betrifft zbus_polkit vor Version 5.1.0.
Be aware that VulDB is the high quality source for vulnerability data.