CVE-2020-11899

Treck TCP/IP stack IPv6

ВЫСОКАЯ ВЕРОЯТНОСТЬ

Дата обнаружения

2022-03-03

Официальное описание

The Treck TCP/IP stack contains an IPv6 out-of-bounds read vulnerability.

🛡️
Технический анализ и план устранения

Суть уязвимости

Уязвимость (CVE-2020-11899) в стеке TCP/IP Treck связана с некорректной обработкой IPv6-пакетов. Злоумышленник может отправить специально сформированный IPv6-пакет, который вызовет чтение данных за пределами выделенного буфера (out-of-bounds read). Это может привести к: * Утечке конфиденциальной информации из памяти устройства. * Отказу в обслуживании (DoS) устройства. * Возможному обходу механизмов защиты.

Как исправить

Основной способ — обновить стек Treck до исправленной версии. Конкретная версия патча зависит от производителя устройства/ПО, в котором используется уязвимый стек.

  1. Определите производителя и модель устройства/ПО, использующего стек Treck (например, сетевое оборудование, IoT-устройства, встроенные системы).
  2. Обратитесь к вендору за информацией о наличии обновления. Патч был выпущен Treck Inc. в версии 6.0.1.67.
  3. Установите обновление прошивки/ПО от вендора. Пример команды для обновления через CLI (точная команда зависит от устройства): bash # Пример для гипотетического сетевого устройства copy tftp://<TFTP_SERVER_IP>/firmware_patched.bin flash: reload

Временное решение

Если немедленное обновление невозможно, примените меры по сегментации и фильтрации трафика.

  1. На уровне сети (брандмауэр/маршрутизатор):

    • Блокируйте нежелательный IPv6-трафик из ненадежных сетей на периметре.
    • Реализуйте строгие правила ACL (Access Control List). Пример правила для Cisco IOS, ограничивающего доступ к уязвимым устройствам: ipv6 access-list FILTER-V6 deny ipv6 any host <IP_УЯЗВИМОГО_УСТРОЙСТВА> log permit ipv6 any any
    • Рассмотрите возможность временного отключения IPv6 на интерфейсах, обращенных к ненадежным сетям, если это не нарушит критическую функциональность.
  2. На уровне хоста (если применимо):

    • Используйте хост-брандмауэр (например, iptables для Linux) для ограничения входящих IPv6-соединений. bash # Пример: блокировка всего входящего IPv6-трафика, кроме ICMPv6 (для ND) ip6tables -P INPUT DROP ip6tables -A INPUT -p icmpv6 -j ACCEPT ip6tables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    • Отключите стек IPv6, если он не используется. Для Linux (временное отключение): bash sysctl -w net.ipv6.conf.all.disable_ipv6=1 sysctl -w net.ipv6.conf.default.disable_ipv6=1