Systemd sistema-kudeatzailean
Zaurgarritasuna dagoeneko askatuta dagoen memoria-eremu batera sartzeak (use-after-free) eragiten du, DBus mezuak prozesatzen diren bitartean Polkit-i eskaerak modu asinkronoan exekutatzean gertatzen dena. DBus interfaze batzuek cache bat erabiltzen dute objektuak denbora laburrean gordetzeko eta cache-sarrerak garbitu DBus-eko autobusak beste eskaera batzuk prozesatzeko libre dagoen bezain laster. DBus metodo-kudeatzaileak bus_verify_polkit_async() erabiltzen badu, baliteke Polkit ekintza amaitu arte itxaron behar izatea. Polkit prest dagoenean, kudeatzailea berriro deitzen da eta dagoeneko memorian banatutako datuetara sartzen da. Polkit-i egindako eskaerak luzeegia hartzen badu, cacheko elementuak garbituko dira DBus metodoaren kudeatzaileari bigarren aldiz deitu aurretik.
Ahultasuna ustiatzea ahalbidetzen duten zerbitzuen artean, systemd-machined-ek nabarmentzen du, org.freedesktop.machine1.Image.Clone DBus APIa eskaintzen duena, datuen aldi baterako biltegiratzea cachean eta Polkit-erako sarbide asinkronoa lortzen duena. Interfazea
org.freedesktop.machine1.Image.Clone sistemaren pribilegiorik gabeko erabiltzaile guztientzat dago erabilgarri, eta sistemaren zerbitzuak huts egin ditzakete edo balizko kodea root gisa exekutatzea eragin dezakete (ustiapen-prototipoa oraindik ez da frogatu). Ahultasuna ustiatzea ahalbidetzen zuen kodea zen
Iturria: opennet.ru