Kwesbaarheid in Polkit wat jou toelaat om jou voorregte in die stelsel te eskaleer

'n Kwesbaarheid (CVE-2021-3560) is geïdentifiseer in die Polkit-komponent, wat in verspreidings gebruik word om onbevoorregte gebruikers toe te laat om aksies uit te voer wat verhoogde toegangsregte vereis (byvoorbeeld, die montering van 'n USB-stasie), wat 'n plaaslike gebruiker toelaat om wortelregte in die stelsel verkry. Die kwesbaarheid is reggestel in Polkit weergawe 0.119.

Die probleem is sedert vrystelling 0.113 teenwoordig, maar baie verspreidings, insluitend RHEL, Ubuntu, Debian en SUSE, het die geaffekteerde funksionaliteit teruggeplaas in pakkette gebaseer op ouer Polkit-vrystellings (pakketoplossings is reeds beskikbaar in die verspreidings).

Die probleem manifesteer hom in die polkit_system_bus_name_get_creds_sync() funksie, wat die identifiseerders (uid en pid) verkry van die proses wat privilegeverheffing versoek. 'n Proses word deur Polkit geïdentifiseer deur 'n unieke naam in DBus toe te ken, wat dan gebruik word om voorregte te verifieer. As 'n proses van dbus-daemon ontkoppel net voor die polkit_system_bus_name_get_creds_sync hanteerder begin, ontvang die hanteerder 'n foutkode in plaas van 'n unieke naam.

Die kwesbaarheid word veroorsaak deur die feit dat die teruggekeerde foutkode nie behoorlik verwerk is nie en die polkit_system_bus_name_get_creds_sync() funksie gee TRUE in plaas van ONWAAR terug, ten spyte daarvan dat dit nie in staat is om die proses by die uid/pid te pas en die voorregte wat vir die proses versoek is, te verifieer nie. Die kode waaruit die polkit_system_bus_name_get_creds_sync() funksie genoem is, aanvaar dat die kontrole suksesvol was en die versoek om voorregte te eskaleer het van root gekom en nie van 'n onbevoorregte gebruiker nie, wat dit moontlik maak om bevoorregte aksies uit te voer sonder bykomende verifikasie en verifikasie van geloofsbriewe.

Bron: opennet.ru

Voeg 'n opmerking