Rilis Pustaka Sistem Glibc 2.34

Sawise nem wulan pembangunan, perpustakaan sistem GNU C Library (glibc) 2.34 wis dirilis, sing tundhuk karo syarat standar ISO C11 lan POSIX.1-2017. Rilis anyar kalebu koreksi saka 66 pangembang.

Sawetara dandan sing ditindakake ing Glibc 2.34 kalebu:

  • Pustaka libpthread, libdl, libutil lan libanl digabungake ing struktur libc utama, panggunaan fungsionalitas ing aplikasi ora mbutuhake panyambungan maneh nggunakake gendera -lpthread, -ldl, -lutil lan -lanl. Preparasi wis digawe kanggo integrasi libresolv menyang libc. Integrasi bakal ngidini proses nganyari glibc sing luwih lancar lan bakal nyederhanakake implementasine runtime. Pustaka rintisan diwenehake kanggo nyedhiyakake kompatibilitas mundur karo aplikasi sing dibangun nganggo versi glibc sing luwih lawas. Amarga ekspansi jumlah struktur lan fungsi sing kasedhiya ing glibc, masalah bisa uga muncul ing aplikasi sing ana persimpangan jeneng karo perpustakaan sing sadurunge ora digunakake libpthread, libdl, libutil, libresolv lan libanl.
  • Nyedhiyakake kemampuan kanggo nggunakake jinis time_t 64-bit ing konfigurasi sing biasane nggunakake jinis time_t 32-bit. Ing konfigurasi kasebut, contone ing sistem x86, standar isih 32-bit time_t, nanging prilaku iki saiki bisa diganti nggunakake makro "_TIME_BITS". Fitur iki mung kasedhiya ing sistem sing paling ora nganggo kernel Linux versi 5.1.
  • Added fungsi _Fork, panggantos kanggo fungsi garpu sing meets syarat "async-sinyal-aman", i.e. ngidini telpon aman saka pawang sinyal. Sajrone eksekusi _Fork, lingkungan minimal digawe sing cukup kanggo nelpon fungsi ing panangan sinyal kayata raise lan execve tanpa nglibatake fitur sing bisa ngganti kunci utawa negara internal. Panggilan _Fork bakal ditetepake ing versi standar POSIX sing bakal teka, nanging saiki kalebu minangka ekstensi GNU.
  • Kanggo platform Linux, fungsi execveat wis dileksanakake, sing ngidini sampeyan mbukak file eksekusi saka deskriptor file sing mbukak. Fungsi anyar uga digunakake ing implementasine telpon fexecve, sing ora mbutuhake pseudo-FS / proc sing dipasang nalika wiwitan.
  • Nambahake fungsi timespec_getres, sing ditetepake ing konsep standar ISO C2X, sing ngluwihi fungsi timespec_get kanthi kemampuan sing padha karo fungsi clock_getres POSIX.
  • Nambahake fungsi close_range (), sing ngidini proses nutup kabeh deskriptor file mbukak bebarengan. Fungsi kasebut kasedhiya ing sistem kanthi kernel Linux paling ora versi 5.9.
  • Nambahake fungsi closefrom lan posix_spawn_file_actions_addclosefrom_np, ngidini sampeyan nutup kabeh deskriptor file bebarengan, sing jumlahe luwih gedhe tinimbang utawa padha karo nilai sing ditemtokake.
  • Ing mode "_DYNAMIC_STACK_SIZE_SOURCE" lan "_GNU_SOURCE", PTHREAD_STACK_MIN, MINSIGSTKSZ, lan SIGSTKSZ ora dadi konstanta maneh, ngidini dhukungan kanggo set registrasi ukuran dinamis kayata sing kasedhiya ing ekstensi ARM SVE.
  • Linker ngetrapake opsi "--list-diagnostics" kanggo nampilake informasi sing ana gandhengane karo operasi definisi IFUNC (fungsi ora langsung) lan pilihan subdirektori glibc-hwcaps.
  • Makro __STDC_WANT_IEC_60559_EXT__ wis dileksanakake, dirancang kanggo mriksa ananΓ© fungsi sing ditetepake ing Annex F saka spesifikasi ISO C2X.
  • Kanggo sistem powerpc64*, opsi "--disable-scv" wis dileksanakake, sing ngidini sampeyan mbangun glibc tanpa ndhukung instruksi scv.
  • Mung pesawat minimal modul gconv inti kiwa ing file gconv-modul, lan liyane dipindhah menyang file tambahan gconv-modules-extra.conf, dumunung ing direktori gconv-modules.d.
  • Kanggo platform Linux, parameter glibc.pthread.stack_cache_size dileksanakake, sing bisa digunakake kanggo ngatur ukuran cache tumpukan pthread.
  • Fungsi inet_neta saka file header wis ora digunakake , uga macem-macem fungsi arang digunakake saka (dn_count_labels, fp_nquery, fp_query, fp_resstat, hostalias, loc_aton, loc_ntoa, p_cdname, p_cdnname, p_class, p_fqname, p_fqnname, p_option, p_query, p_rcode, p_time, p_hostalit, name_server, putlong pitakon, res_queriesmatch, res_randomid, sym_ntop , sym_ntos, sym_ston) lan (ns_datetosecs, ns_format_ttl, ns_makecanon, ns_parse_ttl, ns_samedomain, ns_samename, ns_sprintrr, ns_sprintrrf, ns_subdomain). Tinimbang fungsi kasebut, disaranake nggunakake perpustakaan sing kapisah kanggo nggarap DNS.
  • Fungsi pthread_mutex_consistent_np, thread_mutexattr_getrobust_np, pthread_mutexattr_setrobust_np lan pthread_yield wis ora digunakake lan pthread_mutex_consistent, thread_mutexattr_getrobust, hread_mutexattr_sched_setrobust lan kudu digunakake.
  • Mungkasi nggunakake pranala simbolis kanggo ngiket obyek sing dienggo bareng sing diinstal menyang versi Glibc. Objek kasebut saiki wis diinstal (contone libc.so.6 saiki dadi file tinimbang link menyang libc-2.34.so).
  • Kanthi gawan, fitur debugging ing malloc dipateni, kayata MALLOC_CHECK_ (glibc.malloc.check), mtrace () lan mcheck (), sing dipindhah menyang perpustakaan kapisah libc_malloc_debug.so, ing ngendi fungsi malloc_get_state lan malloc_set_state uga wis ilang. wis dipindhah.
  • Ing Linux, fungsi kaya shm_open lan sem_open saiki mbutuhake piranti / dev / shm bisa digunakake.
  • Kerentanan tetep:
    • CVE-2021-27645: Proses nscd (nameserver caching daemon) nabrak amarga panggilan kaping pindho menyang fungsi gratis nalika ngolah panjaluk netgroup sing digawe khusus.
    • CVE-2021-33574: Akses menyang area memori sing wis dibebasake (nggunakake sawise-gratis) ing fungsi mq_notify nalika nggunakake jinis kabar SIGEV_THREAD kanthi atribut utas sing topeng afinitas CPU alternatif disetel. Masalah kasebut bisa nyebabake kacilakan, nanging opsi serangan liyane ora bisa ditolak.
    • CVE-2021-35942: Kebanjiran ukuran parameter ing fungsi wordexp bisa nyebabake aplikasi nabrak.

Source: opennet.ru

Add a comment