Π Π°Π·ΠΊΡΠΈΡΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π·Π° ΠΊΡΠΈΡΠΈΡΠ½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡ (CVE-2019 14378-) Π² SLIRP ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π² QEMU Π·Π° ΡΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π΅Π½ ΠΊΠ°Π½Π°Π» ΠΌΠ΅ΠΆΠ΄Ρ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈΡ ΠΌΡΠ΅ΠΆΠΎΠ² Π°Π΄Π°ΠΏΡΠ΅Ρ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° Π³ΠΎΡΡΠΈ ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡ Π±Π΅ΠΊΠ΅Π½Π΄ ΠΎΡ ΡΡΡΠ°Π½Π°ΡΠ° Π½Π° QEMU. ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ Π·Π°ΡΡΠ³Π° ΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° KVM ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ (Π² ΠΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΡΠ΅ΠΆΠΈΠΌ) ΠΈ Virtualbox, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ slirp backend ΠΎΡ 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