Ranljivost v sudo, ki omogoča povišanje privilegijev ob uporabi specifičnih pravil

U alatu Sudo, ki se uporablja za organizacijo izvrševanja ukazov v imenu drugih uporabnikov, odkrita ranljivost (CVE-2019-14287), ki omogoča izvajanje ukazov s pravicami root, kadar v nastavitvah sudoers obstajajo pravila, v katerih v razdelku preverjanja uporabniškega ID-ja po dovolilni ključni besedi „ALL“ sledi izrecna prepoved za zagon s pravicami root („… (ALL, !root) …“). V privzetih konfiguracijah distribucij ranljivost ne pride do izraza.

Pri obstoju dovoljenih, vendar izredno redko uporabljenih pravil v sudoers, ki dovoljujejo izvajanje določenega ukaza pod UID-identifikatorjem katerega koli uporabnika, razen root, lahko napadalec, ki ima pristojnosti za izvajanje tega ukaza, obide določeno omejitev in izvede ukaz s pravicami root. Za obhod omejitve zadostuje poskus zagonu navedenega ukaza z UID „-1“ ali „4294967295“, kar vodi do njegovega izvajanja z UID 0.

Na primer, če so v nastavitvah pravila, ki kateremu koli uporabniku dajejo pravico do izvajanja programa /usr/bin/id pod katerim koli UID:

myhost ALL = (ALL, !root) /usr/bin/id

ali različica, ki dovoljuje izvajanje samo določenemu uporabniku bob:

myhost bob = (ALL, !root) /usr/bin/id

Uporabnik lahko izvede „sudo -u ‘#-1’ id“ in orodje /usr/bin/id se bo zagnalo s pravicami root, kljub izrecni prepovedi v nastavitvah. Težavo povzroči spregled posebnih vrednosti „-1“ ali „4294967295“, ki ne spremenijo UID, vendar saj se sudo že izvaja pod root, se tudi ciljna ukaza zažene s pravicami root, brez spremembe UID.

V distribucijah SUSE in openSUSE brez navedbe v pravilu „NOPASSWD“ je ranljivost ne izkoriščena, saj je v sudoers privzeto vklopljen način „Defaults targetpw“, pri katerem se preverja UID po bazi gesel s prikazom poziva za vnos gesla ciljni uporabnik. Za podobne sisteme lahko napad izpeljemo le ob prisotnosti pravil te vrste:

myhost ALL = (ALL, !root) NOPASSWD: /usr/bin/id

The issue has been resolved in the release Sudo 1.8.28. Popravilo je tudi na voljo v obliki popravka. V distribucijah je bila ranljivost že odpravljena v Debian, Arch Linux, SUSE/openSUSE, Ubuntu, Gentoo in FreeBSD. Ob času pisanja novice je težava še vedno odprta v RHEL in Fedora. Ranljivost je bila odkrita s strani raziskovalcev varnosti podjetja Apple.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster