ΠΠ΅ΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡ (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