PAM-modulis pam_oath, mis kuulub oath-toolkit paketti ja mida kasutatakse mitme faktoriga autentimisel ühekordsete paroolide (OTP) abil, on avastatud haavatavus (CVE-2024-47191), mis võimaldab privileegideta kasutajal saada süsteemis root-juurdepääsu.
Modul pam_oath töötab root-i õigustega ja algselt oli see mõeldud OATH-võtmete hoidmiseks failis /etc/users.oath, millele pääseb juurde ainult root-kasutaja. Oath-toolkit versioonis 2.6.7 lisati tugi võtmefailide paigutamisele kasutajate kodukataloogidesse (~/.config/users.oath). Privilegeeritud kasutajad said võimaluse muuta faile oma võtmete jaoks, kuid pam_oath ei vähendanud privileege, kui pöörduti nende failide poole, ja jätkas ohtlike meetodite kasutamist failide töötlemiseks, mis olid mõeldud failide jaoks, mis asuvad muudetaval kataloogis.
Haavatavus tuleneb sellest, et iga kord, kui autentimine ühekordse parooli alusel õnnestus, kirjutas pam_oath võtmefaili üle, et vältida ühe parooli korduvkasutust. Ülekirjutamise operatsioon seisnes lukufaili loomises samas kataloogis, uue sisu kirjutamises '.new' laiendiga faili ja vana faili asendamises uue variandiga. Samal ajal loodi '.new' laiendiga fail samade õigustega nagu sihtfail, kuid selle kirje tegi root-i õigustega protsess ning faili olemasolu kontrollimist ei tehtud.
Kui fail asus süsteemi kataloogis, ei olnud probleeme, kuid pärast toetuse ilmumist võtmefailide paigutamiseks kodukataloogidesse tekkis kergesti ärakasutatav haavatavus. Rünnaku jaoks piisab sümboolse lingi loomisest '~/.config/oath.secrets.new' ja suunamisest sellele igale süsteemifailile, mis kirjutatakse üle pärast edukat autentimist.
Root-juurdepääsu saamiseks võib suunata sümboolse lingi failile /etc/shadow. Sellisel juhul kirjutab pam_oath /etc/shadow-i kehtiva võtme loendi ja sünkroonib omaniku ja juurdepääsu õigused users.oath failiga. Kuna users.oath fail kuulub kasutajale, määratakse /etc/shadowi omanikuks see kasutaja, pärast mida saab ründaja redigeerida /etc/shadow faili ja kirjutada sinna uusi sisselogimisparameetreid root-konto jaoks.
Haavatavus ilmneb alates oath-toolkit 2.6.7 väljaandest ja kõrvaldatakse versioonis 2.6.12. Haavatavuse kõrvaldamist saab jälgida jaotustes nende lehtede kaudu: Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch. Haavatavus puudutab ainult konfiguratsioone, kus on lubatud salvestada võtmefailid kodu kataloogides, näiteks PAM-i seadistustes rea „auth [user_unknown=ignore success=ok] pam_oath.so usersfile=${HOME}/user.oath“ kasutamisel.
Lisaks võib mainida hiljuti avastatud haavatavust (CVE-2024-9313) PAM-i moodulis, mis kuulub Authd paketti, mida arendab Ubuntu projekt. Haavatavus võimaldab Authd maakleri kaudu juhitaval kasutajal end petta mistahes teiseks selle sama maakleri juhitavaks kasutajaks ning edukalt autentida läbi su, sudo või ssh teise kasutajana. Probleem on kõrvaldatud Authd versioonis 0.3.5.
Allikas: opennet.ru
