Lëshimi i bibliotekës sistemore Glibc 2.32

Pas gjashtë muajve zhvillimi u publikua lëshimi i bibliotekës sistemike GNU C Library (glibc) 2.32, e cila plotëson plotësisht kërkesat e standardeve ISO C11 dhe POSIX.1-2017. Në përmbajtjen e lëshimit të ri përfshihen korrigjime nga 67 zhvillues.

Nga ato që janë realizuar në Glibc 2.32 përmirësimeve mund të theksohet:

  • U shtua mbĂ«shtetje pĂ«r procesorĂ«t Synopsys ARC HS (ARCv2 ISA). PĂ«r punĂ«n e portit kĂ«rkohet tĂ« paktĂ«n binutils 2.32, gcc 8.3 dhe bĂ«rthama Linux 5.1. MbĂ«shteten tre variante ABI arc-linux-gnu, arc-linux-gnuhf dhe arceb-linux-gnu (big-endian);
  • U realizua ngarkimi i moduleve tĂ« auditi tĂ« caktuara nĂ« seksionet DT_AUDIT dhe
    DT_DEPAUDIT të skedarit ekzekutiv.
  • PĂ«r arkitekturĂ«n powerpc64le u shtua mbĂ«shtetje pĂ«r llojin IEEE128 long double, e cila aktivizohet gjatĂ« ndĂ«rtimit me opsionin «-mabi=ieeelongdouble».
  • Disa API janĂ« annotuar duke pĂ«rdorur atributin GCC ‘access’, i cili mundĂ«son gjenerimin e paralajmĂ«rimeve mĂ« cilĂ«sore gjatĂ« kompilimit nĂ« GCC 10 pĂ«r identifikimin e mundshmeve tĂ« mbivendosjes sĂ« bufereve dhe varianteve tĂ« tjera tĂ« tejkalimit tĂ« kufijve tĂ« lejuar.
  • PĂ«r sistemet Linux janĂ« realizuar funksionet pthread_attr_setsigmask_np dhe
    pthread_attr_getsigmask_np, të cilat i japin aplikacionit mundësinë për të caktuar maskën e sinjalit për të gjitha fije të krijuara me pthread_create.
  • TĂ« dhĂ«nat e kodimeve, informacioni mbi llojet e simboleve dhe tabelat e transliterimit janĂ« pĂ«rditĂ«suar pĂ«r tĂ« mbĂ«shtetur spefikĂ«n Unicode 13.0.0;
  • U shtua njĂ« skedar i ri pĂ«rfshihet <sys/single_threaded.h>, duke definuar ndryshoren __libc_single_threaded, e cila mund tĂ« pĂ«rdoret nĂ« aplikacione pĂ«r optimizime me njĂ« fije.
  • U shtuan funksionet sigabbrev_np dhe sigdescr_np, tĂ« cilat kthejnĂ« emrin e shkurtuar dhe pĂ«rshkrimin e sinjalit (p.sh., «HUP» dhe «Hangup» pĂ«r SIGHUP).
  • U shtuan funksionet strerrorname_np dhe strerrordesc_np, tĂ« cilat kthejnĂ« emrin dhe pĂ«rshkrimin e gabimit (p.sh., «EINVAL» dhe «Argument i pavlefshĂ«m» pĂ«r EINVAL).
  • PĂ«r platformĂ«n ARM64 u shtua flagu «—enable-standard-branch-protection» (ose -mbranch-protection=standard nĂ« GCC), i cili aktivizon mekanizmin ARMv8.5-BTI (Branch Target Indicator) pĂ«r mbrojtjen e ekzekutimit tĂ« grupeve tĂ« instruksioneve, ndaj tĂ« cilave nuk duhet tĂ« ketĂ« kalime gjatĂ« degĂ«ve. Bllokimi i kalimeve nĂ« pjesĂ« tĂ« rastĂ«sishme tĂ« kodit Ă«shtĂ« realizuar pĂ«r t'u kundĂ«rvĂ«nĂ« krijimit tĂ« gadgjeve nĂ« eksploitat qĂ« pĂ«rdorin teknikat e programimit tĂ« orientuar pĂ«r kthimin (ROP — Return-Oriented Programming, sulmuesi nuk pĂ«rpiqet tĂ« vendosĂ« kodin e tij nĂ« memorie, por operon me copĂ«za ekzistuese tĂ« instrukcioneve makinerike, tĂ« cilat pĂ«rfundojnĂ« me njĂ« instrukcion kthejeje, nga tĂ« cilat ndĂ«rtohen njĂ« varg thirrjesh pĂ«r tĂ« arritur funksionalitetin e dĂ«shiruar).
  • ËshtĂ« kryer njĂ« pastrim i gjerĂ« i funksioneve tĂ« vjetruara, duke pĂ«rfshirĂ« heqjen e opsioneve «—enable-obsolete-rpc» dhe «—enable-obsolete-nsl», si dhe skedarin titull <sys/sysctl.h>. JanĂ« shpallur tĂ« vjetruara funksionet sstk, siginterrupt, sigpause, sighold, sigrelse, sigignore dhe sigset, si dhe masat sys_siglist, _sys_siglist dhe sys_sigabbrev, simbolĂ«t sys_errlist, _sys_errlist, sys_nerr dhe _sys_nerr, moduli NSS hesiod.
  • ldconfig tani e tutje Ă«shtĂ« konfiguruar pĂ«r tĂ« pĂ«rdorur formatin e ri ld.so.cache, i cili mbĂ«shtetet nĂ« glibc pĂ«r almost 20 vjet.
  • JanĂ« eliminuar vulnerabilitetet:
    • CVE-2016-10228 — njĂ« ngĂ«rç nĂ« utilitarin iconv, qĂ« shfaqet kur fillohet me opsionin «-c», nĂ« rastin e pĂ«rpunimit tĂ« tĂ« dhĂ«nave tĂ« shumta tĂ« papĂ«rshtatshme.
    • CVE-2020-10029 — dĂ«mtimi i stack-ut gjatĂ« thirrjes sĂ« funksioneve trigonometri me njĂ« argument pseudo-zero.
    • CVE-2020-1752 — referenca nĂ« njĂ« zonĂ« kujtesĂ« pas lirimit tĂ« saj (use-after-free) nĂ« funksionin glob gjatĂ« hapjes sĂ« lidhjes nĂ« katalogun e shtĂ«pisĂ« («~user») nĂ« rrugĂ«t.
    • CVE-2020-6096 — pĂ«rpunimi i gabuar nĂ« platformĂ«n ARMv7 tĂ« vlerave negative tĂ« parametrave nĂ« memcpy() dhe memmove(), qĂ« pĂ«rcakton madhĂ«sinĂ« e zonĂ«s sĂ« kopjimit. Lejon organizimin e ekzekutimit tĂ« kodit gjatĂ« pĂ«rpunimit nĂ« funksionet memcpy() dhe memmove() tĂ« tĂ« dhĂ«nave tĂ« formatuara nĂ« njĂ« mĂ«nyrĂ« tĂ« caktuar. ËshtĂ« e dukshme se problemi ka mbetur i pa rregulluar pĂ«r pothuajse dy muaj nga publikimi publik dhe pesĂ« muaj nga njoftimi i zhvilluesve tĂ« Glibc.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster