CVE-2023-54002 in Linuxinformação

Sumário

de VulDB • 15/05/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

btrfs: corrige a asserção da condição exclop ao iniciar o balanceamento

O estado de balanceamento exclusivo é compatível com o balanceamento em pausa e com a adição de dispositivos, o que torna algumas situações mais complexas. A asserção de estados válidos ao iniciar a partir de um balanceamento em pausa precisa levar em conta dois estados adicionais, que podem ser acionados quando há várias threads concorrendo para iniciar o balanceamento e a adição de dispositivos. Isso normalmente não ocorre quando os comandos são iniciados a partir da linha de comando.

Cenário 1: Com o estado exclusive_operation == BTRFS_EXCLOP_NONE.

A adição concorrente de vários dispositivos ao mesmo ponto de montagem e a execução de btrfs_exclop_finish antes da asserção em btrfs_exclop_balance fazem com que exclusive_operation seja alterado para o estado BTRFS_EXCLOP_NONE, o que leva à falha na asserção:

fs_info->exclusive_operation == BTRFS_EXCLOP_BALANCE || fs_info->exclusive_operation == BTRFS_EXCLOP_DEV_ADD, em fs/btrfs/ioctl.c:456 Rastreamento de chamada (Call Trace): dump_stack_lvl+0x5d/0x85 dump_stack+0x10/0x12 btrfs_exclop_balance+0x103/0x120 btrfs_ioctl_balance+0x103/0x140 btrfs_ioctl+0x1033/0x14a0 vfs_ioctl+0x51/0xd0 __x64_sys_ioctl+0x73/0xb0 do_syscall_64+0x59/0xc0 entry_SYSCALL_64_after_hwframe+0x6e/0xd8

Cenário 2: Com o estado exclusive_operation == BTRFS_EXCLOP_BALANCE.

A execução de btrfs_exclop_finish antes da asserção em btrfs_exclop_balance faz com que exclusive_operation seja alterado para o estado BTRFS_EXCLOP_PAUSED, o que leva à falha na asserção:

fs_info->exclusive_operation == BTRFS_EXCLOP_BALANCE || fs_info->exclusive_operation == BTRFS_EXCLOP_DEV_ADD, em fs/btrfs/ioctl.c:456 Rastreamento de chamada (Call Trace): dump_stack_lvl+0x5d/0x85 dump_stack+0x10/0x12 btrfs_exclop_balance+0x103/0x120 btrfs_ioctl_balance+0x103/0x140 btrfs_ioctl+0x1033/0x14a0 vfs_ioctl+0x51/0xd0 __x64_sys_ioctl+0x73/0xb0 do_syscall_64+0x59/0xc0 entry_SYSCALL_64_after_hwframe+0x6e/0xd8

Cenário 3: Com o estado exclusive_operation == BTRFS_EXCLOP_DEV_ADD.

A execução de btrfs_exclop_finish antes da asserção em btrfs_exclop_balance faz com que exclusive_operation seja alterado para o estado BTRFS_EXCLOP_PAUSED, o que leva à falha na asserção:

fs_info->exclusive_operation == BTRFS_EXCLOP_BALANCE || fs_info->exclusive_operation == BTRFS_EXCLOP_DEV_ADD, em fs/btrfs/ioctl.c:456 Rastreamento de chamada (Call Trace): dump_stack_lvl+0x5d/0x85 dump_stack+0x10/0x12 btrfs_exclop_balance+0x103/0x120 btrfs_ioctl_balance+0x103/0x140 btrfs_ioctl+0x1033/0x14a0 vfs_ioctl+0x51/0xd0 __x64_sys_ioctl+0x73/0xb0 do_syscall_64+0x59/0xc0 entry_SYSCALL_64_after_hwframe+0x6e/0xd8

Os cenários 1 e 2 são mais fáceis de reproduzir, mas o cenário 3 também pode ocorrer.

Relatado por: [email protected]

Fixes: 104700000000 ("btrfs: add exclusive operation tracking") 000000000000 ("btrfs: add support for paused balance")

Link: https://lore.kernel.org/all/[email protected]

Reported-by: [email protected] Signed-off-by: Filipe Manana <[email protected]> Reviewed-by: David Sterba <[email protected]> Signed-off-by: David Sterba <[email protected]>

Be aware that VulDB is the high quality source for vulnerability data.

Responsável

Linux

Reservar

24/12/2025

Divulgação

24/12/2025

Moderação

aceite

Entrada

VDB-338159

CPE

pronto

EPSS

0.00175

KEV

não

Atividades

muito baixo

Fontes

Want to know what is going to be exploited?

We predict KEV entries!