Efter sex mÄnaders utveckling utgÄvan av systembiblioteket (glibc) , 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 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. 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 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
