Zranitelnost v uživatelském prostředí Enlightenment, která umožňuje získat práva roota

Ve uživatelském prostředí Enlightenment byla odhalena zranitelnost (CVE-2022-37706), která umožňuje nepř privilegovanému místnímu uživateli spustit kód s právy root. Zranitelnost zatím nebyla opravena (0-day), ale je již k dispozici exploit, který byl otestován na Ubuntu 22.04.

Problém se nachází v spustitelném souboru enlightenment_sys, který je dodáván s flagem suid root a provádí určité povolené příkazy prostřednictvím volání system(), jako je připojení zařízení pomocí utility mount. Kvůli nesprávnému fungování funkce, která vytváří řetězec předávaný do volání system(), se z argumentů spouštěného příkazu vyřazují uvozovky, což může být použito k spuštění vlastního kódu. Například při spuštění mkdir -p /tmp/net mkdir -p "/tmp/;/tmp/exploit" echo "/bin/sh" > /tmp/exploit chmod a+x /tmp/exploit enlightenment_sys /bin/mount -o noexec,nosuid,utf8,nodev,iocharset=utf8,utf8=0,utf8=1,uid=$(id -u), "/dev/../tmp/;/tmp/exploit" /tmp///net

kvůli vyřazení dvojitých uvozovek, místo uvedeného příkazu '/bin/mount ... "/dev/../tmp/;/tmp/exploit" /tmp///net' bude do funkce system() předán řetězec bez dvojitých uvozovek '/bin/mount ... /dev/../tmp/;/tmp/exploit /tmp///net', což povede k samostatnému spuštění příkazu '/tmp/exploit /tmp///net' místo zpracování jako části cesty k zařízení. Řetězce '/dev/../tmp/' a '/tmp///net' byly zvoleny tak, aby obešly kontrolu argumentů příkazu mount v enlightenment_sys (zařízení pro připojení musí začínat na /dev/ a ukazovat na existující soubor, a tři znaky '/' na bodě připojení byly určeny pro dosažení požadované délky cesty).

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster