Glibc 2.34 vjen me rregullime të cenueshmërisë, funksione të reja për Linux dhe më shumë

kohët e fundit u njoftua lëshimi i versionit të ri të Glibc 2.34 e cila vjen pas gjashtë muajsh zhvillimi dhe në të cilën janë bërë disa ndryshime mjaft të rëndësishme, ndër të cilat përfshirja e bibliotekave të libpthread, libdl, libutil dhe libanl, si dhe rregullime të ndryshme të defekteve në kodin e të cilave njëri prej tyre shkaktoi bllokime.

Për ata që nuk janë të njohur me Glibc, ata duhet të dinë se çfarë është një bibliotekë GNU C, i njohur zakonisht si glibc është biblioteka standarde e ekzekutimit GNU C. Në sistemet ku përdoret, kjo bibliotekë C që siguron dhe përcakton thirrjet e sistemit dhe funksionet e tjera themelore, përdoret nga pothuajse të gjitha programet. 

Karakteristikat kryesore të reja të Glibc 2.34

Në këtë version të ri të Glibc 2.34 që është paraqitur libpthread, libdl, libutil dhe libanl janë integruar në bibliotekën kryesore, përdorimi i funksionalitetit të tij në aplikacione nuk kërkon lidhjen e tyre me flamujt -lpthread, -ldl, -lutil dhe -lanl.

Për më tepër, përmendet se janë bërë përgatitjet për integrimin e libreolv në libc, me të cilat integrimi do të lejojë një proces më të qetë të azhurnimit të glibc dhe do të thjeshtojë zbatimin e kohës së funksionimit dhe bibliotekat stub janë siguruar gjithashtu për pajtueshmëri me aplikacionet e ndërtuara me versionet e mëparshme të glibc.

Nga ana e ndryshimeve të fokusuara në Linux Glibc 2.34 thekson shtoi aftësinë për të përdorur tipin 64 bit bit_ time në konfigurimet që tradicionalisht përdorte llojin time_t 32 bit. Ky funksion është i disponueshëm vetëm në sistemet me kernel 5.1 dhe më të lartë.

Një tjetër ndryshim specifik për Linux është zbatimi i funksionit execveatlejon të ekzekutohet një skedar i ekzekutueshëm nga një përshkrues i skedarëve të hapur. Funksioni i ri përdoret gjithashtu në zbatimin e thirrjes fexecve, e cila nuk kërkon që sistemi pseudo-skedar / proc të montohet gjatë fillimit.

Funksioni u shtua gjithashtu close_range () e cila është e disponueshme për versionet Linux 5.9 dhe më e lartë dhe që mund të jetë përdoret për të lejuar një proces të mbyllë një gamë të plotë të përshkruesve të skedarëve hapur në të njëjtën kohë, përveç kësaj zbatohet parametri glibc.pthread.stack_cache_size, i cili mund të përdoret për të rregulluar madhësinë e cache -it të stackit pthread.

Për më tepër, shtuar funksionin _Fork, një zëvendësim për funksion pirun i cili plotëson kërkesat e "async-sinjal-safe", domethënë, mund të thirret në mënyrë të sigurt nga mbajtësit e sinjalit. Gjatë ekzekutimit të _Fork, krijohet një mjedis minimal, i mjaftueshëm për të thirrur funksione në mbajtësit e sinjaleve si ngritja dhe ekzekutimi, pa thirrur veçori që mund të ndryshojnë bravën ose gjendjen e brendshme.

Për pjesën e dobësive të fiksuara në Glibc 2.34, përmenden sa vijon:

CVE-2021-27645: Procesi nscd (emri i ruajtjes së serverit të emrit) dështoi për shkak të një thirrjeje të dyfishtë në funksionin falas gjatë përpunimit të kërkesave të grupit të rrjetit të krijuar posaçërisht.

CVE-2021-33574: qasja në një zonë të kujtesës tashmë të liruar (përdorimi pa pagesë) në funksionin mq_notify kur përdorni llojin e njoftimit SIGEV_THREAD me një atribut thread për të cilin është vendosur një maskë alternative lidhëse e CPU-së. Problemi mund të shkaktojë një përplasje, por opsionet e tjera të sulmit nuk përjashtohen.

CVE-2021-35942: Përmbytja e madhësisë së parametrit në funksionin wordexp mund të prishë aplikacionin.

Nga ndryshimet e tjera që bien në sy:

  • Funksioni timespec_getres, i përcaktuar në draft standardin ISO C2X, është shtuar dhe funksioni timespec_get është rritur me aftësi të ngjashme me funksionin POSIX clock_getres.
  • Në skedarin e moduleve gconv, mbeti vetëm një grup minimal i moduleve kryesore të gconv, dhe pjesa tjetër u zhvendos në një skedar shtesë gconv-modules-extra.conf të vendosur në drejtorinë gconv-modules.d.
  • Përdorimi i lidhjeve simbolike për të lidhur objektet e përbashkëta të instalueshme me versionin Glibc është hequr. Këto objekte tani janë instaluar siç është (p.sh. libc.so.6 tani është një skedar dhe jo një lidhje me libc-2.34.so).
  • Në Linux, funksionet si shm_open dhe sem_open tani kërkojnë një sistem skedar për kujtesën e përbashkët të montuar në pikën e montimit / dev / shm.

Më në fund nëse jeni të interesuar të dini më shumë për të të këtij versioni të ri, mund të kontrolloni detajet në lidhjen vijuese.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.