Glibc 2.35 stiže s poboljšanjima, ispravcima pogrešaka i još mnogo toga

Nakon šest mjeseci razvoja najavljeno je izlazak nove verzije Glibc 2.35 u kojem uključuje popravke od 66 programera a od implementiranih poboljšanja možemo pronaći da je dodana podrška za "C.UTF-8" lokalizaciju, koja uključuje usporedbe za sve Unicode kodove, ali je ograničena na korištenje ASCII raspona u funkcijama fnmatch, regexec i regcomp za spremanje prostor.

Lokalizacija je približno 400 KB, od čega su 346 KB LC_CTYPE podaci za Unicode i moraju se zasebno instalirati (nije ugrađeno u Glibc). Podaci o kodiranju, informacije o vrsti znakova i tablice transliteracije ažurirane su kako bi podržale Unicode 14.0.0 specifikaciju.

Druga promjena koja se ističe je ta Y implementirati funkcije i makronaredbe koje zaokružuju rezultat na uži tip, Uz implementaciju funkcija i makronaredbi za pronalaženje minimalnog i maksimalnog broja s pomičnim zarezom, tipova float, long double, _FloatN i _FloatNx, opisanih u specifikaciji IEEE 754-2019.

za funkcije exp10, odgovarajuće makronaredbe se dodaju datoteci zaglavlja, koji nisu vezani za određene vrste, plus makronaredba _PRINTF_NAN_LEN_MAX dodana je u , predložen u nacrtu standarda ISO C2X.

Sustav dinamičkog povezivanja implementira novi klasifikacijski algoritam DSO pomoću pretraživanja dubine (DFS) za rješavanje problema s performansama pri rukovanju ovisnostima petlje. Za odabir algoritma DSO sortiranja predlaže se parametar glibc.rtld.dynamic_sort, koji se može postaviti na "1" kako bi se vratio na prethodni algoritam.

Osim toga dodana podrška za novu funkciju '__memcmpeq' na ABI, koji koriste prevoditelji za optimizaciju upotrebe `memcmp' kada se povratna vrijednost ove funkcije koristi samo za provjeru statusa dovršetka operacije.

The podrška za automatsku registraciju niti korištenjem rseq (restartabilnih sekvenci) sistemskog poziva koji se pruža od Linux kernela 4.18. Sistemski poziv rseq omogućuje organiziranje kontinuiranog izvršavanja grupe instrukcija koji se ne prekida i obvezuje rezultat posljednjom naredbom u skupini. U biti, pruža mogućnost za vrlo brzo atomsko izvođenje operacija koje se, ako ih prekine druga nit, čiste i ponovno pokušavaju.

S druge strane, pruža zadana kompilacija svih izvršnih datoteka ugrađenih programa i testnog paketa u načinu rada PIE (izvršna datoteka neovisna o položaju).

Da biste onemogućili ovo ponašanje, omogućena je opcija “-disable-default-pie”., plus za Linux, dodao je postavku glibc.malloc.hugetlb za ​​promjenu malloc implementacije da koristi poziv sustava madvise s oznakom MADV_HUGEPAGE za mmap i sbrk, ili izravno koristi velike memorijske stranice navođenjem oznake MAP_HUGETLB u mmap pozivima.

U prvom slučaju, povećanje performansi može se postići korištenjem transparentnih ogromnih stranica u madvise modu, a u drugom slučaju možete koristiti velike stranice (Huge Pages) rezervirane na sustavu.

Također treba napomenuti da su neke ranjivosti ispravljene u ovoj novoj verziji:

  • CVE-2022-23218, CVE-2022-23219: Prelijevanje međuspremnika u funkcijama svcunix_create i clnt_create uzrokovano kopiranjem sadržaja parametra naziva datoteke na stog bez provjere veličine kopiranih podataka. Za aplikacije izgrađene bez zaštite stogova i koje koriste "unix" protokol, ranjivost bi mogla dovesti do izvršenja zlonamjernog koda prilikom obrade vrlo dugih naziva datoteka.
  • CVE-2021-3998: ranjivost u funkciji realpath() uzrokovana vraćanjem netočne vrijednosti pod određenim uvjetima koja sadrži neočišćene preostale podatke iz stog. Za SUID-root fusermount program, ranjivost se može koristiti za dobivanje osjetljivih informacija iz procesne memorije, na primjer, za dobivanje informacija o pokazivaču.
  • CVE-2021-3999: preljev međuspremnika jednog bajta u funkciji getcwd(). Problem je uzrokovan bugom koji postoji od 1995. Da biste pozvali preljev, u zasebnom imenskom prostoru točke montiranja, samo pozovite chdir() u direktoriju "/".

Konačno Ako vas zanima više o tome, pojedinosti možete provjeriti u sljedeći link.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.