L'escalation di privilegi OpenBSD è l'autentificazione bypassa vulnerabilità in smtpd, ldapd è radiusd

Cumpagnia Qualys rivelatu quattru vulnerabilità in OpenBSD, unu di quale permette di cunnette remotamente senza autentificazione à certi servizii di rete, è l'altri trè aumentanu i vostri privilegi in u sistema. U rapportu Qualys hà nutatu a risposta rapida di i sviluppatori OpenBSD - tutti i prublemi eranu eliminatu в OpenBSD 6.5 и OpenBSD 6.6 in 40 ore dopu a notificazione privata.

A vulnerabilità sfruttabile remotamente hè causata da un errore in chjamà u gestore di autentificazione in a biblioteca libc, chì chjama
prugramma /usr/libexec/auth/login_style passanu argumenti nantu à a linea di cumanda. Cumprendu quandu si chjama login_style cù u paràmetru opzionale "-s service", hè pussibule di trasferisce u nome di u protocolu. Se utilizate un caratteru "-" à u principiu di un nome d'utilizatore, stu nome serà trattatu cum'è una opzione quandu eseguite login_style. Di conseguenza, se specificate "-schallenge" o "-schallenge:passwd" cum'è u nome d'utilizatore durante l'autentificazione, login_style percepisce a dumanda cum'è una dumanda di utilizà u gestore. S/Chiave.

U prublema hè chì u protokollu S/Key in login_style hè supportatu solu formalmente, ma hè veramente ignoratu cù l'output di un signu di autentificazione successu. Cusì, un attaccu pò, postundu cum'è l'utilizatore "-challenge", ignora l'autentificazione è accede senza furnisce una password o chjave. Tutti i servizii di rete chì utilizanu chjamati libc standard per l'autentificazione sò potenzialmente affettati da u prublema. Per esempiu, a capacità di bypass l'autentificazione hè supportata in smtpd (AUTH PLAIN), ldapd è radiusd.

A vulnerabilità ùn appare micca in sshd, postu chì hà una prutezzione supplementaria chì verifica a presenza di l'utilizatore in u sistema. Tuttavia, sshd pò esse usatu per pruvà a vulnerabilità di un sistema - quandu accede à u nome d'utilizatore "-sresponse:passwd", a cunnessione si ferma, postu chì sshd aspetta chì login_passwd restituisca i paràmetri di sfida, è login_passwd aspetta chì i paràmetri mancanti esse mandatu (nome "-sresponse" hè trattatu cum'è una opzione). Un attaccu lucale puderia pruvucà l'autentificazione in l'utility su, ma passendu u nome "-sresponse" provoca u prucessu di crash, rinviendu un punteru nulu quandu eseguisce a funzione getpwnam_r ("-schallenge", ...).

Altre vulnerabilità:

  • CVE-2019-19520 Escalazione di privilegi lucali via manipulazione di l'utilità xlock furnita cù a bandiera sgid chì cambia u gruppu in "auth". In u codice xlock, a ridefinizione di i percorsi à e biblioteche hè pruibita solu quandu l'identificatore d'utilizatore (setuid) hè cambiatu, chì permette à l'attaccante di cambià a variabile di l'ambienti "LIBGL_DRIVERS_PATH" è urganizà a carica di a so biblioteca cumuna, u codice di quale serà eseguitu. dopu avè alzatu i privilegi à u gruppu "auth".
  • CVE-2019-19522 - Permette à un utilizatore locale chì hè un membru di u gruppu "auth" per eseguisce u codice cum'è root quandu l'autentificazione S/Key o YubiKey hè attivata in u sistema (micca attiva per automaticamente). Aghjunghjendu à u gruppu "auth", chì pò esse accessu sfruttendu a vulnerabilità sopra citata in xlock, permette di scrive i fugliali in i repertorii /etc/skey è /var/db/yubikey. Per esempiu, un attaccante puderia aghjunghje un novu schedariu /etc/skey/root per generà chjavi una volta per l'autentificazione cum'è l'utilizatore root via S/Key.
  • CVE-2019-19519 - a pussibilità di cresce i limiti di risorse attraversu a manipulazione di l'utilità su. Quandu l'opzione "-L" hè specificatu, chì face chì i tentativi di autentificazione si ripetenu ciclicamente s'ellu ùn hè micca successu, a classa d'utilizatori hè stabilita una sola volta è ùn hè micca resettata in i tentativi successivi. Un attaccu pò eseguisce "su -l -L" in u primu tentativu di entre in u login di qualcunu altru cù una classa di cuntu sfarente, ma in u sicondu tentativu pò autentificà bè cum'è ellu stessu. In questa situazione, l'utilizatore serà sottumessu à limiti basati nantu à a classa d'utilizatori specificata in u primu tentativu (per esempiu, u numeru massimu di prucessi o a dimensione di memoria per un prucessu). U metudu funziona solu per i limiti di prestitu da l'utilizatori senza privilegiu, postu chì l'utilizatore root deve esse in u gruppu di rota).

Inoltre, pò esse nutatu implementazione in OpenBSD, un novu metudu per verificà a validità di e chjama di u sistema, chì complica ancu più a sfruttamentu di vulnerabili. U metudu permette à e chjama di u sistema per esse eseguite solu s'ellu si accede da e zone di memoria precedentemente registrate. Per marcà e zone di memoria prupostu novu sistema chjamatu msyscall().

Source: opennet.ru