Petr Pavlu

Pesquisador deSUSE
#17036de 53,640
15.7CVSS total
Vulnerabilidades · 3
Média
3
PT-2024-6351
4.7
2024-05-21
Linux · Linux Kernel · CVE-2024-38601
**Nome do software vulnerável e versões afetadas** Versões do kernel Linux anteriores à 6.6.37 **Descrição** O problema está relacionado a uma condição de corrida entre leitores e verificações de redimensionamento no buffer circular do kernel Linux. O código do leitor em `rb get reader page()` insere uma nova página de leitura no buffer circular, o que pode levar a uma inconsistência temporária na lista duplamente encadeada subjacente. A operação de redimensionamento em `ring buffer resize()` pode ser invocada em paralelo e chama `rb check pages()`, que pode detectar essa inconsistência e interromper o rastreamento posterior. Isso pode causar uma negação de serviço. O número estimado de dispositivos potencialmente afetados em todo o mundo não foi especificado. Não há informações sobre incidentes reais em que essa vulnerabilidade tenha sido explorada. Os detalhes técnicos sobre a exploração incluem: - A função `rb get reader page()` troca uma nova página de leitura no buffer circular, realizando cmpxchg em `old->list.prev->next` para apontá-la para a nova página. - A função `ring buffer resize()` pode ser invocada em paralelo e chama `rb check pages()`, que pode detectar a inconsistência e interromper o rastreamento posterior. - A função `rb check pages()` verifica a consistência das páginas do buffer circular. **Recomendações** Para resolver o problema, atualize o kernel do Linux para a versão 6.6.37 ou posterior. Como solução temporária, considere desativar a função `rb get reader page()` até que um patch esteja disponível. Restrinja o acesso à função vulnerável `ring buffer resize()` para minimizar o risco de