Vulnerabilitate în pam-u2f, care permite ocolirea autentificării bazate pe token hardware.

Dezvoltatorii proiectului openSUSE au identificat o vulnerabilitate (CVE-2025-23013) în modulul PAM pam-u2f, utilizat pentru autentificare cu tokenuri YubiKey, Yubico Security Key, YubiHSM și alte dispozitive FIDO care suportă protocolul U2F (Universal 2nd Factor). Vulnerabilitatea permite unui utilizator cu acces local neprivilegiat la sistem, în anumite configurații PAM, să treacă autentificarea fără a insera tokenul hardware. În practică, modulul pam-u2f este de obicei conectat pentru autentificarea cu doi factori sau fără parolă folosind tokenuri (de exemplu, pentru a confirma dreptul de a executa comenzi prin utilitarele su și sudo).

Vulnerabilitatea este cauzată de returnarea incorectă a valorii PAM_IGNORE de către funcția pam_sm_authenticate(). Această valoare este returnată în caz de eroare la executarea apelurilor gethostname(), pam_modutil_drop_priv(), pam_modutil_regain_priv() sau resolve_authfile_path(), precum și în caz de probleme de alocare a memoriei în strdup() sau calloc(). Problema constă în faptul că biblioteca libpam, primind de la modulul PAM un rezultat cu codul PAM_IGNORE, va returna codul final PAM_SUCCESS, care indică o autentificare reușită, dacă în lanțul de verificări un alt modul PAM a returnat un rezultat pozitiv al autentificării.

Atunci când se folosește modulul pam-u2f în tandem cu pam_unix pentru autentificare cu doi factori, vulnerabilitatea permite trecerea cu succes a autentificării în cazul unei verificări reușite a parolei, fără confirmarea celui de-al doilea factor. În cazul autentificării fără parolă cu un token hardware, pam-u2f poate fi utilizat în combinație cu modulul PAM pam_faillock, care limitează numărul de încercări de autentificare și returnează PAM_SUCCESS, dacă limita nu a fost atinsă.

Un exemplu de atac este ocolirea verificării tokenului atunci când un utilizator local execută comenzi privilegiate, folosind utilitarele sudo și su. În timpul rulării acestor comenzi, atacatorul poate crea condiții pentru returnarea de către modulul pam-u2f a valorii PAM_IGNORE, de exemplu, prin epuizarea memoriei disponibile. Problema a fost rezolvată în versiunea pam-u2f 1.3.1.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster