Sebezhetőség az Enlightenment felhasználói környezetben, amely lehetővé teszi a root hozzáférést

Sebezhetőséget (CVE-2022-37706) azonosítottak az Enlightenment felhasználói környezetben, amely lehetővé teszi a jogosulatlan helyi felhasználók számára, hogy root jogokkal hajtsanak végre kódot. A sérülékenységet még nem javították ki (0 nap), de már elérhető egy exploit, amelyet az Ubuntu 22.04-ben teszteltek.

A probléma az enlightenment_sys végrehajtható fájlban van, amely a suid root jelzővel érkezik, és bizonyos engedélyezett parancsokat hajt végre, például a meghajtó csatlakoztatását a mount segédprogrammal a system() meghívásával. A system() hívásnak átadott sztringet generáló függvény hibás működése miatt az indítandó parancs argumentumaiból idézőjeleket vágunk ki, amivel saját kódot futtathatunk. Például az mkdir -p /tmp/net mkdir -p "/tmp/;/tmp/exploit" echo "/bin/sh" > /tmp/exploit chmod a+x /tmp/exploit enlightenment_sys /bin/mount parancs futtatásakor - o noexec,nosuid,utf8,nodev,iocharset=utf8,utf8=0,utf8=1,uid=$(id -u), "/dev/../tmp/;/tmp/exploit" /tmp// / háló

a dupla idézőjelek eltávolítása miatt a megadott '/bin/mount ... "/dev/../tmp/;/tmp/exploit" /tmp///net' parancs helyett dupla idézőjelek nélküli karakterlánc lesz átadva a system() ' /bin/mount … /dev/../tmp/;/tmp/exploit /tmp///net' függvénynek, ami a '/tmp/exploit /tmp///net' parancsot eredményezi. ' külön kell végrehajtani, ahelyett, hogy az eszköz elérési útja részeként dolgoznák fel. A "/dev/../tmp/" és a "/tmp///net" sorok megkerülik a mount parancs argumentumellenőrzését az enlightenment_sys fájlban (a mount eszköznek /dev/-vel kell kezdődnie, és egy meglévő fájlra kell mutatnia, és a beillesztési pontban lévő három „/” karakter a szükséges útvonalméret eléréséhez van megadva).

Forrás: opennet.ru

Hozzászólás