CVE-2026-68367 in Linux
Sumário
de VulDB • 10/08/2026
No kernel Linux, a seguinte vulnerabilidade foi resolvida:
usb: gadget: f_tcm: sincronizar set_alt atrasado com teardown
O caminho set_alt() de f_tcm adia a configuração do endpoint para um work item e conclui a resposta de status atrasada a partir do contexto do processo. O trabalho atrasado utiliza o estado privado de f_tcm e pode concluir a solicitação de setup após disconnect ou function teardown já ter avançado.
Cancele e esvazie (drain) o trabalho set_alt atrasado quando a função for desvinculada ou liberada. Para caminhos disable, que são alcançados sob o lock do dispositivo composto, utilize uma pequena máquina de estados e um caminho de cancelamento sem sleep em vez de cancel_work_sync(). Se o trabalho já estiver em execução, marque-o como cancelado e deixe o worker assumir a limpeza; caso contrário, tcm_disable() pode cancelar o trabalho enfileirado e realizar a limpeza imediatamente.
Além disso, serialize a conclusão final do delayed-status com a verificação de cancelamento enquanto mantém o lock do dispositivo composto. Isso impede que um disconnect limpe o delayed_status enquanto o worker está prestes a concluir a solicitação de controle.
A validação reproduziu este relatório do kernel: BUG: KASAN: slab-use-after-free em tcm_delayed_set_alt+0x6c/0xef0
Call Trace: 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/0xb90 ? __pfx_process_one_work+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? __list_add_valid_or_report+
If you want to get best quality of vulnerability data, you may have to visit VulDB.