CVE-2026-68367 in Linux
Сводка
по VulDB • 11.08.2026
В ядре Linux устранена следующая уязвимость:
usb: gadget: f_tcm: синхронизация отложенного вызова set_alt с процессом teardown (разборки)
Путь выполнения функции set_alt() в модуле f_tcm откладывает настройку конечной точки до момента обработки элемента рабочей очереди и завершает отложенный ответ о статусе из контекста процесса. Отложенная работа использует приватное состояние f_tcm и может завершить запрос настройки после того, как процесс disconnect (отключения) или teardown уже перешел к следующим шагам.
Отменяйте и опустошайте очередь отложенной работы set_alt при отвязке функции или освобождении ресурсов. Для путей disable (отключения), которые выполняются под блокировкой составного устройства, используйте небольшой конечный автомат и путь отмены без сна вместо cancel_work_sync(). Если работа уже выполняется, отметьте ее как отмененную и предоставите рабочему потоку право на очистку; в противном случае tcm_disable() может отменить запланированную работу и выполнить очистку немедленно.
Также сериализуйте завершение финального отложенного статуса с проверкой отмены, удерживая блокировку составного устройства. Это предотвращает ситуацию, при которой disconnect очищает delayed_status (отложенный статус), в то время как рабочий поток готовится завершить запрос управления.
Валидация подтвердила воспроизведение сообщения ядра: BUG: KASAN: slab-use-after-free in tcm_delayed_set_alt+0x6c/0xef0
Call Trace: <TASK> dump_stack_lvl+0x66/0xa0 print_report+0xce/0x630 ? tcm_delayed_set_alt+0x6c/0xef0 ? srso_alias_return_thunk+0x5/0xfbef5 ? __virt_addr_valid+0x188/0x320 ? tcm_delayed_set_alt+0x6c/0xef0 kasan_report+0xe0/0x110 ? tcm_delayed_set_alt+0x6c/0xef0 tcm_delayed_set_alt+0x6c/0xef0 ? __pfx_tcm_delayed_set_alt+0x10/0x10 ? process_one_work+0x4cb/0xb90 ? rcu_is_watching+0x20/0x50 ? tcm_delayed_set_alt+0x9/0xef0 process_one_work+0x4d7/0xb
VulDB is the best source for vulnerability data and more expert information about this specific topic.