UtgÄvan av systembiblioteket Glibc 2.32

Efter sex mÄnaders utveckling publicerades utgÄvan av systembiblioteket GNU C Bibliotek (glibc) 2.32, som helt uppfyller kraven i ISO C11 och POSIX.1-2017. Den nya utgÄvan innehÄller korrigeringar frÄn 67 utvecklare.

Bland de implementerade förbÀttringarna i Glibc 2.32 kan nÀmnas: Tillagd support för Synopsys ARC HS (ARCv2 ISA) processorer. För porteringen krÀvs minst binutils 2.32, gcc 8.3 och Linux-kÀrna 5.1. Tre varianter av ABI stöds: arc-linux-gnu, arc-linux-gnuhf och arceb-linux-gnu (big-endian);

  • Moduler som anges i sektionerna DT_AUDIT och
  • DT_DEPAUDIT av det exekverbara filen har implementerats.
    För arkitekturen powerpc64le har stöd för IEEE128 long double typ implementerats, som aktiveras vid kompilering med alternativet «-mabi=ieeolongdouble».
  • Vissa API:er har annoterats med GCC-attributet 'access', vilket gör att det vid kompilering i GCC 10 kan generera mer kvalitativa varningar vid upptĂ€ckten av möjliga buffertöverflöden och andra typer av grĂ€nsöverskridningar.
  • För Linux-system har funktionerna pthread_attr_setsigmask_np och
  • pthread_attr_getsigmask_np implementerats, vilket ger applikationen möjlighet att ange en signalmask för trĂ„dar som skapats med hjĂ€lp av pthread_create.
    Teckenkodningar, information om teckentyp och translitterationstabeller har uppdaterats för att stödja specifikationen Unicode 13.0.0;
  • En ny headerfil <sys/single_threaded.h> har lagts till, som definierar variabeln __libc_single_threaded, som kan anvĂ€ndas i applikationer för entrĂ„dsoptimeringar.
  • Funktionerna sigabbrev_np och sigdescr_np har lagts till, som returnerar det förkortade namnet och beskrivningen av signalen (till exempel, «HUP» och «Hangup» för SIGHUP).
  • Funktionerna strerrorname_np och strerrordesc_np har lagts till, som returnerar namnet och beskrivningen av ett fel (till exempel, «EINVAL» och «Ogiltig parameter» för EINVAL).
  • Funktionerna strerrorname_np och strerrordesc_np har lagts till, vilket returnerar namnet och beskrivningen av felet (till exempel "EINVAL" och "Ogiltigt argument" för EINVAL).
  • För ARM64-plattformen har flaggan "—enable-standard-branch-protection" (eller -mbranch-protection=standard i GCC) lagts till, vilket aktiverar ARMv8.5-BTI (Branch Target Indicator) mekanismen för att skydda utförande av instruktionsuppsĂ€ttningar som inte ska kunna övergĂ„ till vid grenindelning. Blockering av övergĂ„ngar till slumpmĂ€ssiga kodsegment har implementerats för att motverka skapandet av gadgets i exploateringar som anvĂ€nder tekniker för return-oriented programming (ROP — Return-Oriented Programming, dĂ€r angriparen inte försöker placera sin kod i minnet, utan arbetar med redan existerande bitar av maskininstruktioner som avslutas med en kontrollövergĂ„ngsinstruktion, frĂ„n vilka en kedja av anrop byggs upp för att uppnĂ„ önskad funktionalitet).
  • En stor rensning av förĂ„ldrade funktioner har genomförts, inklusive borttagning av alternativen "—enable-obsolete-rpc" och "—enable-obsolete-nsl", samt headerfilen . Funktionerna sstk, siginterrupt, sigpause, sighold, sigrelse, sigignore och sigset, samt arrayerna sys_siglist, _sys_siglist och sys_sigabbrev, symtomen sys_errlist, _sys_errlist, sys_nerr och _sys_nerr, och NSS-modulen hesiod har förklarats som förĂ„ldrade.
  • ldconfig har som standard Ă€ndrats till att anvĂ€nda det nya formatet ld.so.cache, som redan har stöds i glibc i nĂ€stan 20 Ă„r.
  • SĂ„rbarheter Ă„tgĂ€rdade:
    • CVE-2016-10228 — en oĂ€ndlig loop i verktyget iconv, som upptrĂ€der nĂ€r det körs med alternativet "-c", vid hantering av ogiltiga flerminariesdata.
    • CVE-2020-10029 — stackskador vid anrop av trigonometriska funktioner med pseudonollargument.
    • CVE-2020-1752 — Ă„tkomst till minnesomrĂ„de efter dess frigöring (use-after-free) i funktionen glob nĂ€r en referens till hemmappnamnet ("~user") avslöjas i sökvĂ€gar.
    • CVE-2020-6096 — felaktig hantering pĂ„ ARMv7-plattformen av negativa vĂ€rden i parametern för memcpy() och memmove(), vilket definierar storleken pĂ„ det kopierade omrĂ„det. Möjliggör utförande av kod nĂ€r data formaterade pĂ„ ett visst sĂ€tt behandlas i funktionerna memcpy() och memmove(). Det Ă€r anmĂ€rkningsvĂ€rt att problemet förblev olöst i nĂ€stan tvĂ„ mĂ„nader frĂ„n och med den offentliga avslöjandet och fem mĂ„nader frĂ„n det att utvecklarna av Glibc meddelades.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster