ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° уязвимост Π² рСализацията Π½Π° функцията memcpy Π·Π° ARMv7 ΠΎΡ‚ Glibc

Π˜Π·ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈΡ‚Π΅ ΠΏΠΎ кибСрсигурност ΠΎΡ‚ компания Cisco Ρ€Π°Π·ΠΊΡ€ΠΈΡ…Π° Π΄Π΅Ρ‚Π°ΠΉΠ»ΠΈ уязвимости (CVE-2020-6096) Π² рСализация Π½Π° прСдоставСната Π² Glibc функция memcpy() Π·Π° 32-Π±ΠΈΡ‚ΠΎΠ²Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ARMv7. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚Π° Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½Π° ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»Π½ΠΈ стойности Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€Π°, опрСдСлящ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΊΠΎΠΏΠΈΡ€Π°Π½Π°Ρ‚Π° област, ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° асСмблСрни ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€Π°Ρ‰ΠΈ Π·Π½Π°ΠΊΠΎΠ²ΠΈΡ‚Π΅ 32-Π±ΠΈΡ‚ΠΎΠ²ΠΈ Ρ†Π΅Π»ΠΈ числа. Π˜Π·Π²ΠΈΠΊΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° memcpy() Π½Π° систСми ARMv7 с ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ Π½Π΅ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½ΠΎ сравняванС Π½Π° стойноститС ΠΈ запис Π² области извън Π³Ρ€Π°Π½ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° ΡƒΠΊΠ°Π·Π°Π½Π°Ρ‚Π° Π±ΡƒΡ„Π΅Ρ€.

Уязвимостта ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Сксплоатирана Π·Π° изпълнСниС Π½Π° ΠΊΠΎΠ΄ Π² ситуация, ΠΊΠΎΠ³Π°Ρ‚ΠΎ атакуващият ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π° Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»Π½Π° стойност Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°Ρ‚Π°, ΠΏΡ€Π΅Π· която сС ΠΏΡ€Π΅Π΄Π°Π²Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΊΠΎΠΏΠΈΡ€Π°Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»Π½Π° стойност Ρ‰Π΅ сС ΠΏΠΎΠ»ΡƒΡ‡ΠΈ ΠΏΡ€ΠΈ ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ 2 Π“Π‘ Π΄Π°Π½Π½ΠΈ, Π½ΠΎ Π² процСса Π½Π° Π°Ρ‚Π°ΠΊΠ° Π·Π° ΠΈΠ·Π»ΠΈΠ·Π°Π½Π΅ извън Π³Ρ€Π°Π½ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° Π±ΡƒΡ„Π΅Ρ€Π° трябва Π΄Π° сС ΠΏΡ€Π΅Π΄Π°Π΄Π΅ Π½Π°ΠΉ-ΠΌΠ°Π»ΠΊΠΎ 4 Π“Π‘). Ѐункцията memcpy() Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² прилоТСния, Π° ARMv7 процСсоритС са разпространСни Π² Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ систСми, ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ, индустриални, потрСбитСлски, ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΈ ΠΈ Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ устройства, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° станат ΠΎΠ±Π΅ΠΊΡ‚ΠΈ Π½Π° Π°Ρ‚Π°ΠΊΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ Bluetooth, HD Radio/DAB, USB, CAN шина, Wi-Fi ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ външни ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΡ†ΠΈ Π½Π° Π΄Π°Π½Π½ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π°Ρ‚Π°ΠΊΡƒΠ²Π°Π½ΠΈ Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ Π² ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° услуги ΠΈ прилоТСния, ΠΏΡ€ΠΈΠ΅ΠΌΠ°Ρ‰ΠΈ Π²Ρ…ΠΎΠ΄Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π±Π΅Π· ограничСния Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π°).

ΠšΠ°Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ сС Π΄Π°Π²Π° ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ Сксплоит Π·Π° Π°Ρ‚Π°ΠΊΠ° Π½Π° Π²Π³Ρ€Π°Π΄Π΅Π½ Π² Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π½ΠΈΡ‚Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΈ систСми http-сСрвСр, Π΄ΠΎΡΡ‚ΡŠΠΏΠ΅Π½ Ρ‡Ρ€Π΅Π· Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π½Π°Ρ‚Π° Wi-Fi ΠΌΡ€Π΅ΠΆΠ°. НСоторизиран Π°Ρ‚Π°ΠΊΡƒΠ²Π°Ρ‰ ΠΌΠΎΠΆΠ΅ Π΄Π° Сксплоатира уязвимостта Π² memcpy Π½Π° Ρ‚ΠΎΠ·ΠΈ ΡΡŠΡ€Π²ΡŠΡ€ Ρ‡Ρ€Π΅Π· ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° GET-заявка с ΠΌΠ½ΠΎΠ³ΠΎ голям Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈ root-Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ систСмата.

ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° уязвимост Π² рСализацията Π½Π° функцията memcpy Π·Π° ARMv7 ΠΎΡ‚ Glibc

На 32-Π±ΠΈΡ‚ΠΎΠ²ΠΈ систСми x86 ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π½Π΅ сС проявява, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ рСализацията Π½Π° memcpy Π·Π° Ρ‚Π°Π·ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°Ρ‚Π° с Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΊΠ°Ρ‚ΠΎ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎ цяло число ΠΎΡ‚ Ρ‚ΠΈΠΏ size_t (Π² написаната Π½Π° асСмблСрС рСализация Π·Π° ARMv7 вмСсто size_t Ρ‚ΠΎ сС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° ΠΊΠ°Ρ‚ΠΎ Π·Π½Π°ΠΊΠΎΠ²ΠΎ цяло число). ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠ°Ρ‚Π° Π΅ Π½Π°Π»ΠΈΡ‡Π½Π° Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° ΠΏΠ°Ρ‡, която Ρ‰Π΅ Π²Π»Π΅Π·Π΅ Π² ΡΡŠΡΡ‚Π°Π²Π° Π½Π° августовското ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Glibc 2.32.
ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠ°Ρ‚Π° сС ΡΡŠΡΡ‚ΠΎΠΈ Π² замяна Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° асСмблСрни инструкции, ΠΎΠΏΠ΅Ρ€ΠΈΡ€Π°Ρ‰ΠΈ със Π·Π½Π°ΠΊΠΎΠ²ΠΈ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΈ (bge ΠΈ blt), с Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΈ Π°Π½Π°Π»ΠΎΠ·ΠΈ (blo ΠΈ bhs).

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ всС ΠΎΡ‰Π΅ Π½Π΅ Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ Π² Debian 9 ΠΈ 10 (Π² Debian 8 Π½Π΅ сС проявява), Fedora, Ubuntu, OpenEmbedded, Tizen (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° glibc). RHEL ΠΈ SUSE ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ Π½Π΅ засяга, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚Π΅ Π½Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ 32-Π±ΠΈΡ‚ΠΎΠ²ΠΈ систСми ARMv7. Android Π½Π΅ Π΅ ΠΏΠΎΠ΄Π»ΠΎΠΆΠ΅Π½ Π½Π° уязвимост, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° собствСна рСализация Π½Π° libc (Bionic). Π’ OpenWRT ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π² ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ сборки сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Musl, Π½ΠΎ Π² рСпозиторията ΠΈΠΌΠ° ΠΈ glibc.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster