O vulnerabilitate critică în sudo permite să obțineți privilegii de root

L Cercetătorii de securitate Qualys au identificat o vulnerabilitate critică (CVE-2021-3156) în utilitatea sudo, care este conceput pentru a organiza executarea comenzilor în numele altor utilizatori.

Vulnerabilitate permite accesul neautentificat cu privilegii de root. Problema poate fi folosit de orice utilizator, indiferent de prezența în grupurile de sistem și de prezența unei intrări în fișierul / etc / sudoers.

Atacul nu necesită introducerea parolei utilizatorului, adică, vulnerabilitatea poate fi utilizată de o persoană externă pentru a ridica privilegiile asupra sistemului după ce vulnerabilitatea a fost compromisă într-un proces neprivilegiat (inclusiv cele începute cu utilizatorul „nimeni”).

Pentru a căuta o vulnerabilitate în sistemul dvs., pur și simplu executați comanda „sudoedit -s /” și vulnerabilitatea este prezentă dacă este afișat un mesaj de eroare care începe cu „sudoedit:”.

Despre vulnerabilitate

Vulnerabilitatea a apărut din iulie 2011 și este cauzată de un overflow de tampon în gestionarea caracterelor de evacuare a liniei în parametrii destinați executării comenzilor în modul shell. Modul shell este activat prin specificarea argumentelor „-i” sau „-s” și face ca comanda să nu fie executată direct, ci printr-un apel shell suplimentar cu steagul „-c” („comanda sh -c»).

Concluzia este că atunci când utilitarul sudo este rulat normal, acesta scapă de caracterele speciale specificând opțiunile „-i” și „-s”, dar când este pornit utilitarul sudoedit, parametrii nu sunt scăpați, ca parse_args () Funcția setează variabila de mediu MODE_EDIT în loc de MODE_SHELL și nu resetează valoarea „valid_flags”.

La rândul său, transmiterea caracterelor fără scăpare creează condiții pentru a apărea o altă eroare în controler, care elimină caracterele de evacuare înainte de a verifica regulile sudoer.

Handlerul analizează incorect prezența unui caracter invers fără a scăpa la sfârșitul liniei, consideră că această bară inversă scapă încă un caracter și continuă să citească datele dincolo de limita liniei, copiindu-le în bufferul "user_args" și suprascriind zonele de memorie din afara bufferului.

Și se menționează că, atunci când încearcă să manipuleze valorile din linia de comandă sudoedit, atacatorul poate realiza suprapunerea unei cozi regrababile în date care afectează cursul ulterior al lucrării.

În plus față de crearea unui exploit, acesta simplifică faptul că atacatorul are un control complet asupra dimensiunii bufferului user_args, care corespunde dimensiunii tuturor argumentelor transmise și, de asemenea, controlează dimensiunea și conținutul datelor scrise în afara bufferului folosind variabile de mediu.

Cercetătorii de securitate Qualys au reușit să pregătească trei exploit-uri, a căror muncă se bazează pe rescrierea conținutului structurilor sudo_hook_entry, service_user și def_timestampdir:

  • Întrerupând sudo_hook_entry, un binar numit „SYSTEMD_BYPASS_USERDB” poate fi rulat ca root.
  • Utilizatorul de serviciu suprasolicitat a reușit să ruleze cod arbitrar ca root.
  • Prin suprascrierea def_timestampdir, a fost posibil să spulgeți conținutul stivei sudo, inclusiv variabilele de mediu, în fișierul / etc / passwd și să realizați înlocuirea utilizatorului cu privilegii root.

Cercetătorii au arătat că exploatează funcționează pentru a obține privilegii complete de root pe Ubuntu 20.04, Debian 10 și Fedora 33.

Vulnerabilitate poate fi exploatat pe alte sisteme de operare și distribuții, dar verificarea cercetătorilor a fost limitată la Ubuntu, Debian și Fedora, plus se menționează că toate versiunile sudo 1.8.2 la 1.8.31p2 și 1.9.0 la 1.9.5p1 în setările implicite sunt afectate. Soluție sugerată în sudo 1.9.5p2.

Cercetătorii au notificat dezvoltatorii în prealabil distribuitori care au lansat deja actualizări de pachete într-un mod coordonat: Debian, RHEL, Fedor, Ubuntu, SUSE / openSUSE, Arch Linux, Slackware, Gentoo și FreeBSD.

În cele din urmă dacă sunteți interesat să aflați mai multe despre asta despre vulnerabilitate, puteți verifica detaliile În următorul link.


Conținutul articolului respectă principiile noastre de etică editorială. Pentru a raporta o eroare, faceți clic pe aici.

Fii primul care comenteaza

Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.