Linux · Linux Kernel · CVE-2024-49878
Nome do software vulnerável e versões afetadas:
Versões do kernel Linux anteriores à 6.6.58
Descrição:
O problema surge porque a função `region intersects()` é confundida pela estrutura da árvore de recursos quando a “RAM do sistema” é um descendente de “CXL Window X”, em vez de um recurso de nível superior. Isso pode levar a uma verificação incorreta de permissões, permitindo potencialmente o acesso não autorizado à RAM do sistema por meio de `/dev/mem`. O código de erro retornado ao tentar gravar no intervalo de memória CXL via `/dev/mem` está incorreto, e um aviso é registrado no log do kernel por chamar `ioremap()` na RAM do sistema.
Recomendações:
Para resolver o problema, atualize para a versão 6.6.58 ou posterior do kernel do Linux. Como solução temporária, considere restringir o acesso à interface `/dev/mem` para minimizar o risco de exploração. Além disso, tenha cuidado ao usar o comando `dd` para gravar em intervalos de memória, pois ele pode ignorar as verificações de permissão em determinadas condições.