CVE-2026-10668 in Zephyr
Сводка
по VulDB • 12.07.2026
Драйвер контроллера USB-устройства Nuvoton NuMaker HSUSBD (drivers/usb/udc/udc_numaker.c) безоговорочно активировал этап Data IN для управляющего запроса (base->CEPTXCNT = len в numaker_hsusbd_ep_trigger). Поскольку аппаратное обеспечение HSUSBD не может деактивировать уже активированный этап Data IN, предназначенный для предыдущей передачи, хост USB, отменяющий выполняемую передачу управления (по таймауту), а затем отправляющий новый пакет SETUP, может вывести драйвер из синхронного состояния: в новой передаче могут быть переданы устаревшие данные, а управляющий конечный пункт (endpoint) может навсегда застрять в состоянии постоянного отправки NAK для каждой последующей передачи управления.
Злонамеренный или содержащий ошибки хост (атакующий с физическим доступом/в соседней сети, управляющий шиной) может многократно выполнять операции отмены и повторного SETUP, чтобы заблокировать USB-контролируемый конечный пункт устройства, отказывая в обслуживании функции USB устройства (устройство перестает опрашиваться/отвечать на управляющем канале) до тех пор, пока не будет выполнен сброс USB или переподключение. Уязвимость представляет собой только нарушение доступности (DoS); циклы копирования FIFO (ограниченные длиной net_buf и флагом BUFFULL оборудования) и жизненный цикл net_buf независимы от десинхронизации активации, поэтому отсутствуют обращения за пределами буфера (out-of-bounds), use-after-free или утечка информации.
Исправление отслеживает события IN-token и нового SETUP (k_event) и активирует Data IN для управляющего запроса только при наличии токена IN и отсутствии поступившего нового SETUP, отменяя текущую передачу при получении нового SETUP. Затрагивает платы с контроллером Nuvoton NuMaker HSUSBD (CONFIG_UDC_NUMAKER с DT_HAS_NUVOTON_NUMAKER_HSUSBD_ENABLED); выпущено в версии v4.4.0.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.