Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π² libnv Π²ΠΎ FreeBSD ΠΈ уязвимости Π² Netfilter Π² Linux

Π’ Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠΌ Π² Π½Π°Ρ‡Π°Π»Π΅ сСнтября исправлСнии уязвимости Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ libnv выявлСна логичСская ошибка, ΠΈΠ·-Π·Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π½Π΅ ΡƒΡΡ‚Ρ€Π°Π½ΡΠ»Π°ΡΡŒ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΈ систСма ΠΎΡΡ‚Π°Π²Π°Π»Π°ΡΡŒ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½Π° Π°Ρ‚Π°ΠΊΠ΅. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° libnv развиваСтся ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ FreeBSD ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ядрС ΠΈ Π² прилоТСниях ΠΈΠ· Π±Π°Π·ΠΎΠ²ΠΎΠΉ систСмы для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ списков Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ΠΊΠ»ΡŽΡ‡/Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ мСТпроцСссном взаимодСйствии. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° основана Π½Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ nvlist, примСняСмом Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ OpenZFS, Π½ΠΎ Π²ΠΎ FreeBSD создана собствСнная рСализация, поэтому ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π½Π΅ Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°Π΅Ρ‚ OpenZFS.

Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Π° цСлочислСнным ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ, приводящим ΠΊ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΡŽ Π±ΡƒΡ„Π΅Ρ€Π°, Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ мСньшС, Ρ‡Π΅ΠΌ записываСмый Π² Π±ΡƒΡ„Π΅Ρ€ Π±Π»ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ…. ДопущСнная ошибка ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ своих ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ ΠΏΡƒΡ‚Π΅ΠΌ пСрСзаписи областСй памяти Π² ядрС ΠΈ систСмных процСссах, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, libnv примСняСтся Π² libcasper ΠΏΡ€ΠΈ взаимодСйствии ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΈ Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ΅ исправлСниС уязвимости (CVE-2024-45287) ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π² обновлСниях 14.1-RELEASE-p5, 14.0-RELEASE-p11, 13.4-RELEASE-p1 ΠΈ 13.3-RELEASE-p7, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² Ρ„ΠΎΡ€ΠΌΠ΅ ΠΏΠ°Ρ‚Ρ‡Π°.

Π’ΠΎ FreeBSD Ρ‚Π°ΠΊΠΆΠ΅ устранСна ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ (CVE-2024-41721) Π² Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π΅ bhyve, ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ выполнСния ΠΊΠΎΠ΄Π° Π² процСссС, выполняСмом Π½Π° сторонС хост-систСмы (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ с ΠΏΡ€Π°Π²Π°ΠΌΠΈ root, Π½ΠΎ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½ sandbox-ΠΎΠΌ Π½Π° Π±Π°Π·Π΅ Capsicum), ΠΏΡ€ΠΈ манипуляциях Π²Π½ΡƒΡ‚Ρ€ΠΈ гостСвой систСмы. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ присутствуСт Π² ΠΊΠΎΠ΄Π΅ для эмуляции USB-ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° XHCI ΠΈ Π²Ρ‹Π·Π²Π°Π½Π° нСдостаточной ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ Π³Ρ€Π°Π½ΠΈΡ† Π±ΡƒΡ„Π΅Ρ€Π°, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‡Ρ‚Π΅Π½ΠΈΡŽ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· области Π²Π½Π΅ Π±ΡƒΡ„Π΅Ρ€Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΊ возмоТности записи Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ памяти процСсса. Атака ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π° ΠΏΡ€ΠΈ возмоТности запуска ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… процСссов Π² гостСвой систСмС. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ устранСна Π² обновлСниях FreeBSD 14.1-RELEASE-p5, 14.0-RELEASE-p11, 13.4-RELEASE-p1 ΠΈ 13.3-RELEASE-p7.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠΎΠ² эксплоитов ΠΈ описаний ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² эксплуатации для выявлСнных Ρ€Π°Π½Π΅Π΅ уязвимостСй Π² ядрС Linux CVE-2024-26808 ΠΈ CVE-2024-1085. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ устранСны Π² обновлСниях ядра 5.10.210, 5.15.149, 6.1.76, 6.6.15, 6.7.3 ΠΈ 6.8, ΠΈ ΡƒΠΆΠ΅ исправлСны Π² основных дистрибутивах (Debian, Ubuntu, RHEL, SUSE, Fedora). Уязвимости Π²Ρ‹Π·Π²Π°Π½Ρ‹ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΊ ΡƒΠΆΠ΅ освобоТдённой области памяти Π² функциях nft_chain_filter ΠΈ nft_setelem_catchall_deactivate Π² подсистСмС netfilter ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ выполнСния ΠΊΠΎΠ΄Π° с ΠΏΡ€Π°Π²Π°ΠΌΠΈ root. Для провСдСния Π°Ρ‚Π°ΠΊΠΈ трСбуСтся Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ доступа ΠΊ nftables, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ ΠΏΡ€Π°Π² CAP_NET_ADMIN Π² любом пространствС ΠΈΠΌΡ‘Π½ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ (user namespace) ΠΈΠ»ΠΈ сСтСвом пространствС ΠΈΠΌΡ‘Π½ (network namespace), прСдоставляСмых, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ….

Эксплоиты ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Ρ‹ участниками ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Ρ‹ KernelCTF (Kernel Capture the Flag), Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ компания Google Π²Ρ‹ΠΏΠ»Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ вознаграТдСния Π·Π° выявлСниС уязвимостСй Π² ядрС Linux. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Π»ΠΈΡΡŒ ΠΊΠ°ΠΊ ΠΎΠ΄Π½ΠΈ ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΡ€ΠΎΡ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… уязвимостСй Π² ядрС — Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² июньском ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π° с ядром 5.10 Π² Debian ΠΏΠΎΠΌΠΈΠΌΠΎ CVE-2024-26808 Π±Ρ‹Π»ΠΎ исправлСно Π΅Ρ‰Ρ‘ 345 (!) ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… уязвимостСй. Π•ΠΆΠ΅Π½Π΅Π΄Π΅Π»ΡŒΠ½ΠΎ Π² ядрС выявляСтся нСсколько дСсятков Π½ΠΎΠ²Ρ‹Ρ… уязвимостСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π½Π΅Π΅ Π½Π΅ Π±Ρ‹Π»ΠΈ отоТдСствлСны с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ с Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΉ Π½Π΅Π΄Π΅Π»Π΅ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ΠΎ 68 уязвимостСй).

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