PT-2025-3654 · Linux+8 · Linux Kernel+8

Ming-Hung Tsai

·

Publicado

2024-12-05

·

Atualizado

2025-11-07

·

CVE-2024-57929

CVSS v3.1

7.1

Alta

VetorAV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
Nome do Software Vulnerável e Versões Afetadas Versões do kernel do Linux anteriores à 6.6.74
Descrição Uma vulnerabilidade no kernel do Linux foi resolvida, especificamente no array do dm, onde um bloco de array defeituoso poderia ser liberado duas vezes em dm array cursor end. Isso ocorre quando dm bm read lock() falha devido a erros de bloqueio ou checksum, liberando o bloco defeituoso implicitamente enquanto deixa um ponteiro de saída inválido para trás. O chamador de dm bm read lock() não deve operar sobre este ponteiro dm block inválido, ou isso levará a resultados indefinidos. Por exemplo, o dm array cursor armazena em cache incorretamente o ponteiro inválido ao ler um bloco de array defeituoso, causando uma liberação dupla em dm array cursor end(), acionando então o BUG ON em dm-bufio cache put().
O problema pode ser reproduzido inicializando um dispositivo de cache, limpando o segundo bloco de array offline e, em seguida, tentando reabrir o dispositivo de cache. Os logs do kernel mostram erros como device-mapper: array: array block check failed e kernel BUG at drivers/md/dm-bufio.c:638. A correção envolve definir o ponteiro do bloco em cache como NULL em caso de erros.
Recomendações Para resolver o problema, atualize o kernel do Linux para a versão 6.6.74 ou posterior. Como solução temporária, considere desabilitar a função dm array cursor end() até que um patch esteja disponível. Restrinja o acesso à função vulnerável dm bm read lock() para minimizar o risco de exploração. Evite usar o ponteiro dm block no endpoint de API afetado até que o problema seja resolvido.

Exploit

Correção

NULL Pointer Dereference

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

ALT-PU-2025-12647
BDU:2025-06459
CVE-2024-57929
DLA-4075-1
DLA-4076-1
DSA-5860-1
INFSA-2025_6966
MGASA-2025-0030
MGASA-2025-0032
OESA-2025-1446
OESA-2025-1450
OESA-2025-2632
OESA-2025-2636
OPENSUSE-SU-2025_0428-1
OPENSUSE-SU-2025_0499-1
OPENSUSE-SU-2025_0557-1
RHSA-2025:6966
RHSA-2025_6966
SUSE-SU-2025:0289-1
SUSE-SU-2025:0428-1
SUSE-SU-2025:0499-1
SUSE-SU-2025:0557-1
SUSE-SU-2025:0565-1
SUSE-SU-2025:20165-1
SUSE-SU-2025:20166-1
SUSE-SU-2025:20248-1
SUSE-SU-2025:20249-1
SUSE-SU-2025_0428-1
SUSE-SU-2025_0499-1
SUSE-SU-2025_0557-1
USN-7379-1
USN-7379-2
USN-7380-1
USN-7381-1
USN-7382-1
USN-7387-1
USN-7387-2
USN-7387-3
USN-7388-1
USN-7389-1
USN-7390-1
USN-7391-1
USN-7392-1
USN-7392-2
USN-7392-3
USN-7392-4
USN-7393-1
USN-7401-1
USN-7407-1
USN-7413-1
USN-7421-1
USN-7458-1
USN-7459-1
USN-7459-2
USN-7463-1
USN-7513-1
USN-7513-2
USN-7513-3
USN-7513-4
USN-7513-5
USN-7514-1
USN-7515-1
USN-7515-2
USN-7522-1
USN-7523-1
USN-7524-1
USN-7539-1
USN-7540-1

Produtos afetados

Alt Linux
Astra Linux
Debian
Linuxmint
Linux Kernel
Red Hat
Red Os
Suse
Ubuntu