Dëshira në PAM dhe libblockdev që lejojnë marrjen e të drejtave root në sistem.

Kompania Qualys zbuloi një vulnerabilitet (CVE-2025-6019) në bibliotekën libblockdev, e cila lejon, përmes manipulimeve me procesin e prapaskenës udisks, të fitojë të drejta root në sistem. Puna e prototipit të exploit-it është demonstruar në Ubuntu, Debian, Fedora dhe openSUSE Leap 15.

Procesi udisks përdoret pothuajse në të gjitha shpërndarjet e Linux-it dhe ofron një ndërfaqe D-Bus për të kryer operacione me disqet, siç janë montimi dhe formatimi. Për të kryer veprime me disqet, udisks thërret funksionet e bibliotekës libblockdev. Qëndrimi në udisks në mënyrë të parazgjedhur është i hapur vetëm për përdoruesit që punojnë në kontekstin 'allow_active', domethënë ata që kanë qasje fizike në kompjuter dhe janë lidhur përmes konsolës lokale ose kanë nisur një seancë grafike. Përdoruesit që lidhen në mënyrë të largët, për shembull, përmes ssh, nuk përfshihen në këtë kontekst dhe nuk mund të shfrytëzojnë drejtpërdrejt vulnerabilitetin.

Për të anashkaluar këtë kufizim, mund të përdoret një truk që lejon rritjen e nivelit të autentikimit në «allow_active» përmes manipulimeve me nisjen e utilitarit systemctl të shërbimit të përdoruesit, të cilin polkitd e percepton si shenjë të seancës lokale. Esenca e metodës është se polkitd përcakton praninë e aksesit fizik dhe i jep nivelin «allow_active» bazuar në tregues të drejtpërdrejtë, në të cilat mund të ndikoni. Kufizimet e metodës janë se për të mashtruar polkitd, kërkohet që në sistem të ekzistojë një seancë lokale e përdoruesit me akses fizik.

Metoda e dytë për të marrë të drejtat «allow_active» është shfrytëzimi i dobësisë (CVE-2025-6018) në PAM (Pluggable Authentication Modules), e cila është identifikuar nga kërkuesit në Qualys gjatë analizës së dobësive në libblockdev. Dobësia lejon çdo përdorues, duke përfshirë ata që lidhen përmes SSH, të kryejnë operacione në kontekstin «allow_active». Problemi është specifik për konfigurimet PAM në openSUSE Leap 15 dhe SUSE Linux Enterprise 15, dhe shfaqet vetëm në këto disto.

Moduli pam_env në openSUSE dhe SUSE ka aktivizuar si parazgjedhje leximin e skedarit ~/.pam_environment. Përmes këtij skedari, përdoruesi mund të vendosë variablat e ambientit XDG_SEAT=seat0 dhe XDG_VTNR=1, të cilat në trajtimin e mëtejshëm do të interpretohen si tregues të pranisë fizike të përdoruesit, edhe nëse hyrja bëhet nëpërmjet SSH. Moduli pam_env gjithashtu thirret kur lidhemi përmes ssh në Debian 12 dhe Ubuntu 24.04 (në Debian 13 dhe Ubuntu 24.10+ është çaktivizuar), por vendosja e variablave të ambientit në këto distribucione nuk mund të përdoret për të rritur nivelin e qasjes në «allow_active», pasi pam_env thirret në fazën përfundimtare pas ngarkesës së modulit pam_systemd dhe variablat e ambientit të vendosur nuk mund të ndikojnë në parametrat e seancës.

Në lidhje me cenueshmërinë në libblockdev, një sulmues mund të montohet imazhin e një sistemi të fichiers arbitrar në modalitetin loop, duke vendosur në këtë imazh një skedar ekzekutiv me flamurin SUID root ose një pajisje speciale (/dev/mem) për qasje të ulët në disqe ose memorie. Për të bllokuar këtë lloj sulmi, imazhet e FS montohet nga sistemi me flamujt nosuid dhe nodev, por cenueshmëria në libblockdev lejon montimin e një imazhi pa flamujt nosuid dhe nodev. Thelbi i cenueshmërisë është se udisks lejon një përdorues me nivelin e aksesit "allow_active" të ndryshojë dimensionin e sistemeve të tij të fichiers dhe libblockdev gjatë ekzekutimit të kësaj operacioni përkohësisht monotohet FS pa vendosur flamujt nosuid dhe nodev.

KĂ«shtu, sulmi pĂ«rfshin krijimin e njĂ« pajisjeje loop nĂ« bazĂ« tĂ« imazhit tĂ« FS XFS, nĂ« tĂ« cilin Ă«shtĂ« vendosur njĂ« skedar suid root, iniciimin e operacionit pĂ«r ndryshimin e madhĂ«sisĂ« sĂ« pajisjes loop dhe ndjekjen e momentit tĂ« montimit tĂ« saj nĂ« katalogun /tmp/blockdev*: viktima> killall -KILL gvfs-udisks2-volume-monitor viktima> udisksctl loop-setup —file ./xfs.image —no-user-interaction Skedari i mapuar ./xfs.image si /dev/loop0. viktima> while true; do /tmp/blockdev*/bash -c ‘sleep 10; ls -l /tmp/blockdev*/bash’ && break; done 2>/dev/null & viktima> gdbus call —system —dest org.freedesktop.UDisks2 —object-path /org/freedesktop/UDisks2/block_devices/loop0 —method org.freedesktop.UDisks2.Filesystem.Resize 0 ‘{}’ Gabim: GDBus.Error:org.freedesktop.UDisks2.Error.Failed: Gabim nĂ« ndryshimin e sistemit tĂ« skedarit nĂ« /dev/loop0: DĂ«shtoi tĂ« çmontonte ‘/dev/loop0’ pas ndryshimit tĂ« tij: objekti Ă«shtĂ« i zĂ«nĂ« -r-sr-xr-x. 1 root root 1406608 Jun 18 09:42 /tmp/blockdev.RSM429/bash viktima> /tmp/blockdev*/bash -p viktima# id uid=65534(nobody) gid=65534(nobody) euid=0(root) grupet=65534(nobody)

Vulnerabiliteti në libblockdev është rregulluar vetëm në formën e patches. Mund të kontrolloni statusin e versionit të ri të paketës ose përgatitjen e një rregullimi në distribucione në faqet e mëposhtme (nëse faqja nuk është e aksesueshme, atëherë zhvilluesit e distribucionit nuk kanë filluar akoma të shqyrtojnë problemin): Debian, Ubuntu, Fedora, SUSE/openSUSE, RHEL, Gentoo dhe Arch (1, 2). Si një alternativë për bllokimin e vulnerabilitetit, mund të ndryshoni rregullin e qasjes për operacionin "org.freedesktop.udisks2.modify-device" në polkit, duke ndryshuar në skedarin \/usr\/share\/polkit-1\/actions\/org.freedesktop.UDisks2.policy vlerën e parametrin "allow_active" nga "yes" në "auth_admin".

Mund të theksohet gjithashtu një vulnerabilitet i zbuluar disa orë më parë (CVE-2025-6020) në paketën linux-pam, e cila lejon një përdorues lokal të fitojë të drejtat root. Moduli pam_namespace nuk kontrollonte siç duhet rrugët e skedarëve të kontrolluar nga përdoruesi, duke mundësuar, përmes manipulimeve me lidhjet simbolike dhe arritjen e një gjendjeje garuese, shkrimin e skedarëve me privilegje në sistem. Vulnerabiliteti është rregulluar në versionin linux-pam 1.7.1. Mund të kontrolloni gjendjen e versionit të ri të paketës ose përgatitjen e një patch në shpërndarjet e mëposhtme: Debian, Ubuntu, Fedora, SUSE/openSUSE, RHEL, Gentoo dhe Arch (1, 2).

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster