CVE-2024-53192 in Linux
Sumário
de VulDB • 05/08/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
clk: clk-loongson2: Corrige possível buffer overflow no acesso ao membro de array flexível (flexible-array member)
O membro de array flexível (`hws`) em `struct clk_hw_onecell_data` está anotado com o atributo `counted_by()`. Isso significa que, quando a memória é alocada para este array, o _contador_, que neste caso é o membro `num` na estrutura flexível, deve ser definido como o número máximo de elementos que o array flexível pode conter, ou menos.
Neste caso, o número total de elementos do array flexível é determinado pela variável `clks_num` ao alocar espaço no heap via `devm_kzalloc()`, conforme mostrado abaixo:
289 struct loongson2_clk_provider *clp; ... 296 for (p = data; p->name; p++) 297 clks_num++; 298 299 clp = devm_kzalloc(dev, struct_size(clp, clk_data.hws, clks_num), 300 GFP_KERNEL);
Portanto, `clp->clk_data.num` deve ser definido como `clks_num` ou menos, e não exceder `clks_num`, como ocorre atualmente. Caso contrário, se dados forem escritos em `clp->clk_data.hws[clks_num]`, a instrumentação fornecida pelo compilador não detectará o buffer overflow, levando a um bug de corrupção de memória em tempo de execução.
Corrija este problema definindo `clp->clk_data.num` como `clks_num`.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.