A systemd rendszerkezelőben
A sérülékenységet egy már felszabadult memóriaterülethez való hozzáférés okozza (használat után szabadon), amely akkor fordul elő, amikor a DBus-üzenetek feldolgozása közben aszinkron módon hajtanak végre kéréseket a Polkit felé. Egyes DBus interfészek gyorsítótárat használnak az objektumok rövid időre történő tárolására, és kiürítik a gyorsítótár-bejegyzéseket, amint a DBus busz felszabadul a többi kérés feldolgozására. Ha egy DBus metóduskezelő a bus_verify_polkit_async() függvényt használja, előfordulhat, hogy meg kell várnia a Polkit művelet befejeződését. Miután a Polkit készen áll, a kezelő újra meghívásra kerül, és hozzáfér a memóriában már elosztott adatokhoz. Ha a Polkit felé irányuló kérés túl sokáig tart, a gyorsítótárban lévő elemek törlődnek, mielőtt a DBus metóduskezelőt másodszor is meghívnák.
A sérülékenység kihasználását lehetővé tevő szolgáltatások között említhető a systemd-machined, amely biztosítja a DBus API org.freedesktop.machine1.Image.Clone-t, ami az adatok ideiglenes tárolását eredményezi a gyorsítótárban és aszinkron hozzáférést a Polkithoz. Felület
Az org.freedesktop.machine1.Image.Clone elérhető a rendszer minden kiváltság nélküli felhasználója számára, akik összeomolhatják a rendszerszolgáltatásokat, vagy potenciálisan a kód rootként történő végrehajtását idézhetik elő (a kihasználó prototípust még nem demonstrálták). A biztonsági rés kihasználását lehetővé tevő kód az volt
Forrás: opennet.ru