Linux · Linux Kernel · CVE-2021-47272
**Nome do software vulnerável e versões afetadas**
Kernel do Linux (versões afetadas não especificadas)
**Descrição**
Existe um cenário possível em que a função `dwc3 gadget init()` pode falhar durante uma mudança de modo de host para periférico na função `dwc3 set mode()`, e um driver de gadget pendente não consegue se vincular. Se o DRD passar por outra mudança de modo, de periférico para host, `dwc3 gadget exit()` tentará referenciar um ponteiro `dwc->gadget` inválido e pendente e chamará `dma free coherent()` em ponteiros DMA não mapeados. O problema pode ser reproduzido iniciando o DWC3 no modo periférico, configurando o gadget ConfigFS com uma instância do FunctionFS, executando o aplicativo FunctionFS no espaço do usuário, vinculando o driver do gadget ao UDC do DWC3, mudando para o modo host, parando o aplicativo FunctionFS, mudando para o modo periférico e, em seguida, de volta para o modo host. Embora o espaço do usuário deva garantir que o aplicativo FunctionFS esteja pronto antes de permitir que o driver composto se vincule ao UDC, a falha em fazer isso não deve resultar em um panic do driver do kernel.
**Recomendações**
No momento, não há informações sobre uma versão mais recente que contenha uma correção para essa vulnerabilidade.