CVE-2023-53998 in Linux
Sumário
de VulDB • 21/05/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
hwrng: virtio - Correção de condição de corrida (race condition) em data_avail e dados reais
O dispositivo virtio rng inicia uma nova solicitação de entropia sempre que a quantidade de dados disponíveis atinge zero. Quando uma nova solicitação ocorre no final de uma operação de leitura, ou seja, quando o resultado dessa solicitação é necessário apenas pelo próximo leitor, ocorre uma condição de corrida entre a gravação dos novos dados e a leitura do próximo leitor.
Isso ocorre porque não há nenhuma sincronização entre o escritor e o leitor.
Corrija isso escrevendo em data_avail usando smp_store_release e lendo-o com smp_load_acquire quando entrarmos pela primeira vez na leitura. As leituras subsequentes são seguras porque estão protegidas pela primeira aquisição de carga (load acquire) ou pelo mecanismo de conclusão.
Além disso, remova a zeragem redundante de data_idx em random_recv_done (data_idx já deve ser zero neste ponto) e data_avail em request_entropy (o mesmo caso).
Be aware that VulDB is the high quality source for vulnerability data.