Glibc 2.35 ИздаванС Π½Π° систСмна Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°

Π‘Π»Π΅Π΄ ΡˆΠ΅ΡΡ‚ мСсСца Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° бСшС пусната систСмната Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° GNU C Library (glibc) 2.35, която напълно отговаря Π½Π° изискванията Π½Π° стандартитС ISO C11 ΠΈ POSIX.1-2017. Новата вСрсия Π²ΠΊΠ»ΡŽΡ‡Π²Π° ΠΊΠΎΡ€Π΅ΠΊΡ†ΠΈΠΈ ΠΎΡ‚ 66 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ.

Някои ΠΎΡ‚ подобрСнията, Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈ Π² Glibc 2.35, Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚:

  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π»ΠΎΠΊΠ°Π»Π° "C.UTF-8", ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π²Π° ΠΏΡ€Π°Π²ΠΈΠ»Π° Π·Π° сортиранС Π·Π° всички Unicode ΠΊΠΎΠ΄ΠΎΠ²Π΅, Π½ΠΎ Π·Π° Π΄Π° спСсти място Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ Π΄ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ASCII Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΈ във Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ fnmatch, regexec ΠΈ regcomp. Π›ΠΎΠΊΠ°Π»ΡŠΡ‚ Π΅ ΠΎΠΊΠΎΠ»ΠΎ 400 KB, ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ 346 KB са LC_CTYPE Π΄Π°Π½Π½ΠΈ Π·Π° Unicode ΠΈ изисква ΠΎΡ‚Π΄Π΅Π»Π½Π° инсталация (Π½Π΅ Π΅ Π²Π³Ρ€Π°Π΄Π΅Π½Π° Π² Glibc).
  • Π”Π°Π½Π½ΠΈΡ‚Π΅ Π·Π° ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅, информацията Π·Π° Ρ‚ΠΈΠΏΠ° Π·Π½Π°Ρ†ΠΈ ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈΡ‚Π΅ Π·Π° транслитСрация са Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ, Π·Π° Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ спСцификацията Unicode 14.0.0.
  • IN И ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ сС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ макроси, ΠΊΠΎΠΈΡ‚ΠΎ Π·Π°ΠΊΡ€ΡŠΠ³Π»ΡΡ‚ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚Π° Π΄ΠΎ ΠΏΠΎ-тСсСн Ρ‚ΠΈΠΏ: fsqrt, fsqrtl, dsqrtl, ffma, ffmal, dfmal, fMsqrtfN, fMsqrtfNx, fMxsqrtfN, fMxsqrtfNx, fMfmafN, fMfmafNx, fMxfmafN ΠΈ fMxfmafNx. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ са описани Π² спСцификациитС TS 18661-1:2014, TS 18661-3:2015 ΠΈ са Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ към ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° Π±ΡŠΠ΄Π΅Ρ‰ΠΈΡ стандарт ISO C2X C.
  • IN И Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ макроси Π·Π° Π½Π°ΠΌΠΈΡ€Π°Π½Π΅ Π½Π° ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΈ максимум Π½Π° числа с ΠΏΠ»Π°Π²Π°Ρ‰Π° запСтая с Ρ‚ΠΈΠΏΠΎΠ²Π΅Ρ‚Π΅ float, long double, _FloatN ΠΈ _FloatNx, описани Π² спСцификацията IEEE 754-2019 ΠΈ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ към Ρ‡Π΅Ρ€Π½ΠΎΠ²Π°Ρ‚Π° Π½Π° Π±ΡŠΠ΄Π΅Ρ‰ΠΈΡ стандарт ISO C2X C: fmaximum, fmaximum_num , fmaximum_mag, fmaximum_mag_num, fminimum, fminimum_num, fminimum_mag, fminimum_mag_num.
  • IN Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ константи Π·Π° числа с ΠΏΠ»Π°Π²Π°Ρ‰Π° запСтая с Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½Π° точност: M_Ef, M_LOG2Ef, M_LOG10Ef, M_LN2f, M_LN10f, M_PIf, M_PI_2f, M_PI_4f, M_1_PIf, M_2_PIf, M_2_SQRTPIf, M_SQRT2f ΠΈ M_SQRT1_2f.
  • Π—Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ exp10 Π² заглавния Ρ„Π°ΠΉΠ» Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΈ макроси, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ са ΠΎΠ±Π²ΡŠΡ€Π·Π°Π½ΠΈ с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅.
  • IN Π΄ΠΎΠ±Π°Π²ΠΈ макроса _PRINTF_NAN_LEN_MAX, ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° стандарт ISO C2X.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са спСцификатори Π½Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ "%b" ΠΈ "%B" към фамилията Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ printf Π·Π° ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚Π²Π°Π½Π΅ Π½Π° Ρ†Π΅Π»ΠΈ числа Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎ прСдставянС.
  • БистСмата Π·Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ внСдрява Π½ΠΎΠ² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ Π·Π° сортиранС, DSO, ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΡŠΡ€Π²ΠΎ Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅ Π² Π΄ΡŠΠ»Π±ΠΎΡ‡ΠΈΠ½Π° (DFS) Π·Π° справянС с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с производитСлността с Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π½ΠΈ зависимости. Π—Π° Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌΠ° Π·Π° сортиранС Π½Π° DSO, сС ΠΏΡ€Π΅Π΄Π»Π°Π³Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ glibc.rtld.dynamic_sort, ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Π·Π°Π΄Π°Π΄Π΅Π½ Π½Π° β€ž1β€œ, Π·Π° Π΄Π° сС Π²ΡŠΡ€Π½Π΅Ρ‚Π΅ към стария Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ.
  • ABI Π΄ΠΎΠ±Π°Π²ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π½ΠΎΠ²Π° функция β€ž__memcmpeqβ€œ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ Π·Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° β€žmemcmpβ€œ, Π°ΠΊΠΎ стойността, Π²ΡŠΡ€Π½Π°Ρ‚Π° ΠΎΡ‚ Ρ‚Π°Π·ΠΈ функция, сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° само Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π·Π°Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° опСрация.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ рСгистриранС Π½Π° нишки с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° систСмното ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ rseq (послСдоватСлности Π·Π° рСстартиранС), прСдоставСно ΠΎΡ‚ ядрото Π½Π° Linux 4.18. БистСмното ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ rseq Π²ΠΈ позволява Π΄Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ Π½Π΅ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚ΠΎ изпълнСниС Π½Π° Π³Ρ€ΡƒΠΏΠ° инструкции, ΠΊΠΎΠ΅Ρ‚ΠΎ Π½Π΅ сС ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π° ΠΈ ΠΏΠΎΡ‚Π²ΡŠΡ€ΠΆΠ΄Π°Π²Π° Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚Π° ΠΎΡ‚ послСдната инструкция Π² Π³Ρ€ΡƒΠΏΠ°Ρ‚Π°. По ΡΡŠΡ‰Π΅ΡΡ‚Π²ΠΎ Ρ‚ΠΎΠΉ прСдоставя срСдство Π·Π° ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡŠΡ€Π·ΠΎ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎ изпълнСниС Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ, Π°ΠΊΠΎ Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚ΠΈ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° нишка, сС почистват ΠΈ сС ΠΎΠΏΠΈΡ‚Π²Π°Ρ‚ ΠΎΡ‚Π½ΠΎΠ²ΠΎ.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ символна Π²Ρ€ΡŠΠ·ΠΊΠ° /usr/bin/ld.so.
  • ΠžΡΠΈΠ³ΡƒΡ€Π΅Π½ΠΎ Π΅ сглобяванС ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π½Π° всички изпълними Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ ΠΈ тСстовия Π½Π°Π±ΠΎΡ€ Π² Ρ€Π΅ΠΆΠΈΠΌ PIE (ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ нСзависим изпълним Ρ„Π°ΠΉΠ»). Π—Π° Π΄Π° Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚Π΅ Ρ‚ΠΎΠ²Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, Π΅ прСдоставСна опцията β€ž--disable-default-pieβ€œ.
  • Π—Π° Linux Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° настройка glibc.malloc.hugetlb, Π·Π° Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° malloc Π΄Π° бъдС ΠΏΡ€Π΅Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ, Π·Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° систСмното ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ madvise с Ρ„Π»Π°Π³Π° MADV_HUGEPAGE Π·Π° mmap ΠΈ sbrk, ΠΈΠ»ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π³ΠΎΠ»Π΅ΠΌΠΈ страници с ΠΏΠ°ΠΌΠ΅Ρ‚, ΠΊΠ°Ρ‚ΠΎ посочи Ρ„Π»Π°Π³Π° MAP_HUGETLB Π² mmap обаТдания. Π’ ΠΏΡŠΡ€Π²ΠΈΡ случай ΠΌΠΎΠΆΠ΅ Π΄Π° сС постигнС повишаванС Π½Π° производитСлността, Π°ΠΊΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Transparent Huge Pages Π² Ρ€Π΅ΠΆΠΈΠΌ madvise, Π° във втория случай сС прСдоставя Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° систСмно Π·Π°ΠΏΠ°Π·Π΅Π½ΠΈ Π³ΠΎΠ»Π΅ΠΌΠΈ страници (Huge Pages).
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ функция _dl_find_object, която ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° добавянС Π½Π° информация Π·Π° Ρ€Π°Π·Π²ΡŠΡ€Ρ‚Π°Π½Π΅ Π½Π° стСка Π½Π° повикванията.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° OpenRISC (ΠΈΠ»ΠΈ 1k-linux-gnu) Π² Ρ€Π΅ΠΆΠΈΠΌ soft-float. ΠŸΠΎΡ€Ρ‚ΡŠΡ‚ изисква binutils 2.35, GCC 11 ΠΈ Linux ядро ​​5.4.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ Ρ„Π»Π°Π³ Π·Π° компилация β€ž--with-rtld-early-cflagsβ€œ, ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡƒΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Ρ„Π»Π°Π³ΠΎΠ²Π΅ Π·Π° компилация, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΏΡ€ΠΈ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΈΡ ΠΊΠΎΠ΄ Π·Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅.
  • Π—Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Linux Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° функцията epoll_pwait2, която сС Ρ€Π°Π·Π»ΠΈΡ‡Π°Π²Π° ΠΎΡ‚ epoll_wait, ΠΊΠ°Ρ‚ΠΎ Π·Π°Π΄Π°Π²Π° Π²Ρ€Π΅ΠΌΠ΅ Π·Π° ΠΈΠ·Ρ‡Π°ΠΊΠ²Π°Π½Π΅ с наносСкунда точност.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ функция posix_spawn_file_actions_addtcsetpgrp_np Π·Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅ Π½Π° условията Π½Π° ΡΡŠΡΡ‚Π΅Π·Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈ настройванС Π½Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Π½ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» Π·Π° Π½ΠΎΠ² процСс.
  • Π—Π° прилоТСния, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½ΠΈ с Glibc ΠΈ GCC 12+, Π΅ Π²Π½Π΅Π΄Ρ€Π΅Π½ Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ β€ž_FORTIFY_SOURCE=3β€œ, ΠΊΠΎΠΉΡ‚ΠΎ ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π° възмоТно ΠΏΡ€Π΅ΠΏΡŠΠ»Π²Π°Π½Π΅ Π½Π° Π±ΡƒΡ„Π΅Ρ€Π° ΠΏΡ€ΠΈ изпълнСниС Π½Π° Π½ΠΈΠ·ΠΎΠ²ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ Π² заглавния Ρ„Π°ΠΉΠ» string.h. Π Π°Π·Π»ΠΈΠΊΠ°Ρ‚Π° ΠΎΡ‚ Ρ€Π΅ΠΆΠΈΠΌΠ° β€œ_FORTIFY_SOURCE=2” сС свСТда Π΄ΠΎ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π°Ρ‚ Π΄ΠΎ Π½Π°ΠΌΠ°Π»Π΅Π½Π° производитСлност.
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π·Π° Intel MPX (Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ Π·Π° Π·Π°Ρ‰ΠΈΡ‚Π° Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°), ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π·Π° Π³Ρ€Π°Π½ΠΈΡ†ΠΈ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, Π΅ прСустановСна (Ρ‚Π°Π·ΠΈ тСхнология Π½Π΅ Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ разпространСна ΠΈ Π²Π΅Ρ‡Π΅ Π΅ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚Π° ΠΎΡ‚ GCC ΠΈ LLVM).
  • ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡŠΡ‚ Π·Π° ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ ΠΈ ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈΡ‚Π΅ с Π½Π΅Π³ΠΎ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ Π½Π° срСдата LD_TRACE_PRELINKING ΠΈ LD_USE_LOAD_BIAS са остарСли ΠΈ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ΠΈ Π² Π±ΡŠΠ΄Π΅Ρ‰ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅.

    ΠšΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Π½ΠΈ уязвимости:

    • CVE-2022-23218, CVE-2022-23219 – ΠŸΡ€Π΅ΠΏΡŠΠ»Π²Π°Π½Π΅ Π½Π° Π±ΡƒΡ„Π΅Ρ€ във Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ svcunix_create ΠΈ clnt_create, ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½ΠΎ ΠΎΡ‚ ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅ Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€Π° Π½Π° ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° Ρ„Π°ΠΉΠ»Π° Π² стСка Π±Π΅Π· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΊΠΎΠΏΠΈΡ€Π°Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ. Π—Π° прилоТСния, създадСни Π±Π΅Π· Π·Π°Ρ‰ΠΈΡ‚Π° Π½Π° стСка ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° β€žunixβ€œ, уязвимостта ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ изпълнСниС Π½Π° ΠΊΠΎΠ΄ Π½Π° Π°Ρ‚Π°ΠΊΡƒΠ²Π°Ρ‰ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ дълги ΠΈΠΌΠ΅Π½Π° Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅.
    • CVE-2021-3998 Π΅ уязвимост във функцията realpath() ΠΏΠΎΡ€Π°Π΄ΠΈ Π²Ρ€ΡŠΡ‰Π°Π½Π΅, ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ условия, Π½Π° Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»Π½Π° стойност, ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‰Π° нСпочистСни ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ стСка. Π—Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°Ρ‚Π° SUID-root fusermount уязвимостта ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° чувствитСлна информация ΠΎΡ‚ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° процСса, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° информация Π·Π° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.
    • CVE-2021-3999 - ΠŸΡ€Π΅ΠΏΡŠΠ»Π²Π°Π½Π΅ Π½Π° Π΅Π΄Π½ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ² Π±ΡƒΡ„Π΅Ρ€ във функцията getcwd(). ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½ ΠΎΡ‚ Π³Ρ€Π΅ΡˆΠΊΠ°, която ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π° ΠΎΡ‚ 1995 Π³. Π—Π° Π΄Π° ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°Ρ‚Π΅ ΠΏΡ€Π΅ΠΏΡŠΠ»Π²Π°Π½Π΅, просто ΠΈΠ·Π²ΠΈΠΊΠ°ΠΉΡ‚Π΅ chdir() Π² дирСкторията "/" Π² ΠΎΡ‚Π΄Π΅Π»Π½ΠΎ пространство ΠΎΡ‚ ΠΈΠΌΠ΅Π½Π° Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½Π΅.

    Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€