Linux · Linux Kernel · CVE-2024-56708
**Nome do software vulnerável e versões afetadas**
Kernel do Linux (versões afetadas não especificadas)
**Descrição**
Um problema de falha de segmentação foi resolvido no kernel do Linux, especificamente no módulo EDAC/igen6. A falha ocorre durante o descarregamento do módulo devido a um erro de liberação dupla. Isso acontece porque `mci->pvt info` não está definido como NULL, fazendo com que `kfree(mci->pvt info)` seja chamado duas vezes. O problema decorre da alocação de `igen6 pvt` com `kzalloc()` em `igen6 probe()` e da atribuição de `mci->pvt info` para apontar para `&igen6 pvt->imc[mc]` em `igen6 register mci()`. Durante a remoção do módulo, `kfree(mci->pvt info)` é chamado em `mci release()`, seguido por `kfree(igen6 pvt)` em `igen6 remove()`.
**Recomendações**
Para corrigir esse problema, defina `mci->pvt info` como NULL para evitar o erro de liberação dupla. Isso pode ser feito modificando a função `igen6 register mci()` para definir `mci->pvt info` como NULL antes de chamar `kfree(mci->pvt info)`. Como solução temporária, considere desativar a função `igen6 probe()` até que um patch esteja disponível. Restrinja o acesso ao módulo `edac mc.c` para minimizar o risco de exploração. Evite usar a variável `mci->pvt info` no módulo afetado até que o problema seja resolvido. No momento, não há informações sobre uma versão mais recente que contenha uma correção para essa vulnerabilidade.