Glibc 2.35 ir pieejams ar uzlabojumiem, kļūdu labojumiem un daudz ko citu

Pēc sešu mēnešu attīstības tika paziņots par Glibc 2.35 jaunās versijas izlaišanu kurā ietver labojumus no 66 izstrādātājiem un no ieviestajiem uzlabojumiem mēs varam konstatēt, ka tika pievienots atbalsts "C.UTF-8" lokalizācijai, kas ietver visu Unicode kodu salīdzināšanu, bet aprobežojas ar ASCII diapazonu izmantošanu funkcijās fnmatch, regexec un regcomp, lai saglabātu. telpa.

Lokalizācija ir aptuveni 400 KB, no kuriem 346 KB ir LC_CTYPE dati Unicode, un tie ir jāinstalē atsevišķi (nav iebūvēti Glibc). Kodēšanas dati, rakstzīmju veida informācija un transliterācijas tabulas ir atjauninātas, lai atbalstītu Unicode 14.0.0 specifikāciju.

Vēl viena izceļa ir tā Y ieviest funkcijas un makro, kas noapaļo rezultātu uz šaurāku veidu, Papildus funkciju un makro ieviešanai, lai atrastu minimālo un maksimālo peldošā komata skaitļu veidu float, long double, _FloatN un _FloatNx, kas aprakstīti IEEE 754-2019 specifikācijā.

funkcijām exp10, atbilstošie makro tiek pievienoti galvenes failam, kas nav saistīti ar noteiktiem veidiem, kā arī _PRINTF_NAN_LEN_MAX makro tika pievienots , kas ierosināts ISO C2X standarta projektā.

Dinamiskā saistīšanas sistēma ievieš jaunu klasifikācijas algoritmu DSO, izmantojot dziļuma meklēšanu (DFS) lai risinātu veiktspējas problēmas, apstrādājot cilpas atkarības. Lai atlasītu DSO kārtošanas algoritmu, tiek piedāvāts parametrs glibc.rtld.dynamic_sort, kuru var iestatīt uz "1", lai atgrieztos pie iepriekšējā algoritma.

Bez tam pievienots atbalsts jaunai funkcijai '__memcmpeq' uz ABI, ko izmanto kompilatori, lai optimizētu `memcmp' izmantošanu, ja šīs funkcijas atgriešanas vērtība tiek izmantota tikai, lai pārbaudītu darbības pabeigšanas statusu.

The atbalsts automātiskai pavedienu reģistrācijai izmantojot rseq (restartējamās secības) sistēmas izsaukumu, kas nodrošināts kopš Linux kodola 4.18. Rseq sistēmas izsaukums ļauj organizēt instrukciju grupas nepārtrauktu izpildi kas netiek pārtraukts un nosaka rezultātu ar pēdējo paziņojumu grupā. Būtībā tas nodrošina iespēju ļoti ātrai operāciju atomu izpildei, kuras, ja to pārtrauc cits pavediens, tiek iztīrītas un mēģinātas vēlreiz.

No otras puses, tas nodrošina visu izpildāmo failu noklusējuma kompilācija iebūvēto programmu un testa komplektu PIE (no pozīcijas neatkarīgā izpildāmā) režīmā.

Lai atspējotu šo darbību, tiek nodrošināta opcija “–disable-default-pie”., kā arī Linux, pievienoja glibc.malloc.hugetlb iestatījumu, lai mainītu malloc ieviešanu, lai izmantotu madvise sistēmas izsaukumu ar MADV_HUGEPAGE karogu priekš mmap un sbrk vai tieši izmantotu lielas atmiņas lapas, norādot MAP_HUGETLB karogu mmap izsaukumos.

Pirmajā gadījumā veiktspējas palielinājumu var panākt, izmantojot caurspīdīgās milzīgas lapas madvise režīmā, bet otrajā gadījumā varat izmantot sistēmas rezervētas milzīgas lapas (Huge Pages).

Jāņem vērā arī tas, ka šajā jaunajā versijā tika novērstas dažas ievainojamības:

  • CVE-2022-23218, CVE-2022-23219: Bufera pārpilde funkcijās svcunix_create un clnt_create, ko izraisa faila nosaukuma parametra satura kopēšana stekā, nepārbaudot kopēto datu lielumu. Lietojumprogrammām, kas veidotas bez steka aizsardzības un izmanto "unix" protokolu, ievainojamība var izraisīt ļaunprātīga koda izpildi, apstrādājot ļoti garus failu nosaukumus.
  • CVE-2021-3998: ievainojamība funkcijā realpath(), ko izraisa nepareizas vērtības atgriešana noteiktos apstākļos, kas satur neiztīrītus atlikušos datus no steka. Programmai SUID-root fusermount ievainojamību var izmantot, lai iegūtu sensitīvu informāciju no procesa atmiņas, piemēram, lai iegūtu rādītāju informāciju.
  • CVE-2021-3999: viena baita bufera pārpilde funkcijā getcwd (). Problēmu izraisa kļūda, kas pastāv kopš 1995. gada. Lai izsauktu pārplūdi, atsevišķā montāžas punkta nosaukumvietā vienkārši izsauciet chdir() direktorijā "/".

Beidzot Ja jūs interesē uzzināt vairāk par to, sīkāku informāciju varat pārbaudīt šī saite.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.