Ang kahinaan sa sudo na nagbibigay-daan sa pagtaas ng pribilehiyo kapag gumagamit ng mga partikular na panuntunan

Sa utility Sudo, ginagamit upang ayusin ang pagpapatupad ng mga utos sa ngalan ng iba pang mga gumagamit, nakilala kahinaan (CVE-2019-14287), na nagpapahintulot sa iyo na magsagawa ng mga utos na may mga karapatan sa ugat, kung mayroong mga panuntunan sa mga setting ng sudoers kung saan sa seksyon ng pagsusuri ng user ID pagkatapos ng pagpayag na keyword na "LAHAT" mayroong isang tahasang pagbabawal sa pagtakbo gamit ang mga karapatan sa ugat ("... (LAHAT, !ugat) ..." ). Ang kahinaan ay hindi lumalabas sa mga default na configuration sa mga pamamahagi.

Kung ang mga sudoer ay may wasto, ngunit napakabihirang sa pagsasanay, mga panuntunan na nagpapahintulot sa pagpapatupad ng isang partikular na command sa ilalim ng UID ng sinumang user maliban sa root, ang isang attacker na may awtoridad na isagawa ang command na ito ay maaaring lampasan ang itinatag na paghihigpit at isagawa ang command gamit ang mga karapatan sa ugat. Upang lampasan ang limitasyon, subukan lamang na isagawa ang utos na tinukoy sa mga setting na may UID "-1" o "4294967295", na hahantong sa pagpapatupad nito sa UID 0.

Halimbawa, kung mayroong panuntunan sa mga setting na nagbibigay sa sinumang user ng karapatang isagawa ang program /usr/bin/id sa ilalim ng anumang UID:

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

o isang opsyon na nagpapahintulot sa pagpapatupad lamang para sa isang partikular na user bob:

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

Ang user ay maaaring magsagawa ng "sudo -u '#-1' id" at ang /usr/bin/id utility ay ilulunsad bilang root, sa kabila ng tahasang pagbabawal sa mga setting. Ang problema ay sanhi ng pagtingin sa mga espesyal na halaga "-1" o "4294967295", na hindi humantong sa isang pagbabago sa UID, ngunit dahil ang sudo mismo ay tumatakbo na bilang ugat, nang hindi binabago ang UID, ang target na utos ay din inilunsad na may mga karapatan sa ugat.

Sa mga pamamahagi ng SUSE at openSUSE, nang hindi tinukoy ang "NOPASSWD" sa panuntunan, mayroong kahinaan hindi mapagsamantalahan, dahil sa sudoers ang mode na "Defaults targetpw" ay pinagana bilang default, na sinusuri ang UID laban sa database ng password at sinenyasan kang ipasok ang password ng target na user. Para sa mga naturang sistema, ang isang pag-atake ay maaari lamang isagawa kung mayroong mga patakaran ng form:

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

Naayos ang isyu sa release Sudo 1.8.28. Ang pag-aayos ay magagamit din sa form patch. Sa mga distribution kit, naayos na ang kahinaan Debian, Arch Linux, SUSE/openSUSE, Ubuntu, Gentoo ΠΈ FreeBSD. Sa oras ng pagsulat, ang problema ay nananatiling hindi naayos RHEL ΠΈ Fedora. Ang kahinaan ay natukoy ng mga mananaliksik ng seguridad mula sa Apple.

Pinagmulan: opennet.ru

Magdagdag ng komento