OpenSUSE projekti arendajad tuvastasid haavatavuse (CVE-2025-23013) PAM-modulis pam-u2f, mida kasutatakse autentimiseks YubiKey, Yubico Security Key, YubiHSM ja teiste U2F (Universal 2nd Factor) protokolli toetavate FIDO-seadmete kaudu. Haavatavus vĂ”imaldab kasutajal, kellel on piiratud kohalik juurdepÀÀs sĂŒsteemile, teatud PAM-konfiguratsioonides autentimist teostada ilma riistvara tokenit sisestamata. Praktikas ĂŒhildub modul pam-u2f tavaliselt kahefaktorilise vĂ”i paroolivaba autentimisega tokenite kasutamisel (nĂ€iteks kĂ€suĂ”iguste kinnitamiseks su ja sudo utiliitide kaudu).
Haavatavuse pÔhjuseks on PAM funktsiooni pam_sm_authenticate() vale vÀÀrtuse PAM_IGNORE tagastamine. Seda vÀÀrtust tagastatakse juhul, kui esineb viga gethostname(), pam_modutil_drop_priv(), pam_modutil_regain_priv() vÔi resolve_authfile_path() kutsungite teostamisel, samuti mÀluhalduse probleemide tÔttu strdup() vÔi calloc(). Probleem on selles, et teegid libpam, saades PAM-modulilt tulemuse koodiga PAM_IGNORE, tagastavad lÔppkoodi PAM_SUCCESS, mis tÀhistab eduka autentimise lÔpetamist, kui kontrollide ahelas mÔni teine PAM-modul tagastas eduka autentimise tulemuse.
PAM-moduli pam-u2f kasutamine koos pam_unixiga kahefaktorilise autentimise korral vÔimaldab haavatavuse tÔttu autentimist ilma teise fakti kinnitamiseta, kui parooli kontrollimine on Ônnestunud. Juhul kui teostatakse paroolivaba autentimist riistvara tokeni kaudu, vÔib pam-u2f töötada koos PAM-moduliga pam_faillock, mis piirab autentimiskatsete arvu ja tagastab PAM_SUCCESS, kui piirmÀÀr on veel tÀitmata.
RĂŒnnaku nĂ€itena tuuakse esile tokeni kontrollimise ĂŒmbersĂ”it kohalikult kasutajalt privileege omavate kĂ€skude tĂ€itmisel, kasutades utiliite sudo ja su. Nende kĂ€skude kĂ€ivitamise ajal vĂ”ib rĂŒndaja luua tingimused pam-u2f mooduli PAM_IGNORE vÀÀrtuse tagastamiseks, nĂ€iteks vabastades olemasolevat mĂ€lu. Probleem on lahendatud versioonis pam-u2f 1.3.1.
Allikas: opennet.ru
