Glibc 2.32 tizim kutubxonasi relizi

Olti oylik rivojlanishdan keyin e'lon qilindi tizim kutubxonasi chiqarilishi GNU C kutubxonasi (glibc) 2.32, bu ISO C11 va POSIX.1-2017 talablariga to'liq javob beradi. Yangi nashr 67 ta ishlab chiquvchi tomonidan tuzatilgan.

Glibc 2.32 da amalga oshirilgan uluchsheniy qayd qilishingiz mumkin:

  • Synopsys ARC HS (ARCv2 ISA) protsessorlari uchun qo'shimcha yordam. Port ishlashi uchun kamida binutils 2.32, gcc 8.3 va Linux yadrosi 5.1 talab qilinadi. Uchta ABI varianti qo'llab-quvvatlanadi: arc-linux-gnu, arc-linux-gnuhf va arceb-linux-gnu (big-endian);
  • DT_AUDIT va bo'limlarida ko'rsatilgan audit modullarini yuklash
    Bajariladigan faylning DT_DEPAUDIT.

  • Powerpc64le arxitekturasi uchun "-mabi=ieeelongdouble" opsiyasi bilan qurishda yoqiladigan IEEE128 long double turini qo'llab-quvvatlash amalga oshiriladi.
  • Ba'zi API'larga GCC "kirish" atributi izohlangan bo'lib, bu mumkin bo'lgan bufer to'lib ketishi va boshqa chegaradan tashqari stsenariylarni aniqlash uchun GCC 10 da kompilyatsiya qilinganda yaxshiroq ogohlantirishlarni yaratish imkonini beradi.
  • Linux tizimlari uchun pthread_attr_setsigmask_np va funktsiyalari
    pthread_attr_getsigmask_np, bu dasturga pthread_create yordamida yaratilgan iplar uchun signal niqobini belgilash imkoniyatini beradi.

  • Unicode 13.0.0 spetsifikatsiyasini qo'llab-quvvatlash uchun kodlash ma'lumotlari, belgilar turi ma'lumotlari va transliteratsiya jadvallari yangilandi;
  • Yangi sarlavha fayli qo'shildi , bu __libc_single_threaded o'zgaruvchisini belgilaydi, bu bitta ipli optimallashtirish uchun ilovalarda ishlatilishi mumkin.
  • Signalning qisqartirilgan nomi va tavsifini qaytaruvchi sigabbrev_np va sigdescr_np funksiyalari qo‘shildi (masalan, SIGHUP uchun “HUP” va “Hangup”).
  • Xato nomi va tavsifini qaytaruvchi strerrorname_np va strerrordesc_np funksiyalari qo‘shildi (masalan, EINVAL uchun “EINVAL” va “Yaroqsiz argument”).
  • ARM64 platformasi uchun "--enable-standart-branch-protection" bayrog'i qo'shildi (yoki -mranch-protection=GCCda standart), bu ARMv8.5-BTI (Branch Target Indicator) mexanizmini himoya qilish imkonini beradi. bajarilmasligi kerak bo'lgan buyruqlar to'plamining bajarilishi.tarmoqli o'tishlar. Kodning ixtiyoriy bo'limlariga o'tishni blokirovka qilish, qaytarishga yo'naltirilgan dasturlash usullaridan foydalanadigan ekspluatatsiyalarda gadjetlar yaratilishining oldini olish uchun amalga oshiriladi (ROP - Qaytishga yo'naltirilgan dasturlash; tajovuzkor o'z kodini xotiraga joylashtirishga urinmaydi, lekin allaqachon mavjud bo'laklar ustida ishlaydi. Qaytishni boshqarish yo'riqnomasi bilan tugaydigan mashina ko'rsatmalari, undan kerakli funksionallikni olish uchun qo'ng'iroqlar zanjiri qurilgan).
  • “--enable-obsolete-rpc” va “--enable-obsolete-nsl” opsiyalarini, sarlavha faylini olib tashlashni o'z ichiga olgan eskirgan funksiyalarni katta tozalash amalga oshirildi. . sstk, siginterrupt, sigpause, sighold, sigrelse, sigignore va sigset funktsiyalari, sys_siglist, _sys_siglist va sys_sigabbrev massivlari, sys_errlist, _sys_errlist, sys_nerr va _thesys_nerr modullari oldindan tayyorlandi va moduli o'rnatildi.
  • ldconfig deyarli 20 yil davomida glibc-da qo'llab-quvvatlanadigan yangi ld.so.cache formatidan foydalanish uchun sukut bo'yicha ko'chirildi.
  • Zaifliklar tuzatildi:
    • CVE-2016-10228 – Noto'g'ri ko'p baytli ma'lumotlarni qayta ishlashda "-c" opsiyasi bilan ishga tushirilganda iconv yordam dasturidagi halqa paydo bo'ladi.
    • CVE-2020-10029 Trigonometrik funksiyalarni psevdo-null argument bilan chaqirishda stek buzilishi.
    • CVE-2020-1752 - yo'llardagi uy katalogiga ("~foydalanuvchi") havolani kengaytirishda glob funksiyasida bo'sh xotiradan foydalanish.
    • CVE-2020-6096 - ARMv7 platformasida memcpy() va memmove() da salbiy parametr qiymatlarini noto'g'ri ishlash, bu nusxa ko'chirilgan maydon hajmini aniqlaydi. Ruxsat beradi memcpy() va memmove() funksiyalarida ma’lum tarzda formatlangan ma’lumotlarni qayta ishlashda kod bajarilishini tashkil qilish. Muammoning mavjudligi muhim qoldi ma'lumotlar ommaga oshkor qilinganidan beri deyarli ikki oy davomida va Glibc ishlab chiquvchilari xabardor qilinganidan beri besh oy davomida tuzatilmagan.

Manba: opennet.ru

a Izoh qo'shish