Π Π°ΡΠΊΡΡΡΡ Π΄Π΅ΡΠ°Π»ΠΈ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ (CVE-2019-14378) Π² ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ΅ SLIRP, ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠΌ Π² QEMU Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠ°Π½Π°Π»Π° ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌ ΡΠ΅ΡΠ΅Π²ΡΠΌ Π°Π΄Π°ΠΏΡΠ΅ΡΠΎΠΌ Π² Π³ΠΎΡΡΠ΅Π²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΈ ΡΠ΅ΡΠ΅Π²ΡΠΌ Π±ΡΠΊΠ΅Π½Π΄ΠΎΠΌ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ QEMU. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ°ΠΊΠΆΠ΅ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Π΅Ρ ΡΠΈΡΡΠ΅ΠΌΡ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π° Π±Π°Π·Π΅ KVM (Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Usermode) ΠΈ Virtualbox, Π² ΠΊΠΎΡΠΎΡΡΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π±ΡΠΊΠ΅Π½Π΄ slirp ΠΈΠ· QEMU, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΠΈΠ΅ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΡΡΠ΅ΠΊ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ libSLIRP (ΡΠΌΡΠ»ΡΡΠΎΡ TCP/IP).
Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΠ±ΠΈΡΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ Ρ
ΠΎΡΡ-ΡΠΈΡΡΠ΅ΠΌΡ Ρ ΠΏΡΠ°Π²Π°ΠΌΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ°-ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° QEMU ΠΏΡΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ Π³ΠΎΡΡΠ΅Π²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΎΡΠ΅Π½Ρ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΠ·-Π·Π° ΠΎΡΠΈΠ±ΠΊΠΈ Π² ΡΡΠ½ΠΊΡΠΈΠΈ ip_reass(), Π²ΡΠ·ΡΠ²Π°Π΅ΠΌΠΎΠΉ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΡΠ±ΠΎΡΠΊΠ΅ Π²Ρ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΏΠ΅ΡΠ²ΡΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΡΠΌΠ΅ΡΡΠΈΡΡΡΡ Π² Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΠΉ Π±ΡΡΠ΅Ρ ΠΈ Π΅Π³ΠΎ Ρ
Π²ΠΎΡΡ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΠΈΡΠ°Π½ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π·Π° Π±ΡΡΠ΅ΡΠΎΠΌ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠΎΡΠΈΠΏ ΡΠΊΡΠΏΠ»ΠΎΠΈΡΠ°, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½ ΠΎΠ±Ρ
ΠΎΠ΄ ASLR ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΡΠ΅ΡΠ΅Π· ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠ°ΡΡΠΈΠ²Π° main_loop_tlg, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ΡΠΏΠΈΡΠΎΠΊ QEMUTimerList Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ, Π²ΡΠ·ΡΠ²Π°Π΅ΠΌΡΠΌΠΈ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΡ.
Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ ΡΠΆΠ΅ ΡΡΡΡΠ°Π½Π΅Π½Π° Π² Fedora ΠΈ SUSE/openSUSE, Π½ΠΎ ΠΎΡΡΠ°ΡΡΡΡ Π½Π΅ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ Π² Debian, Arch Linux ΠΈ FreeBSD. Π Ubuntu ΠΈ RHEL ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π½Π΅ ΠΏΡΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠ·-Π·Π° Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ slirp. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ ΠΎΡΡΠ°ΡΡΡΡ Π½Π΅ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ Π²ΡΠΏΡΡΠΊΠ΅ libslirp 4.0 (ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ° Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°ΡΡΠ°).
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru