Systemd süsteemihalduris
Haavatavuse põhjustab juurdepääs juba vabastatud mälualale (kasutus pärast vaba), mis ilmneb DBus-sõnumite töötlemise ajal Polkiti päringute asünkroonsel täitmisel. Mõned DBus-liidesed kasutavad vahemälu objektide lühiajaliseks salvestamiseks ja vahemälu kirjete tühjendamiseks niipea, kui DBus-siin on vaba muude taotluste töötlemiseks. Kui DBus-meetodikäsitleja kasutab funktsiooni bus_verify_polkit_async(), võib tal olla vaja oodata Polkiti toimingu lõpuleviimist. Kui Polkiti on valmis, kutsutakse töötleja uuesti ja pääseb juurde juba mällu jagatud andmetele. Kui päringu esitamine Polkitile võtab liiga kaua aega, tühjendatakse vahemälus olevad üksused enne, kui DBus-meetodi töötleja teist korda kutsutakse.
Teenuste hulgas, mis võimaldavad haavatavust ära kasutada, on märgitud systemd-machined, mis pakub DBus API org.freedesktop.machine1.Image.Clone, mis viib andmete ajutise salvestamiseni vahemällu ja asünkroonse juurdepääsuni Polkitile. Liides
org.freedesktop.machine1.Image.Clone on saadaval kõigile süsteemi privilegeerimata kasutajatele, kes võivad süsteemsete teenuste krahhi või põhjustada koodi käivitamise administraatorina (kasutamise prototüüpi pole veel demonstreeritud). Kood, mis lubas haavatavust ära kasutada, oli
Allikas: opennet.ru