PT-2024-34046 · Linux+6 · Linux Kernel+6
Publicado
2024-10-18
·
Atualizado
2025-10-31
·
CVE-2024-50210
CVSS v3.1
5.5
Média
| Vetor | AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Nome do software vulnerável e versões afetadas:
Versões do kernel Linux anteriores à 6.6.61
Descrição:
O problema está relacionado a um bloqueio desequilibrado na função
pc clock settime(). Quando get clock desc() é bem-sucedida, ela chama fget() para o fd do clockid e obtém o bloqueio de leitura clk->rwsem. No entanto, o caminho de erro deveria liberar o bloqueio para equilibrar o bloqueio e chamar fput no fd do clockid para equilibrar a contagem de referências e liberar o recurso relacionado ao fd. O problema foi causado por um commit que deixou o caminho de erro bloqueado, resultando em bloqueio desequilibrado. Para corrigir isso, timespec64 valid strict() deve ser verificado antes de get clock desc(), já que o “ts” não é alterado depois disso.Recomendações:
Para versões do kernel Linux anteriores à 6.6.61, atualize para a versão 6.6.61 ou posterior para resolver o problema. Como solução temporária, considere restringir o acesso à função
pc clock settime() até que um patch esteja disponível. Além disso, certifique-se de que a verificação timespec64 valid strict() seja realizada antes de chamar get clock desc() para evitar bloqueios desequilibrados.Exploit
Correção
Improper Locking
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Astra Linux
Debian
Linuxmint
Linux Kernel
Red Os
Suse
Ubuntu