Π ΡΠ΄ΡΠ΅ Linux Π²ΡΡΠ²Π»Π΅Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ (CVE-2022-2590), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ Π½Π΅ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΎΡΡΠ°ΠΆΡΠ½Π½ΡΠ΅ Π² ΠΏΠ°ΠΌΡΡΡ ΡΠ°ΠΉΠ»Ρ (mmap) ΠΈ ΡΠ°ΠΉΠ»Ρ Π² tmpfs, Π½Π΅ ΠΈΠΌΠ΅Ρ ΠΏΡΠ°Π² Π½Π° Π·Π°ΠΏΠΈΡΡ Π² Π½ΠΈΡ , ΠΈ ΠΏΠΎΠ΄Π½ΡΡΡ ΡΠ²ΠΎΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅. ΠΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ ΡΠΈΠΏΡ Π²ΡΡΠ²Π»Π΅Π½Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ Dirty COW, Π½ΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΎΠ·Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΠΌ Π½Π° Π΄Π°Π½Π½ΡΠ΅ Π² ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ (shmem / tmpfs). ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΡΡ ΠΏΠ°ΠΌΡΡΡ.
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π²ΡΠ·Π²Π°Π½Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ Π³ΠΎΠ½ΠΊΠΈ Π² ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΡΡ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠ΅ΠΌ ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ (fault), Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ Π΄ΠΎΡΡΡΠΏΠ° Π½Π° Π·Π°ΠΏΠΈΡΡ ΠΊ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±Π»Π°ΡΡΡΠΌ Π² ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, ΠΎΡΡΠ°ΠΆΡΠ½Π½ΡΠΌ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ COW (copy-on-write mapping). ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΡΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΡΠ΄ΡΠ° 5.16 Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
Ρ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ x86-64 ΠΈ aarch64 ΠΏΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ ΡΠ΄ΡΠ° Ρ ΠΎΠΏΡΠΈΠ΅ΠΉ CONFIG_USERFAULTFD=y. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ ΡΡΡΡΠ°Π½Π΅Π½Π° Π² Π²ΡΠΏΡΡΠΊΠ΅ 5.19. ΠΡΠΈΠΌΠ΅Ρ ΡΠΊΡΠΏΠ»ΠΎΠΈΡΠ° ΠΏΠ»Π°Π½ΠΈΡΡΡΡ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ 15 Π°Π²Π³ΡΡΡΠ°.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru