ΠΡΡ Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½ΠΈ Π΄Π²Π΅ Π½ΠΎΠ²ΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π² ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° eBPF, ΠΊΠΎΡΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅ ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠΈ Π²ΡΡΡΠ΅ Π² ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux Π² ΡΠΏΠ΅ΡΠΈΠ°Π»Π½Π° Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π° Ρ JIT. Π Π΄Π²Π΅ΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠ°Π²ΡΡ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π²Π°ΡΠΈΡ ΠΊΠΎΠ΄ Ρ ΠΏΡΠ°Π²Π° Π½Π° ΡΠ΄ΡΠΎΡΠΎ, ΠΈΠ·Π²ΡΠ½ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½Π° eBPF Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π°. ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅ Π±Π΅ΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π° ΠΎΡ Π΅ΠΊΠΈΠΏΠ° Π½Π° Zero Day Initiative, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠΎΠ²Π΅ΠΆΠ΄Π° ΡΡΡΡΠ΅Π·Π°Π½ΠΈΠ΅ΡΠΎ Pwn2Own, ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΊΠΎΠ΅ΡΠΎ ΡΠ°Π·ΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° Π±ΡΡ Π° Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠ°Π½ΠΈ ΡΡΠΈ Π°ΡΠ°ΠΊΠΈ Π½Π° Ubuntu Linux, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΈ Π΄ΠΎΡΠ΅Π³Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ (Π½Π΅ ΡΠ΅ ΡΡΠΎΠ±ΡΠ°Π²Π° Π΄Π°Π»ΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈΡΠ΅ Π² eBPF ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΡΠ΅Π·ΠΈ Π°ΡΠ°ΠΊΠΈ) .
- CVE-2021-3490 β Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ° Π΅ ΠΏΡΠΈΡΠΈΠ½Π΅Π½Π° ΠΎΡ Π»ΠΈΠΏΡΠ° Π½Π° 32-Π±ΠΈΡΠΎΠ²Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΈΠ·Π²ΡΠ½ Π³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ ΠΏΡΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ±ΠΈΡΠΎΠ²ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π, ΠΠΠ ΠΈ XOR Π² eBPF ALU32. ΠΠ°ΠΏΠ°Π΄Π°ΡΠ΅Π»ΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π²ΡΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΎΡ ΡΠ°Π·ΠΈ Π³ΡΠ΅ΡΠΊΠ°, Π·Π° Π΄Π° ΡΠ΅ΡΠ΅ ΠΈ Π·Π°ΠΏΠΈΡΠ²Π° Π΄Π°Π½Π½ΠΈ ΠΈΠ·Π²ΡΠ½ Π³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π±ΡΡΠ΅Ρ. ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ XOR ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π° ΠΎΡ Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠ΄ΡΠΎΡΠΎ 5.7-rc1, Π° Π ΠΈ ΠΠΠ - ΠΎΡ 5.10-rc1.
- CVE-2021-3489 - Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ° Π΅ ΠΏΡΠΈΡΠΈΠ½Π΅Π½Π° ΠΎΡ Π³ΡΠ΅ΡΠΊΠ° ΠΏΡΠΈ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΡΡΡΠ΅Π½Π½ΠΈΡ Π±ΡΡΠ΅Ρ ΠΈ ΡΠ΅ Π΄ΡΠ»ΠΆΠΈ Π½Π° ΡΠ°ΠΊΡΠ°, ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡΡΠ° bpf_ringbuf_reserve Π½Π΅ Π΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΠ»Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° ΡΠ°Π·ΠΌΠ΅ΡΡΡ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π°ΡΠ° ΠΎΠ±Π»Π°ΡΡ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π΄Π° Π΅ ΠΏΠΎ-ΠΌΠ°Π»ΡΠΊ ΠΎΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ Π½Π° ΡΠΈΠ½Π³Π±ΡΡΠ°. ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π° ΠΎΡ Π²Π΅ΡΡΠΈΡ 5.8-rc1.
Π‘ΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΡΠ΅ΠΊΡΠΈΡ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π² Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΎΡΠ»Π΅Π΄ΠΈ Π½Π° ΡΠ΅Π·ΠΈ ΡΡΡΠ°Π½ΠΈΡΠΈ: Ubuntu, Debian, RHEL, Fedora, SUSE, Arch). ΠΠΎΠΏΡΠ°Π²ΠΊΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΈ ΠΊΠ°ΡΠΎ ΠΏΠ°ΡΠΎΠ²Π΅ (CVE-2021-3489, CVE-2021-3490). ΠΠ°Π»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π°Π²ΠΈΡΠΈ ΠΎΡ ΡΠΎΠ²Π° Π΄Π°Π»ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΡΠΎ ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° eBPF Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π·Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π² RHEL, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ° ΠΈΠ·ΠΈΡΠΊΠ²Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ Π΄Π° ΠΈΠΌΠ° CAP_SYS_ADMIN ΠΏΡΠ°Π²Π°.
ΠΡΠ΄Π΅Π»Π½ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈΠΌ Π΄ΡΡΠ³Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡ Π² ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux - CVE-2021-32606, ΠΊΠΎΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° Π»ΠΎΠΊΠ°Π»Π΅Π½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π΄Π° ΠΏΠΎΠ²ΠΈΡΠΈ ΡΠ²ΠΎΠΈΡΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π΄ΠΎ Π½ΠΈΠ²ΠΎ root. ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ Π΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π΅Π½ ΠΎΡ ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux 5.11 ΠΈ Π΅ ΠΏΡΠΈΡΠΈΠ½Π΅Π½ ΠΎΡ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ Π½Π° ΡΡΡΡΠ΅Π·Π°Π½ΠΈΠ΅ Π² ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° CAN ISOTP, ΠΊΠΎΠ΅ΡΠΎ ΠΏΡΠ°Π²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΌΡΠ½Π°ΡΠ° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΡΠΎΠΊΠ΅ΡΠ° ΠΏΠΎΡΠ°Π΄ΠΈ Π»ΠΈΠΏΡΠ°ΡΠ° Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈΡΠ΅ Π·Π°ΠΊΠ»ΡΡΠ²Π°Π½ΠΈΡ Π²ΡΠ² ΡΡΠ½ΠΊΡΠΈΡΡΠ° isotp_setsockopt(). ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΠ»Π°Π³Π° CAN_ISOTP_SF_BROADCAST.
Π‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ ISOTP ΡΠΎΠΊΠ΅ΡΡΡ Π΅ Π·Π°ΡΠ²ΠΎΡΠ΅Π½, ΠΎΠ±Π²ΡΡΠ·Π²Π°Π½Π΅ΡΠΎ ΠΊΡΠΌ ΡΠΎΠΊΠ΅ΡΠ° Π½Π° ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΠΎΡΡΠ°Π²Π° Π² ΡΠΈΠ»Π°, ΠΊΠΎΠ΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΡΡΡΠΊΡΡΡΠΈΡΠ΅, ΡΠ²ΡΡΠ·Π°Π½ΠΈ ΡΡΡ ΡΠΎΠΊΠ΅ΡΠ°, ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΡΠ²ΡΡΠ·Π°Π½Π° Ρ ΡΡΡ
, Π±ΡΠ΄Π΅ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄Π΅Π½Π° (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ ΡΠ»Π΅Π΄ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π²Π°Π½Π΅ ΠΏΠΎΡΠ°Π΄ΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° isotp_sock ΡΡΡΡΠΊΡΡΡΠ° ΠΊΠΎΠΉΡΠΎ Π²Π΅ΡΠ΅ Π΅ Π±ΠΈΠ» ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄Π΅Π½ ΠΏΡΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° isotp_rcv(). Π§ΡΠ΅Π· ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΊΡΠΌ ΡΡΠ½ΠΊΡΠΈΡΡΠ° sk_error_report() ΠΈ Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄Π° ΡΠΈ Π½Π° Π½ΠΈΠ²ΠΎ ΡΠ΄ΡΠΎ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru