CVE-2024-50100 in Linuxinformação

Sumário

de VulDB • 13/08/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

USB: gadget: dummy-hcd: Corrige o problema de "task hung" (tarefa pendurada)

O fuzzer syzbot tem encontrado problemas de "task hung" desde que o driver dummy-hcd foi alterado para usar hrtimers em vez de timers regulares. Descobriu-se que os problemas são causados por uma diferença sutil entre as APIs timer_pending() e hrtimer_active().

A substituição fez a troca da primeira pela segunda cegamente. No entanto, timer_pending() retorna True quando o timer está enfileirado (queued), mas não quando seu callback está em execução, enquanto hrtimer_active() retorna True quando o hrtimer está enfileirado _ou_ seu callback está em execução. Essa diferença ocasionalmente fez com que dummy_urb_enqueue() acreditasse que a rotina de callback ainda não havia começado, quando na verdade estava quase terminando. Como resultado, o hrtimer não foi reiniciado, o que tornou impossível para o driver desenfileirar (dequeue) posteriormente o URB que acabara de ser enfileirado. Isso fez com que usb_kill_urb() ficasse pendurado (hang), e a situação piorou a partir daí.

Como os hrtimers não possuem uma API para indicar quando estão enfileirados e o callback não está em execução, o driver deve controlar isso por conta própria. É exatamente isso que este patch faz, adicionando um novo flag "timer_pending" e definindo ou limpando-o nos momentos apropriados.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Responsável

Linux

Reservar

21/10/2024

Divulgação

05/11/2024

Moderação

aceite

Entrada

VDB-283222

CPE

pronto

EPSS

0.00235

KEV

não

Atividades

muito baixo

Fontes

Might our Artificial Intelligence support you?

Check our Alexa App!