Sudo haavatavus, mis võimaldab konkreetsete reeglite kasutamisel privileegide eskalatsiooni

Utiliidis Sudo, mida kasutatakse käskude täitmise korraldamiseks teiste kasutajate nimel, tuvastatud haavatavus (CVE-2019-14287), mis võimaldab käivitada käske juurõigustega, kui sudoersi seadistustes on reeglid, milles kasutajatunnuse kontrolli jaotises pärast lubavat märksõna “ALL” on selgesõnaline juurõigustega jooksmise keeld (“... (KÕIK, !juur) ..." ). See haavatavus ei ilmu distributsioonide vaikekonfiguratsioonides.

Kui sudoersil on kehtivad, kuid praktikas üliharuldased reeglid, mis lubavad teatud käsku täita mis tahes muu kasutaja UID-ga peale root kasutaja, võib ründaja, kellel on õigus seda käsku täita, kehtestatud piirangust mööda minna ja käsku täita juurõigused. Piirangust mööda hiilimiseks proovige lihtsalt käivitada sätetes määratud käsk UID-ga “-1” või “4294967295”, mis viib selle täitmiseni UID-ga 0.

Näiteks kui sätetes on reegel, mis annab igale kasutajale õiguse käivitada programm /usr/bin/id mis tahes UID all:

myhost KÕIK = (KÕIK, !root) /usr/bin/id

või suvand, mis lubab käivitada ainult konkreetse kasutaja bob:

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

Kasutaja saab käivitada "sudo -u '#-1" id ja utiliit /usr/bin/id käivitatakse juurõigustega, hoolimata sätete selgesõnalisest keelust. Probleemi põhjustab eriväärtuste “-1” või “4294967295” tähelepanuta jätmine, mis ei too kaasa UID-i muutust, kuid kuna sudo ise töötab juba administraatorina, siis ilma UID-d muutmata on ka sihtkäsk. käivitati juurõigustega.

SUSE ja openSUSE distributsioonides on haavatavus ilma reeglis NOPASSWD määramata ei ole ekspluateeritav, kuna sudoerides on vaikimisi lubatud režiim Defaults targetpw, mis kontrollib UID-d paroolide andmebaasiga ja palub teil sisestada sihtkasutaja parool. Selliste süsteemide puhul saab rünnaku läbi viia ainult siis, kui on olemas vormireeglid:

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

Probleem on väljalaskes parandatud Sudo 1.8.28. Parandus on saadaval ka vormis plaaster. Jaotuskomplektides on haavatavus juba parandatud Debian, Arch Linux, SUSE/openSUSE, Ubuntu, Gentoo и FreeBSD. Kirjutamise ajal on probleem endiselt lahendamata RHEL и Fedora. Haavatavuse tuvastasid Apple'i turbeuurijad.

Allikas: opennet.ru

Lisa kommentaar