Një vulnerabilitet në pam_oath që lejon marrjen e të drejtave root në sistem

Në modulin PAM pam_oath, pjesë e paketës oath-toolkit dhe e përdorur për autentifikimin me dy faktorë duke përdorur fjalëkalime të përkohshme (OTP), është zbuluar një vulnerabilitet (CVE-2024-47191) që lejon një përdorues pa privilegje të marrë akses root në sistem.

Moduli pam_oath ekzekutohet me të drejta root dhe fillimisht ishte menduar për ruajtjen e çelësve OATH në skedarin /etc/users.oath, për të cilin ka akses vetëm përdoruesi root. Në versionin oath-toolkit 2.6.7 u shtua mbështetje për ruajtjen e skedarëve me çelësa në kataloget personale të përdoruesve (~/.config/users.oath). Përdoruesit pa privilegje morën mundësinë për të modifikuar skedarët e tyre me çelësa, por pam_oath, kur i qaset këtyre skedarëve, nuk i ndau privilegjet dhe vazhdoi të përdorte metoda të pasigurta për punën me skedarët, të menduara për skedarë që janë të vendosur në një katalog që nuk është i përshtatshëm për ndryshim.

Vulnerabiliteti shkaktohet nga fakti se pas çdo autentifikimi të suksesshëm me fjalëkalim të përkohshëm, pam_oath ka ekzekutuar një tejkalim të skedarit me çelësa për të parandaluar përdorimin e një fjalëkalimi disa herë. Operacioni i tejkalimit përfshinte krijimin e një skedari lock në të njëjtin katalog, shkruajtjen e përmbajtjes së re në një skedar me shtrirje «.new» dhe zëvendësimin e skedarit të vjetër me versionin e ri. Në këtë rast, skedari me shtrirje «.new» krijohej me të njëjtat të drejta si skedari objektiv, por shkruhej nga procesi me të drejta root dhe pa kontrollimin e ekzistencës së skedarit.

Nëse skedari ishte vendosur në katalogun sistemor, nuk kishte asnjë problem, por pas shfaqjes së mbështetjes për vendosjen e skedarëve me çelësa në kataloget personale, u shfaq një vulnerabilitet i lehtë për t'u shfrytëzuar. Për të sulmuar, mjafton të krijoni një lidhje simbolike «~/.config/oath.secrets.new» dhe ta drejtoni atë në ndonjë skedar sistemik, i cili do të zëvendësohet pas një autentifikimi të suksesshëm.

Për të marrë akses root, mund të drejtoni lidhjen simbolike në skedarin /etc/shadow. Në këtë rast, pam_oath do të shkruajë në /etc/shadow listën aktuale të çelësave dhe do të sinkronizojë pronarin dhe të drejtat e aksesit me skedarin users.oath. Duke qenë se skedari users.oath i përket përdoruesit, atëherë pronari i /etc/shadow do të caktohet ky përdorues, pas së cilës sulmuesi do të ketë mundësinë të editojë skedarin /etc/shadow dhe të shkruajë parametër të rinj për llogarinë root.

Vulnerabiliteti shfaqet që nga versioni 2.6.7 i oath-toolkit dhe është eliminuar (1,2,3) në versionin 2.6.12. Mund të gjeni informacione rreth eliminimit të vulnerabilitetit në distribucione të tilla si: Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch. Vulnerabiliteti prek vetëm konfigurimet ku lejohet vendosja e skedave me çelësa në katalogët e përdoruesve, për shembull, kur përdoret në konfigurimet e PAM rreshti "auth [user_unknown=ignore success=ok] pam_oath.so usersfile=${HOME}/user.oath".

Gjithashtu, mund të përmendim një vulnerabilitet të zbuluar së fundmi (CVE-2024-9313) në modulin PAM nga paketa Authd, që zhvillohet nga projekti Ubuntu. Vulnabiliteti lejon një përdorues, i menaxhuar përmes brokerit Authd, të pretendosh të jetë një përdorues tjetër, i menaxhuar nga i njëjti broker, dhe të kalosh me sukses autentikimin përmes su, sudo ose ssh si një përdorues tjetër. Problemi është eliminuar në versionin Authd 0.3.5.

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