Glibc 2.35 prichádza s vylepšeniami, opravami chýb a ďalšími

Po šiestich mesiacoch vývoja bolo oznámené vydanie novej verzie Glibc 2.35 v ktorom obsahuje opravy od 66 vývojárov a z implementovaných vylepšení môžeme zistiť, že bola pridaná podpora pre miestne nastavenie "C.UTF-8", ktoré zahŕňa porovnávanie pre všetky kódy Unicode, ale je obmedzené na použitie rozsahov ASCII vo funkciách fnmatch, regexec a regcomp na uloženie priestor.

Miestne nastavenie má približne 400 KB, z čoho 346 KB tvoria údaje LC_CTYPE pre Unicode a musí byť nainštalované samostatne (nie je zabudované do Glibc). Údaje kódovania, informácie o type znakov a transliteračné tabuľky boli aktualizované, aby podporovali špecifikáciu Unicode 14.0.0.

Ďalšou vynikajúcou zmenou je táto Y implementovať funkcie a makrá, ktoré zaokrúhlia výsledok na užší typ, Okrem implementácie funkcií a makier na nájdenie minimálneho a maximálneho počtu typov s pohyblivou rádovou čiarkou float, long double, _FloatN a _FloatNx, popísaných v špecifikácii IEEE 754-2019.

pre funkcie exp10 sa do hlavičkového súboru pridajú zodpovedajúce makrá, ktoré nie sú viazané na konkrétne typy, plus makro _PRINTF_NAN_LEN_MAX bolo pridané do , navrhnutý v návrhu normy ISO C2X.

Dynamický linkovací systém implementuje nový klasifikačný algoritmus DSO pomocou hĺbkového vyhľadávania (DFS) na riešenie problémov s výkonom pri spracovávaní závislostí slučiek. Na výber triediaceho algoritmu DSO sa navrhuje parameter glibc.rtld.dynamic_sort, ktorý možno nastaviť na „1“, aby ste sa vrátili k predchádzajúcemu algoritmu.

Okrem toho pridaná podpora pre novú funkciu '__memcmpeq' do ABI, ktoré používajú kompilátory na optimalizáciu použitia `memcmp', keď sa návratová hodnota tejto funkcie používa iba na kontrolu stavu dokončenia operácie.

The podpora automatickej registrácie vlákna pomocou systémového volania rseq (reštartovateľné sekvencie) poskytovaného od jadra Linuxu 4.18. Systémové volanie rseq umožňuje organizovať nepretržité vykonávanie skupiny pokynov ktorý sa nepreruší a zaväzuje výsledok posledným výrokom v skupine. V podstate poskytuje zariadenie na veľmi rýchle atómové vykonávanie operácií, ktoré, ak sú prerušené iným vláknom, sú vyčistené a skúšané znova.

Na druhej strane poskytuje predvolená kompilácia všetkých spustiteľných súborov vstavaných programov a testovacej sady v režime PIE (spustiteľný súbor nezávislý od polohy).

Ak chcete zakázať toto správanie, je poskytnutá možnosť „–disable-default-koláč“., plus pre Linux, pridalo nastavenie glibc.malloc.hugetlb na zmenu implementácie malloc na používanie systémového volania madvise s príznakom MADV_HUGEPAGE pre mmap a sbrk, alebo priamo na používanie veľkých stránok pamäte zadaním príznaku MAP_HUGETLB vo volaniach mmap.

V prvom prípade je možné dosiahnuť zvýšenie výkonu použitím transparentných obrovských stránok v režime madvise a v druhom prípade môžete použiť systémom rezervované obrovské stránky (obrovské stránky).

Treba tiež poznamenať, že v tejto novej verzii boli opravené niektoré chyby zabezpečenia:

  • CVE-2022-23218, CVE-2022-23219: Pretečenie vyrovnávacej pamäte vo funkciách svcunix_create a clnt_create spôsobené skopírovaním obsahu parametra názvu súboru do zásobníka bez kontroly veľkosti skopírovaných údajov. V prípade aplikácií vytvorených bez ochrany zásobníka a používajúcich „unixový“ protokol môže táto zraniteľnosť viesť k spusteniu škodlivého kódu pri spracovaní veľmi dlhých názvov súborov.
  • CVE-2021-3998: zraniteľnosť vo funkcii realpath() spôsobená vrátením nesprávnej hodnoty za určitých podmienok, ktorá obsahuje nevyčistené zvyškové dáta zo zásobníka. Pre program SUID-root fusermount možno túto zraniteľnosť použiť na získanie citlivých informácií z pamäte procesu, napríklad na získanie informácií o ukazovateľoch.
  • CVE-2021-3999: jednobajtové pretečenie vyrovnávacej pamäte vo funkcii getcwd(). Problém je spôsobený chybou, ktorá existuje od roku 1995. Ak chcete zavolať pretečenie, v samostatnom mennom priestore bodu pripojenia zavolajte chdir() v adresári "/".

Konečne Ak máte záujem dozvedieť sa viac, môžete skontrolovať podrobnosti v nasledujúci odkaz.


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.