Уязвимост Π² подсистСмата netfilter, която позволява изпълнСниС Π½Π° ΠΊΠΎΠ΄ Π½Π° Π½ΠΈΠ²ΠΎ ядро ​​на Linux

Π‘Π΅ΡˆΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π° уязвимост (CVE-2022-25636) Π² Netfilter, подсистСма Π½Π° ядрото Π½Π° Linux, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° Ρ„ΠΈΠ»Ρ‚Ρ€ΠΈΡ€Π°Π½Π΅ ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ, която ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ изпълнСниС Π½Π° ΠΊΠΎΠ΄ Π½Π° Π½ΠΈΠ²ΠΎ ядро. Π‘Π΅ΡˆΠ΅ обявСн ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° Сксплойт, ΠΊΠΎΠΉΡ‚ΠΎ позволява Π½Π° Π»ΠΎΠΊΠ°Π»Π΅Π½ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» Π΄Π° повиши ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈΡ‚Π΅ си Π² Ubuntu 21.10 с Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ KASLR. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ сС проявява, Π·Π°ΠΏΠΎΡ‡Π²Π°ΠΉΠΊΠΈ с ядрото 5.4. ΠšΠΎΡ€Π΅ΠΊΡ†ΠΈΡΡ‚Π° всС ΠΎΡ‰Π΅ Π΅ Π½Π°Π»ΠΈΡ‡Π½Π° ΠΊΠ°Ρ‚ΠΎ ΠΊΡ€ΡŠΠΏΠΊΠ° (Π½Π΅ са Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°Π½ΠΈ ΠΊΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Ρ‰ΠΈ вСрсии Π½Π° ядрото). ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° слСдитС ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ Π² дистрибуции Π½Π° Ρ‚Π΅Π·ΠΈ страници: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux.

Уязвимостта Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½Π° ΠΎΡ‚ Π³Ρ€Π΅ΡˆΠΊΠ° ΠΏΡ€ΠΈ изчисляванС Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° масива flow->rule->action.entries във функцията nft_fwd_dup_netdev_offload (Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½Π° във Ρ„Π°ΠΉΠ»Π° net/netfilter/nf_dup_netdev.c), ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π°Π½ΠΈ ΠΎΡ‚ атакуващия Π΄Π°Π½Π½ΠΈ записан Π² област Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° извън Π³Ρ€Π°Π½ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° разпрСдСлСния Π±ΡƒΡ„Π΅Ρ€. Π“Ρ€Π΅ΡˆΠΊΠ°Ρ‚Π° сС проявява ΠΏΡ€ΠΈ Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ‚Π° "dup" ΠΈ "fwd" във Π²Π΅Ρ€ΠΈΠ³ΠΈ, Π·Π° ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΎ ускорСниС Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ (offload). Въй ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€Π΅ΠΏΡŠΠ»Π²Π°Π½Π΅Ρ‚ΠΎ възниква ΠΏΡ€Π΅Π΄ΠΈ ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΡ‚ΠΎ Π·Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π΅Π½ Ρ„ΠΈΠ»Ρ‚ΡŠΡ€ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Ρ€Π°Π·Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, уязвимостта Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΠΌΠ° ΠΈ към ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ устройства, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΎ ускорСниС, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ интСрфСйс Π·Π° ΠΎΠ±Ρ€Π°Ρ‚Π½Π° Π²Ρ€ΡŠΠ·ΠΊΠ°.

ΠžΡ‚Π±Π΅Π»ΡΠ·Π²Π° сС, Ρ‡Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ Π΅ доста лСсСн Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ стойноститС, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π°Π΄Ρ…Π²ΡŠΡ€Π»ΡΡ‚ Π±ΡƒΡ„Π΅Ρ€Π°, ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΏΡ€Π΅Π·Π°ΠΏΠΈΡˆΠ°Ρ‚ указатСля към структурата net_device ΠΈ Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π·Π° прСзаписаната стойност сС Π²Ρ€ΡŠΡ‰Π°Ρ‚ Π² потрСбитСлското пространство, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈ възмоТно Π΄Π° сС ΠΎΡ‚ΠΊΡ€ΠΈΠ΅ адрСси Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ Π·Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° Π°Ρ‚Π°ΠΊΠ°Ρ‚Π°. Експлоатацията Π½Π° уязвимостта изисква ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π² nftables, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ възмоТно само с ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ CAP_NET_ADMIN, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈ ΠΎΡ‚ Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» Π² ΠΎΡ‚Π΄Π΅Π»Π½ΠΎ ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΎ пространство ΠΎΡ‚ ΠΈΠΌΠ΅Π½Π° (ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ пространства ΠΎΡ‚ ΠΈΠΌΠ΅Π½Π°). Уязвимостта ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈ Π·Π° Π°Ρ‚Π°ΠΊΠ° Π½Π° систСми Π·Π° изолация Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ.

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

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