O vulnerabilitate în mediul utilizatorului Enlightenment, care permite obținerea drepturilor de root

În mediul de utilizator Enlightenment a fost identificată o vulnerabilitate (CVE-2022-37706) care permite unui utilizator local fără privilegii să execute cod cu drepturi de root. Vulnerabilitatea nu a fost încă corectată (0-day), dar există deja un exploit disponibil public, testat pe Ubuntu 22.04.

Problema este prezentă în fișierul executabil enlightenment_sys, furnizat cu flag-ul suid root și care execută prin apelul system() anumite comenzi permise, cum ar fi montarea unității cu utilitarul mount. Din cauza funcționării incorecte a funcției care formează șirul transmis în apelul system(), ghilimelele din argumentele comenzii inițiate sunt eliminate, ceea ce poate fi folosit pentru a-și lansa propriul cod. De exemplu, la rularea 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

din cauza eliminării ghilimelelor duble, în locul comenzii specificate ‘\/bin\/mount … "\/dev\/..\/tmp\/;\/tmp\/exploit" \/tmp\/\/\/net’ în funcția system() va fi transmis un șir fără ghilimele duble ‘\/bin\/mount … \/dev\/..\/tmp\/;\/tmp\/exploit \/tmp\/\/\/net’, ceea ce va duce la executarea separată a comenzii ‘\/tmp\/exploit \/tmp\/\/\/net’ în loc de a fi procesată ca parte a căii către dispozitiv. Șirurile "\/dev\/..\/tmp\/" și "\/tmp\/\/\/net" sunt selectate pentru a ocoli verificarea argumentelor comenzii mount în enlightenment_sys (dispozitivul de montare trebuie să înceapă cu \/dev\/ și să indice un fișier existent, iar cele trei caractere "\/" în punctul de montare sunt indicate pentru a atinge dimensiunea necesară a căii).

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster