Π‘Π»Π΅Π΄ ΡΠ΅ΡΡ ΠΌΠ΅ΡΠ΅ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, Π±Π΅ΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½Π°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° GNU C Library 2.42 (glibc), ΠΊΠΎΡΡΠΎ ΠΈΠ·ΡΡΠ»ΠΎ ΠΎΡΠ³ΠΎΠ²Π°ΡΡ Π½Π° ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡΡΠ° Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠΈΡΠ΅ ISO C23 ΠΈ POSIX.1-2024. Π ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π½ΠΎΠ²ΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΠ°ΡΡΠ²Π°Ρ Π° 70 ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ.
Π‘ΡΠ΅Π΄ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈΡΠ΅ Π² Glibc 2.42 ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠ°Ρ:
- Π ΡΡΠ½ΠΊΡΠΈΡΡΠ° pthread_create Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π»Π΅ΠΊΠΈ ΡΡΠΎΡΠΎΠΆΠ΅Π²ΠΈ ΡΡΡΠ°Π½ΠΈΡΠΈ Π·Π° Π·Π°ΡΠΈΡΠ° Π½Π° ΡΡΠ΅ΠΊΠ° (stack guard page), Π΄ΠΎΡΡΡΠΏΡΡ Π΄ΠΎ ΠΊΠΎΠΈΡΠΎ ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ²Π° ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎ Π·Π°Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠ° (SIGSEGV). Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π°Π²Π° Π½Π° ΡΠ»Π°Π³Π° MADV_GUARD_INSTALL Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡ ΠΏΠΎΠ²ΠΈΠΊ madvise, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ ΠΎΡ ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux 6.13. Π ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π² ΡΠ΅ΠΆΠΈΠΌ PROT_NONE, ΡΡΠΎΡΠΎΠΆΠ΅Π²ΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΏΠΎ-Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ Π±Π»ΠΎΠΊΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠ΄Π° ΠΈΠ·Π²ΡΠ½ Π·Π°Π΄Π°Π΄Π΅Π½Π°ΡΠ° ΠΎΠ±Π»Π°ΡΡ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΡΡ Π½ΠΎΡΠΎ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π΅ ΠΈΠ·ΠΈΡΠΊΠ²Π° Π·Π°Π΄Π΅Π»ΡΠ½Π΅ Π½Π° Π½ΠΎΠ²Π° ΠΎΠ±Π»Π°ΡΡ ΠΎΡ Π²ΠΈΡΡΡΠ°Π»Π½Π°ΡΠ° ΠΏΠ°ΠΌΠ΅Ρ.
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΈ ΠΎΡΡΠ°Π·Π΅Π½ΠΈ Π² Π·Π°Π³Π»Π°Π²Π½ΠΈΡ ΡΠ°ΠΉΠ» math.h ΡΠ° Π½ΠΎΠ²ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π° ΠΏΠΎΠ²Π΄ΠΈΠ³Π°Π½Π΅ Π½Π° ΡΡΠ΅ΠΏΠ΅Π½ ΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ Π½Π° ΠΊΠΎΡΠ΅Π½ΠΈ compoundn, pown ΠΈ powr, rootn ΠΈ rsqrt, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ° ISO C23. ΠΠ°ΡΠΈΠ°Π½ΡΠΈΡΠ΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π·Π° ΡΠΈΠΏΠΎΠ²Π΅ΡΠ΅ float, double, long double, _FloatN ΠΈ _FloatNx, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π·Π° ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ ΡΠΈΠΏ ΠΎΡ tgmath.h.
- ΠΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Linux Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡΠ° pthread_gettid_np, ΠΊΠΎΡΡΠΎ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡΠ° gettid(), Π²ΡΡΡΠ° ΡΠ½ΠΈΠΊΠ°Π»Π΅Π½ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π° ΠΏΠΎΡΠΎΠΊΠ°, Π½ΠΎ ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ°Π²Π° Ρ ΡΠ°Π·ΡΠΈΡΠ΅Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π³ΡΠ΅ΡΠΊΠΈ (ΠΏΡΠΈ Π²ΡΠ·Π½ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ ΠΏΡΠΈΠΊΠ»ΡΡΠ²Π°).
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π° ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ Π½Π° Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ, ΡΠ°Π±ΠΎΡΠ΅ΡΠΈ Ρ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΈ ΡΠΈΠΏΠΎΠ²Π΅: uabs, ulabs, ullabs ΠΈ uimaxabs. Π’Π΅Π·ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ΅ Π±ΡΠ΄Π°Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ Π² Π±ΡΠ΄Π΅ΡΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡ C.
- ΠΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Linux Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ termios.h Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π½Π° ΡΠΊΠΎΡΠΎΡΡΡΠ° Π½Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅. Π’ΠΈΠΏΡΡ speed_t Π΅ ΠΏΡΠ΅Π½Π°ΠΏΠΈΡΠ°Π½ ΠΈ ΡΠ΅Π³Π° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π° Π½Π° ΡΠΈΠΏΠ° "unsigned int", ΠΊΠ°ΠΊΡΠΎ Π² ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux.
- Π Π»ΠΎΠΊΠ°Π»Π½ΠΈΡ Π·Π° ΠΏΠΎΡΠΎΠΊΠΎΠ²Π΅ΡΠ΅ ΠΊΠ΅Ρ (tcache), ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π² ΡΡΠ½ΠΊΡΠΈΡΡΠ° malloc, Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΏΠ°ΠΌΠ΅Ρ. ΠΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π½Π° Π±Π»ΠΎΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΠ΅Π½Π°ΠΏΠΈΡΠ°Π½ ΡΡΠ΅Π· Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° glibc.malloc.tcache_max, ΠΊΠΎΡΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠΈΠ΅ΠΌΠ° ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π΄ΠΎ 4194304. Π Π°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΠΊΠ΅ΡΠ° Π·Π° ΠΌΠ°Π»ΠΊΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΅ ΡΡΠΊΠΎΡΠ΅Π½Π°.
- Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΎΠΏΡΠΈΡ "--enable-sframe", ΠΊΠΎΡΡΠΎ Π°ΠΊΡΠΈΠ²ΠΈΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠΎΡΠΌΠ°ΡΠ° SFrame, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΡΠ°ΡΠΈΡΠΎΠ²ΠΊΠ°ΡΠ° Π½Π° ΡΡΠ΅ΠΊΠ° ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ ΠΎΡ ΡΡΠ½ΠΊΡΠΈΡΡΠ° backtrace. ΠΠ° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° SFrame Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° ΠΏΠΎΠ½Π΅ Π²Π΅ΡΡΠΈΡ binutils 2.45.
- ΠΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° CORE-MATH ΡΠ° ΠΏΡΠ΅Π½Π΅ΡΠ΅Π½ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠΈ Π½Π° ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ acospif, asinpif, atanpif, atan2pif, cospif, sinpif ΠΈ tanpif.
- Π’Π΅ΡΡΠΎΠ²ΠΈΡΡ Π½Π°Π±ΠΎΡ Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΡΠ°Π·ΡΠΈΡΠ΅Π½ ΠΈ Π²Π΅ΡΠ΅ ΠΎΠ±Ρ Π²Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠΈ Π½Π° ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΈ printf ΠΈ scanf.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ ΠΊΠΎΠ΄ Π·Π° ΡΠ°Π·ΠΏΠΎΠ·Π½Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈΡΠ΅ Intel, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΠΌΠΈΠΊΡΠΎΠ°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° Arrow Lake, Panther Lake, Clearwater Forest ΠΈ Diamond Rapids.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° z17 (Π½ΠΎΠ²ΠΎ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΉΠ½ΡΡΠ΅ΠΉΠΌΠΈ IBM Z/S390).
- Π Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° glibc.rtld.execstack Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ, Π·Π° Π΄Π° ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ, ΠΈΠ·ΠΈΡΠΊΠ²Π°ΡΠΈ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Ρ ΡΡΠ΅ΠΊ ΡΡΠ΅Π· Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΎ Π·Π°ΡΠ΅Π΄Π΅Π½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ.
- ΠΠ°Π³Π»Π°Π²Π½ΠΈΡΡ ΡΠ°ΠΉΠ» termio.h ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° termio ΡΠ° ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠΈ ΠΎΡ sys/ioctl.h. ΠΡΠΎΠ³ΡΠ°ΠΌΠ½ΠΈΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ termio.h Π΅ ΠΎΠ±ΡΠ²Π΅Π½ Π·Π° ΠΎΡΡΠ°ΡΡΠ» ΠΎΡΠ΅ Π² POSIX.1 (1988 Π³ΠΎΠ΄ΠΈΠ½Π°) ΠΈ Π΅ Π·Π°ΠΌΠ΅Π½Π΅Π½ Ρ termios.h.
- ΠΠ° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° Π½Π° Glibc ΡΠ΅Π³Π° ΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ ΠΏΠΎΠ½Π΅ Π²Π΅ΡΡΠΈΠΈ GCC 12.1 ΠΈ GNU Binutils 2.39.
- Π£ΡΡΡΠ°Π½Π΅Π½ΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ:
- CVE-2025-0395 β ΠΏΡΠ΅ΠΏΡΠ»Π²Π°Π½Π΅ Π½Π° Π±ΡΡΠ΅ΡΠ° ΠΏΡΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡΠ° assert(). ΠΡΠ΅ΠΏΡΠ»Π²Π°Π½Π΅ΡΠΎ Π½Π°ΡΡΡΠΏΠ²Π° ΠΏΡΠΈ Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠ΅ΠΊΠ°Π»Π΅Π½ΠΎ Π΄ΡΠ»Π³ΠΎ ΠΈΠΌΠ΅ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° (argv[0]). ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ ΡΠ΅ ΡΡΠΈΡΠ° Π·Π° Π½Π΅ΠΎΠΏΠ°ΡΠ΅Π½, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΈΠ·Π²ΡΠ½ Π³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ Π½Π° Π±ΡΡΠ΅ΡΠ° ΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π°Ρ 4 Π±Π°ΠΉΡΠ°, ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ° Π°ΡΠ°ΠΊΡΠ²Π°ΡΠΈΡΡ. ΠΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ Π΅ ΡΠ°ΠΌΠΈΡΡ ΡΠ°ΠΊΡ Π½Π° ΠΏΠΎΡΠ²Π°ΡΠ° Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡ Π² ΠΎΡΠ»Π°Π΄ΡΡΠ½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΏΡΠΎΠΈΠ·ΡΠΈΡΠ°ΡΠ° ΠΎΡ Π³ΡΠ΅ΡΠΊΠ° ΠΏΡΠΈ ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΡΠ΅ΠΊΡΡΠΎΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
- CVE-2025-5702, CVE-2025-5745 β ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ strcmp ΠΈ strncmp Π·Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈΡΠ΅ Power10, Π²ΠΎΠ΄Π΅ΡΠΈ Π΄ΠΎ ΡΡΠΈΠ² ΠΏΡΠΈ Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ ΠΈ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π²Π΅ΠΊΡΠΎΡΠ½ΠΈΡΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΈ v20-v31, ΠΊΠΎΠΈΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ Π·Π°ΠΏΠ°Π·Π²Π°Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½ΠΈΡΡΠ° Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° ΠΏΡΠ΅Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ ΠΈΠ»ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° Π΄Π°Π½Π½ΠΈΡΠ΅ Π² ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΎΡ Π΄ΡΡΠ³Π° ΡΡΠ½ΠΊΡΠΈΡ.
- CVE-2025-8058 β ΡΡΠ·Π²ΠΈΠΌΠΎΡΡ Π²ΡΠ² ΡΡΠ½ΠΊΡΠΈΡΡΠ° regcomp, Π²ΠΎΠ΄Π΅ΡΠ° Π΄ΠΎ Π΄Π²ΠΎΠΉΠ½ΠΎ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° (double-free).
ΠΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ ΠΈΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π½Π°Π±ΠΎΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΡΡΠΈΠ»ΠΈΡΠΈ GNU Binutils 2.45, Π² ΠΊΠΎΠΉΡΠΎ Π²Π»ΠΈΠ·Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΊΠ°ΡΠΎ GNU linker, GNU assembler, nm, objdump, strings, strip.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° Binutils:
- Π GNU assembler:
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈΡΠ΅ RISC-V, LoongArch ΠΈ AArch64. ΠΠ° x86 Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈΡΠ΅ XMODX, ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈΡΠ΅ Zhaoxin PadLock. ΠΠ° RISC-V Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈΡΠ΅ ssqosid v1.0, ssnpm v1.0, smnpm v1.0, smmpm v1.0, sspm v1.0, supm v1.0, sha v1.0, zce v1.0, smcdeleg v1.0, ssccfg v1.0, svvptc v1.0, zilsd v1.0, zclsd v1.0, smrnmi v1.0, xtheadvdot v1.0, xmipscbop v1.0, xmipscmov v1.0, xmipsexectl v1.0 ΠΈ xmipslsp v1.0.
- ΠΠ΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ Π² SFrame ΡΠΎΡΠΌΠ°Ρ Π΅ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎ ΡΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° SFrame V2. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΡΠ°ΡΠΈΡΠΎΠ²ΠΊΠ°ΡΠ° Π½Π° ΡΡΠ΅ΠΊΠ° (.sframe) ΠΎΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΈ CFI Π½Π° 64-Π±ΠΈΡΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ s390 (s390x).
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΈ .errif ΠΈ .warnif Π·Π° ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ½ΠΈ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ.
- Π ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠ° Π² ΠΎΠΏΡΠΈΡΡΠ° ββstatsβ Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π΅Π½ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ, ΡΡΠ΅Π· ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΠΊΠ°ΠΆΠ΅ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π° Π·Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΅ΡΡΡΡΠΈ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΅ΡΠ°ΠΏΠΈ ΠΎΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ΡΠΎ. ΠΠΌΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π·Π°Π΄Π°Π΄Π΅Π½ΠΎ ΠΈ ΡΡΠ΅Π· ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° LD_STATS. ΠΠ° ΡΠΈΡΡΠ΅ΠΌΠΈ RISC-V Π² ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠ° Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π½ΠΎΠ²ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈ PLT (Procedure Linkage Table).
- ΠΠ°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΡΠ° ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° SFrame ΡΠΎΡΠΌΠ°ΡΠ°. Π€ΡΠ½ΠΊΡΠΈΠΈΡΠ΅ Π·Π° ΡΠ°Π±ΠΎΡΠ° ΡΡΡ SFrame ΡΠ° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ΅Π½ΠΈ Π² Π²Π΅ΡΡΠΈΠΎΠ½ΠΈΡΠ°Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° libsframe.so.2.
- Π Π΄ΠΈΠ·Π°ΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΈ ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° readelf Π΅ ΡΠ°Π·ΡΠΈΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° RISC-V.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
