Lẹhin oṣu mẹfa ti idagbasoke, ile-ikawe eto GNU C (glibc) 2.39 ti tu silẹ, eyiti o ni ibamu ni kikun pẹlu awọn ibeere ti ISO C11 ati awọn ajohunše POSIX.1-2017. Itusilẹ tuntun pẹlu awọn atunṣe lati ọdọ awọn idagbasoke 67.
Diẹ ninu awọn ilọsiwaju ti a ṣe ni Glibc 2.39 pẹlu:
- A ti pese atilẹyin fun akopọ ojiji ti a ṣe sinu ekuro naa. Linux 6.6, èyí tí ó ń dí ọ̀pọ̀lọpọ̀ ìlò agbára nípa lílo agbára ẹ̀rọ ti àwọn olùṣiṣẹ́ Intel láti dáàbò bo lòdì sí kíkọ àdírẹ́sì ìpadàbọ̀ kúrò nínú iṣẹ́ kan nígbà tí ìṣàkójọ ìdàpọ̀ bá kún. Ààbò yìí ń ṣiṣẹ́ nípa títọ́jú àwọn àdírẹ́sì ìpadàbọ̀ kìí ṣe lórí àkójọ déédéé nìkan ṣùgbọ́n lórí àkójọ "òjìji" mìíràn, èyí tí a kò le ṣe àtúnṣe tààrà, lẹ́yìn tí a bá ti gbé ìṣàkóso sí iṣẹ́ kan. Kí a tó jáde kúrò nínú iṣẹ́ náà, a máa yọ àdírẹ́sì ìpadàbọ̀ láti inú àkójọ òjìji náà a sì fiwé àdírẹ́sì ìpadàbọ̀ láti inú àkójọ àkọ́kọ́. Àìbáramu nínú àwọn àdírẹ́sì náà ń mú ìyọkúrò wá, èyí tí ó ń dí àwọn ipò lọ́wọ́ níbi tí ìlòkulò kan ti ṣe àṣeyọrí láti kọ àdírẹ́sì kan lórí àkójọ àkọ́kọ́. A ti fi àṣàyàn ìkọ́lé "--enable-cet" kún láti mú kí ààbò yìí ṣeé ṣe.
- Fikun faili akọsori tuntun , ti a ṣe alaye ninu apẹrẹ ISO C2X boṣewa ati pẹlu awọn iṣẹ stdc_leading_zeros, stdc_leading_ones, stdc_trailing_zeros, stdc_trailing_ones, stdc_first_leading_zero, stdc_first_first_first_first_first_first_firdc stdc_count_zeros, stdc_count_ones, s_single_bit, stdc_bit_width, stdc_bit_floor ati stdc_bit_ceil ni awọn iyatọ pẹlu awọn oriṣi “char ti ko fowo si”, “ti ko fowo si kukuru” , “int ti a ko fowo si”, “aimọ int gigun gigun” ati “aimọ int gigun gigun”.
- Fun Syeed Linux A ti ṣe àgbékalẹ̀ àwọn iṣẹ́ posix_spawnattr_getcgroup_np àti posix_spawnattr_setcgroup_np, àti àsíá POSIX_SPAWN_SETCGROUP. Àwọn wọ̀nyí gba láàyè láti ṣètò cgroupv2 nínú ìlànà tuntun nípa lílo àwọn iṣẹ́ posix_spawn àti posix_spawnp, èyí tí ó mú kí àwọn ipò ìdíje kúrò. Àwọn iṣẹ́ wọ̀nyí jẹ́ àwọn ìfàsẹ́yìn GNU wọ́n sì nílò kí kernel ṣiṣẹ́. Linux pẹ̀lú ìrànlọ́wọ́ ìpè ètò clone3.
- Fun Syeed Linux A ti ṣe àgbékalẹ̀ àwọn iṣẹ́ pidfd_spawn àti pidfd_spawp, èyí tí ó jọra ní ìtumọ̀ sí iṣẹ́ posix_spawn, ṣùgbọ́n kìí ṣe ìdámọ̀ ilana (PID) ló dá padà, ṣùgbọ́n àpèjúwe fáìlì fún lílò nínú àwọn iṣẹ́ tí ó ṣe àtìlẹ́yìn fún ètò PIDFD, bíi pidfd_send_signal, poll, àti waitid (PIDFD kan ní í ṣe pẹ̀lú ìlànà pàtó kan kò sì yípadà, nígbà tí PID kan lè ní í ṣe pẹ̀lú ìlànà mìíràn lẹ́yìn tí ìlànà lọ́wọ́lọ́wọ́ tí ó ní í ṣe pẹ̀lú PID yìí bá ti parí).
- Fun Syeed Linux A fi iṣẹ́ pidfd_getpid kún un láti mọ ìdámọ̀ ilana (PID) tí ó da lórí àpèjúwe faili ilana (PIDFD) tí àwọn iṣẹ́ pid_spawn, fork_np àti pidfd_open dá padà.
- Atunṣe iwọn "wN" ti jẹ afikun si awọn iṣẹ ẹbi scanf, ti a lo fun awọn ariyanjiyan ti awọn oriṣi intN_t, int_leastN_t, uintN_t ati uint_leastN_t. Fun apẹẹrẹ, lati ka awọn iye eleemewa pẹlu awọn oriṣi int32_t ati int_least32_t, o le pato “% w32d”, ati pe awọn iye hexadecimal le jẹ asọye bi “% w32x”. Bakanna, oluyipada “wfN” ti ni afikun si int_fastN_t ati awọn oriṣi uint_fastN_t ti a ṣe afihan ni boṣewa ISO C2X apẹrẹ.
- Ṣe afikun eto “glibc.cpu.plt_rewrite”, eyiti o jẹ ki a atunkọ PLT (Table Linkage Table) lori awọn ọna ṣiṣe x86-64, ninu eyiti ọna asopọ yoo rọpo awọn ẹka aiṣe-taara ni PLT pẹlu awọn taara taara.
- Ṣe afikun eto “glibc.mem.decorate_maps” lati ṣafikun afikun alaye ipin iranti iranti (gẹgẹbi akopọ okun ti a ṣẹda nipasẹ pthread_create tabi iranti ti a pin nipasẹ malloc).
- Ìṣètò "statvfs" ti kún pápá "f_type" pẹ̀lú ìwífún nípa irú ètò fáìlì, tó dọ́gba pẹ̀lú àkóónú pápá nínú ìṣètò "statfs". Tẹ́lẹ̀tẹ́lẹ̀, Linux Pápá "f_type" náà ní 0 nígbà gbogbo.
- Fun iru ẹrọ AArch64, awọn alaye ti ni afikun si libmvec ati math.h ti o gba laaye, nigbati o ba n ṣalaye aṣayan “-fast-math” nigba kikọ, lati lo vectoring ipe nigba kikọ ni GCC 9 ati awọn ẹya tuntun ti alakojo. Vectorization ṣiṣẹ fun awọn iṣẹ mathematiki acos, acosf, asin, asinf, atan, atanf, atan2, atan2f, cos, cosf, exp, expf, exp10, exp10f, exp2, exp2f, expm1, expm1f, log, logf, log10, log10f. log1p , log1pf, log2, log2f, ese, sinf, tan ati tanf.
- Ile-ikawe libcrypt ati faili akọsori ti o somọ ti yọkuro kuro ninu package naa " " Awọn olupilẹṣẹ ohun elo ni iwuri lati yipada si awọn ile-ikawe omiiran bii libxcrypt.
- IwUlO ldconfig ni bayi fo awọn faili pẹlu iwa ';'. ninu orukọ faili tabi ipari pẹlu “.dpkg.tmp” ati “.dpkg.new”, eyiti o fun ọ laaye lati yago fun sisẹ awọn faili igba diẹ ti rpm ati awọn oluṣakoso package dpkg.
- Atilẹyin fun faaji ia64 (ia64*-*-linux-gnu), ti a lo ninu awọn olutọsọna Intel Itanium, ti dawọ duro.
- Awọn ailagbara ti o wa titi:
- CVE-2023-6246, CVE-2023-6779, CVE-2023-6780 jẹ awọn ailagbara pataki ni iṣẹ __vsyslog_internal () eyiti o gba laaye laaye lati ṣiṣẹ koodu pẹlu awọn anfani ti o ga nipasẹ awọn ifọwọyi pẹlu ifilọlẹ awọn ohun elo SUID.
- CVE-2023-4911 jẹ ailagbara ni Glibc ld.so ti o fun ọ laaye lati jèrè awọn anfani gbongbo lori eto naa. Ailagbara naa jẹ nitori aṣiṣe kan ninu koodu fifisilẹ okun ti a sọ pato ninu oniyipada ayika GLIBC_TUNABLES, eyiti o le ja si pe iye ti a ti kọ silẹ ni kikọ kuro ni awọn aala ninu ifipamọ ti a sọtọ. Nibẹ ni o wa ṣiṣẹ exploits.
- CVE-2023-4806 jẹ ailagbara-lẹhin-ọfẹ ni iṣẹ getaddrinfo. Iṣoro naa nwaye nigbati ohun itanna NSS nikan ṣe imuse awọn “_gethostbyname2_r” ati “_getcanonname_r” awọn ipe-pada, ṣugbọn ko ṣe atilẹyin ipe “_gethostbyname3_r”. Lati lo ailagbara naa, olupin DNS gbọdọ da nọmba nla ti IPv6 ati adirẹsi IPv4 pada fun agbalejo ti o beere, eyiti yoo yorisi jamba ilana ti o pe iṣẹ getaddrinfo fun idile AF_INET6 nigbati AI_CANONNAME, AI_ALL ati AI_V4MAPPED awọn asia jẹ ṣeto.
- CVE-2023-4527 jẹ ailagbara ninu iṣẹ getaddrinfo ti o gba data laaye lati ka lati agbegbe ti o wa ni ita aala ifipamọ nigba ṣiṣe idahun DNS ti o gba lori TCP ti o tobi ju awọn baiti 2048 lọ. Ailagbara naa waye nigba lilo aṣayan "no-aaaa" ni /etc/resolv.conf.
Ni afikun, a le ṣe akiyesi itusilẹ ti ṣeto awọn ohun elo eto GNU Binutils 2.42, eyiti o pẹlu awọn eto bii GNU linker, GNU assembler, nm, objdump, strings, rinhoho.
Ninu ẹya tuntun ti Binutils:
- Aṣayan idanwo kan "--scfi=esiperimenta" ni a ti ṣafikun si apejọ (gas) fun awọn ọna ṣiṣe x86-64 lati ṣajọpọ CFI (Iṣakoso Flow Integrity) awọn itumọ fun koodu apejọ ti a kọ ni ọwọ ti o baamu si Eto V AMD64 ABI.
- Ṣe afikun aṣayan "--extra-sym-info" lati ṣe afihan alaye ti o gbooro nipa awọn aami ("-awọn aami"), gẹgẹbi orukọ apakan ti itọkasi nipasẹ atọka st_shndx.
- IwUlO objcopy n pese agbara lati lo aṣayan “--set-section-flags” pẹlu iye “nla” lati ṣeto apakan asia SHF_X86_64_LARGE fun awọn nkan ELF lori awọn ọna ṣiṣe x86-64. Aṣayan “-visualize-jumps” n ṣe atilẹyin fun faaji s390.
- Nigbati awọn ilana s390 disassembling, agbara lati ṣafihan awọn asọye ni apejuwe awọn ilana ti ni imuse. Lati mu awọn apejuwe ṣiṣẹ, o le pato aṣayan “-M insndesc” ni objdump, ati aṣayan “ṣeto disassembler-options insndesc” ni gdb.
- Ṣafikun awọn aṣayan "-z mark-plt" ati "-z nomark-plt" si ọna asopọ lati samisi awọn titẹ sii inu tabili PLT nipa lilo awọn aami DT_X86_64_PLT, DT_X86_64_PLTSZ ati DT_X86_64_PLTENT.
- Atilẹyin ti a ṣafikun fun yiyan yiyipada si ọna asopọ.
- Ṣe afikun "--warn-execstack-objects", "--error-execstack" ati "--error-rxw-segments" awọn aṣayan lati ṣejade awọn ikilo tabi awọn aṣiṣe nigba lilo lori awọn nkan akopọ ti o le ṣe.
- Atilẹyin fun ABI 2.30 ti faaji LoongArch ti ni imuse, ati atilẹyin fun awọn ilana tuntun ti a ṣalaye ni sipesifikesonu LoongArch 1.10.
- Atilẹyin ti a ṣafikun fun eto ilana KVX ti a lo ninu awọn ilana Kalray (fun apẹẹrẹ, ti a lo ninu SoC Coolidge).
- Fun awọn eto ti o da lori faaji Intel, atilẹyin fun awọn amugbooro ti ṣafikun:
- Intel APX: 32 GPR, NDD, PUSH2/POP2, PUSHP/POPP.
- USER_MSR.
- AVX10.1.
- PBNKB.
- SM4.
- SM3.
- SHA512.
- AVX-VNNI-INT16.
- Atilẹyin fun awọn amugbooro ti ṣafikun si ibudo faaji RISC-V:
- T-Head (XTheadVector, XTheadZvlsseg ati XTheadZvamo).
- CORE-V (XCVmac, XCValu).
- SiFive VCIX (XSfVcp).
- Atilẹyin fun awọn amugbooro ti ṣafikun si ibudo fun faaji AArch64:
- SVE2.1 (Scalable Vector Itẹsiwaju 2.1).
- SME2.1 (Scalable Matrix Itẹsiwaju 2.1).
- B16B16 (BFloat16 ati BFloat16 fun SVE2 ati SME2).
- RASv2 (Igbẹkẹle, Wiwa ati Iṣẹ-iṣẹ v2).
- LSE128 (128-bit Atomic).
- GCS (Ṣíṣọ Iṣakoso Stac).
- CHK (Ṣayẹwo Ipo Ẹya).
- SPECRES2 (Ihamọ Ifojusi Imudara).
- LRCPC3 (Fifuye-Gba RCpc).
- THE (Translation Hardening).
- ITE (Itọpa Ilana).
- D128 (128-bit iranti iwe awọn apejuwe tabili).
- XS (ẹya iranti XS).
- Atilẹyin ti a ṣafikun fun AArch64 Cortex-A520, Cortex-A720, Cortex-X3 ati Cortex-X4 to nse.
- Fun ibaramu pẹlu apejọ clang/LLVM, apejọ BPF ti ṣafikun atilẹyin fun yiya awọn asọye pẹlu awọn aami “#” ati “//”, bakannaa lilo aami naa “; lati ya awọn ikosile laarin ila kan (";" ko le ṣee lo fun awọn asọye).
orisun: opennet.ru
