Уязвимости Π²ΠΎ FreeBSD, IPnet ΠΈ Nucleus NET, связанныС с ошибками ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ сТатия Π² DNS

Π˜ΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ Forescout Research Labs ΠΈ JSOF Research ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ совмСстного исслСдования бСзопасности Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ схСмы сТатия, примСняСмой для ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΡ…ΡΡ ΠΈΠΌΡ‘Π½ Π² сообщСниях DNS, mDNS, DHCP ΠΈ IPv6 RA (ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° Π΄ΡƒΠ±Π»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ…ΡΡ частСй Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² Π² сообщСниях, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΡ… нСсколько ΠΈΠΌΡ‘Π½). Π’ Ρ…ΠΎΠ΄Π΅ ΠΏΡ€ΠΎΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Ρ‹Π»ΠΎ выявлСно 9 уязвимостСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Ρ‹ ΠΏΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΠ²Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ NAME:WRECK.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ выявлСны Π²ΠΎ FreeBSD, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² сСтСвых подсистСмах IPnet, Nucleus NET ΠΈ NetX, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΡ… распространСниС Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ VxWorks, Nucleus ΠΈ ThreadX, примСняСмых Π² устройствах Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°Ρ…, мСдицинских ΠΏΡ€ΠΈΠ±ΠΎΡ€Π°Ρ…, Π°Π²ΠΈΠΎΠ½ΠΈΠΊΠ΅, ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€Π°Ρ… ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ элСктроникС. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ уязвимостям ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ΠΎ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 100 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² устройств.

  • Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π²ΠΎ FreeBSD (CVE-2020-7461) позволяла ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ своСго ΠΊΠΎΠ΄Π° Ρ‡Π΅Ρ€Π΅Π· ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΠΌ, находящСмся Π² ΠΎΠ΄Π½ΠΎΠΉ локальной сСти с ΠΆΠ΅Ρ€Ρ‚Π²ΠΎΠΉ, ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½ΠΎΠ³ΠΎ DHCP-ΠΏΠ°ΠΊΠ΅Ρ‚Π°, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ уязвимым DHCP-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠ»Π° ΠΊ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Π±ΡƒΡ„Π΅Ρ€Π°. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ смягчало Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ процСсс dhclient, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ присутствуСт ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ, выполнялся со ΡΠ±Ρ€ΠΎΡˆΠ΅Π½Π½Ρ‹ΠΌΠΈ привилСгиями Π² ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Capsicum, для Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ выявлСниС Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎΠΉ уязвимости.

    Π‘ΡƒΡ‚ΡŒ ошибки Π² Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Π² Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠΌ DHCP-сСрвСром ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ c 119-ΠΎΠΏΡ†ΠΈΠ΅ΠΉ DHCP, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ список «domain search» для Ρ€Π΅Π·ΠΎΠ»Π²Π΅Ρ€Π°. НСвСрный расчёт Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π±ΡƒΡ„Π΅Ρ€Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ для размСщСния распакованных Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠΌΡ‘Π½, ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠ» ΠΊ записи ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€Π°. Π’ΠΎ FreeBSD ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° устранСна Π΅Ρ‰Ρ‘ Π² сСнтябрС ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎ Π³ΠΎΠ΄Π°. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ эксплуатирована Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ доступа ΠΊ локальной сСти.

  • Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π²ΠΎ встраиваСмом сСтСвом стСкС IPnet, примСняСмом Π² RTOS VxWorks, позволяСт ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° сторонС DNS-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠ·-Π·Π° Π½Π΅Π²Π΅Ρ€Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сТатия DNS-сообщСний. Как оказалось, Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ данная ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π±Ρ‹Π»Π° выявлСна ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ Exodus Π΅Ρ‰Ρ‘ Π² 2016 Π³ΠΎΠ΄Ρƒ, Π½ΠΎ Ρ‚Π°ΠΊ ΠΈ Π½Π΅ Π±Ρ‹Π»Π° исправлСна. Новый запрос Π² компанию Wind River Ρ‚Π°ΠΊΠΆΠ΅ остался Π±Π΅Π· ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈ устройства с IPnet ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ уязвимы.
  • Π’ TCP/IP стСкС Nucleus NET, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΌ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Siemens, выявлСно 6 уязвимостСй, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Π²Π΅ ΠΌΠΎΠ³Π»ΠΈ привСсти ΠΊ ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΌΡƒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ ΠΊΠΎΠ΄Π°, Π° Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΊ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΎΡ‚ΠΊΠ°Π·Π° Π² обслуТивании. ΠŸΠ΅Ρ€Π²Π°Ρ опасная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° связана с ошибкой ΠΏΡ€ΠΈ распаковкС сТатых сообщСний DNS, Π° вторая c Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ Ρ€Π°Π·Π±ΠΎΡ€ΠΎΠΌ ΠΌΠ΅Ρ‚ΠΎΠΊ Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠΌΡ‘Π½. ОбС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ приводят ΠΊ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Π±ΡƒΡ„Π΅Ρ€Π° ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½Ρ‹Ρ… ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² DNS.

    Для эксплуатации уязвимостСй Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅ΠΌΡƒ достаточно ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° любой Π»Π΅Π³ΠΈΡ‚ΠΈΠΌΠ½Ρ‹ΠΉ запрос, ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ с уязвимого устройства, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ MTIM-Π°Ρ‚Π°ΠΊΠΈ ΠΈ Π²ΠΊΠ»ΠΈΠ½ΠΈΠ²Π°Π½ΠΈΠ΅ Π² Ρ‚Ρ€Π°Ρ„ΠΈΠΊ ΠΌΠ΅ΠΆΠ΄Ρƒ DNS-сСрвСром ΠΈ ΠΆΠ΅Ρ€Ρ‚Π²ΠΎΠΉ. Если Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ доступ ΠΊ локальной сСти, Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ DNS-сСрвСр, ΠΏΡ‹Ρ‚Π°ΡŽΡ‰ΠΈΠΉΡΡ Π°Ρ‚Π°ΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Ρ‹Π΅ устройства Ρ‡Π΅Ρ€Π΅Π· рассылку запросов mDNS Π² ΡˆΠΈΡ€ΠΎΠΊΠΎΠ²Π΅Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

  • Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π² сСтСвом стСкС NetX (Azure RTOS NetX), Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΌ для ThreadX RTOS ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ Π² 2019 Π³ΠΎΠ΄Ρƒ послС ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² Ρ€ΡƒΠΊΠΈ Microsoft, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ»Π°ΡΡŒ ΠΎΡ‚ΠΊΠ°Π·ΠΎΠΌ Π² обслуТивании. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π²Ρ‹Π·Π²Π°Π½Π° ошибкой Ρ€Π°Π·Π±ΠΎΡ€Π° сТатых сообщСний DNS Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π΅Π·ΠΎΠ»Π²Π΅Ρ€Π°.

Из ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Ρ… сСтСвых стСков, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅ Π±Ρ‹Π΄Π»ΠΎ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ уязвимостСй, связанных со сТатиСм ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΡ…ΡΡ Π΄Π°Π½Π½Ρ‹Ρ… Π² DNS-сообщСниях, Π½Π°Π·Π²Π°Π½Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ lwIP, Nut/Net, Zephyr, uC/TCP-IP, uC/TCP-IP, FreeRTOS+TCP, OpenThread ΠΈ FNET. ΠŸΡ€ΠΈ этом ΠΏΠ΅Ρ€Π²Ρ‹Π΅ Π΄Π²Π° (Nut/Net ΠΈ lwIP) Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ сТатиС Π² DNS-сообщСниях, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ Π΄Π°Π½Π½ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π±Π΅Π· ошибок. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, отмСчаСтся, Ρ‡Ρ‚ΠΎ Ρ€Π°Π½Π΅Π΅ Ρ‚Π΅ ΠΆΠ΅ исслСдоватСли ΡƒΠΆΠ΅ выявляли ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ уязвимости Π² стСках Treck, uIP ΠΈ PicoTCP.

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