Хотя в Windows и Linux проблема некорректной генерации ISN уже по большей части устранена, она все еще представляет опасность для IoT-устройств.
Специалисты компании Forescout обнаружили несколько уязвимостей в ряде TCP/IP стеков, связанных с некорректной генерацией номеров ISN, что влечет риск для миллионов устройств из сферы «Интернета вещей».
Эксперты проанализировали 11 стеков, в частности, uIP, FNET, picoTCP, Nut/Net, lwIP, cycloneTCP, uC/TCP-IP, MPLAB Net, TI-NDKTCPIP, Nanostack и Nucleus NET и в 9 из них выявили в общей сложности 9 уязвимостей, получивших общее название Number:Jack.
Речь идет об уязвимостях, связанных с некорректной генерацией начальных порядковых номеров (Initial Sequence Number, ISN), генерируемых при организации нового TCP-соединения. ISN обеспечивает уникальность TCP-соединения между двумя устройствами и отсутствие коллизий с тем, чтобы сторонние не могли получить доступ к соединению. Для этого ISN должен генерироваться рандомно, чтобы атакующий не смог определить начальный порядковый номер и перехватить соединение.
Об проблеме некорректной генерации ISN известно уже давно, в свое время Кевин Митник (в прошлом хакер, а ныне консультант по компьютерной безопасности) использовал ее в своих атаках. Хотя в платформах Windows и Linux эта уязвимость уже по большей части устранена, она все еще представляет опасность для устройств, относящихся к категории IoT.
По итогам анализа уязвимыми оказались следующие TCP/IP стеки:
Nut/Net 5.1 ( CVE-2020-27213 ) - патч в разработке
uC/TCP-IP 3.6.0 ( CVE-2020-27630 ) - uC/TCP-IP более не поддерживается, уязвимость исправлена в последней версии проекта Micrium OS - наследника uC/TCP-IP
CycloneTCP 1.9.6 ( CVE-2020-27631 ) - уязвимость исправлена в версии CycloneTCP 2.0.0
NDKTCPIP 2.25 ( CVE-2020-27632 ) - уязвимость исправлена в Processor SDK 7.02
FNET 4.6.3 ( CVE-2020-27633 ) - обновлена документация, добавлены предупреждения и рекомендации
uIP 1.0, Contiki-OS3.0, Contiki-NG 4.5 ( CVE-2020-27634 ) - статус неизвестен
PicoTCP 1.7.0, PicoTCP-NG ( CVE-2020-27635 ) - в версии 2.1 устранена уязвимая реализация.
MPLAB Net 3.6.1 ( CVE-2020-27636 ) - проблема исправлена в версии 3.6.4
Решения lwIP и Nanostack уязвимости не подвержены.
В декабре прошлого года специалисты Forescout сообщили о множественных уязвимостях (Amnesia:33) в интернет-протоколах с открытым исходным кодом, которые подвергают IoT-устройства риску кибератак, в том числе направленных на перехват информации, вывод устройств из строя или перехват контроля над ними.
Первое — находим постоянно, второе — ждем вас