Pe 20 mai 2026, dezvoltatorii FreeBSD au anunțat corectarea a șapte vulnerabilități noi în sistem. Nu toate sunt la fel de periculoase, dar unele sunt extrem de neplăcute.
CVE-2026-45251 — use-after-free în apeluri de sistem de tip select, dacă în lista lor de așteptare există descriptorii proceselor (în FreeBSD 15 — și noi descriptorii pentru jail-uri), iar acești descriptori au fost închiși într-un alt fir de execuție în timp ce apelul de sistem a rămas în așteptare. Judecând după această modificare, sunt afectați de asemenea descriptorii asociați cu netmap (driver pentru acces direct accelerat la adaptorul de rețea), dar nu există informații oficiale în acest sens. Descriptorii proceselor au fost introduși în FreeBSD 9, așa că vulnerabilitatea există probabil încă de atunci. În declarația oficială se menționează că vulnerabilitatea permite obținerea privilegiilor de superuser. Nu există modalități de a o neutraliza fără patch-uri/actualizări.
CVE-2026-45250 — calcularea incorectă a dimensiunii buffer-ului și scrierea ulterioară în afara buffer-ului pe stivă în apelul de sistem setcred, deși setcred necesită privilegii root, coruperea stivei are loc înainte ca privilegiile să fie verificate și, astfel, este accesibilă tuturor. Acest apel de sistem a apărut în FreeBSD 14.3 (deci versiunile anterioare nu sunt afectate) și oferă o modalitate de a seta toate identificatoarele utilizatorului și grupurilor pentru procesul curent într-o singură apelare, în loc de combinații setuid+setgid+setgroups și altele. Vulnerabilitatea permite executarea de cod malițios în contextul nucleului. Nu există modalități de a o neutraliza fără patch-uri/actualizări.
CVE-2026-45252 — lipsa verificării existenței unui caracter nul final înainte de copierea unui șir obținut de la demonul fuse într-un nou buffer. Totuși, există o verificare a dimensiunii maxime pentru copiere, iar mai mult de 253 de octeți suplimentari din memoria nucleului nu pot fi citiți. De asemenea, se poate scrie până la 250 de octeți în «spațiul liber pentru heap-ul nucleului». În mod implicit în freebsd, montarea sistemelor de fișiere de către utilizatori non-root este interzisă, ceea ce înseamnă că pentru a introduce un demon malițios fuse în nucleu trebuie să fii root. Totuși, dacă sysctl vfs.usermount=1 — sistemul devine vulnerabil și pentru utilizatori obișnuiți. De asemenea, trebuie avut în vedere pericolul demonului fuse în jail, unde acesta poate fi și root (dar implicit acest lucru este de asemenea interzis).
CVE-2026-45253 — utilizarea ptrace a permis lansarea unui apel de sistem în procesul debug-uit cu un număr incorect, ceea ce a dus la executarea de cod în kernel neprevăzut în cadrul execuției ca apel de sistem, cu consecințe potențial neplăcute. Dacă security.bsd.unprivileged_proc_debug=0 este setat (ceea ce reprezintă o bună practică pentru servere, oricum, iar instalatorul de sistem sugerează chiar aceasta opțional), atunci procesele utilizatorilor și cele încarcerate nu vor putea folosi ptrace și astfel vulnerabilitatea va rămâne accesibilă doar utilizatorului root.
CVE-2026-45255 — injectarea comenzilor shell cu privilegii root în bsdinstall/bsdconfig prin intermediul numelui rețelelor wireless malițioase, care nu erau escape-uite, în momentul vizualizării listei lor. Pentru a evita această vulnerabilitate, este suficient să nu se vizualizeze lista rețelelor wireless din bsdinstall/bsdconfig.
CVE-2026-39461, CVE-2026-45254 — vulnerabilități în biblioteca libcasper (nu în kernel). Biblioteca este destinată furnizării sigure și configurabile a serviciilor pentru procesele aflate în sandbox. Una dintre vulnerabilități este legată de depășirea limitei buffer-ului în stivă și deteriorarea stivei prin organizarea în această bibliotecă a descriptorilor de fișiere cu numere mari (era calculată pentru numere de până la 1024 — limita implicită de structuri pentru sistemul de apel select). A doua vulnerabilitate este posibilitatea de a elimina listele de restricții impuse (ideologia bibliotecii constă în faptul că restricțiile aplicate unui proces pot fi doar întărite) cap_net.
Versiunile corectate ale sistemului au numerele: 14.3-RELEASE-p14, 14.4-RELEASE-p5 și 15.0-RELEASE-p9. De asemenea, este important de menționat un aspect: lansarea FreeBSD 13.5 a fost recent scoasă de la suport — 30 aprilie 2026, și pentru aceasta (și pentru ramura 13.x în general) nu mai există corecții oficiale. Totuși, dacă dintr-un anumit motiv nu doriți să grăbiți trecerea la lansarea 14.x, patch-urile pentru versiunea 14.3 se potrivesc în general și cu sursele 13.5, iar CVE-2026-45250 pentru ramura 13 nu este relevant din cauza absenței setcred().
Sursa: linux.org.ru
