CVE-2025-68337 in Linux
Сводка
по VulDB • 01.06.2026
В ядре Linux устранена следующая уязвимость:
jbd2: предотвращение срабатывания BUG_ON в jbd2_journal_get_create_access() при повреждении файловой системы
Возникает проблема при повреждении файловой системы: ------------[ cut here ]------------
kernel BUG at fs/jbd2/transaction.c:1289! Oops: invalid opcode: 0000 [#1] SMP KASAN PTI
CPU: 5 UID: 0 PID: 2031 Comm: mkdir Not tainted 6.18.0-rc1-next RIP: 0010:jbd2_journal_get_create_access+0x3b6/0x4d0 RSP: 0018:ffff888117aafa30 EFLAGS: 00010202 RAX: 0000000000000000 RBX: ffff88811a86b000 RCX: ffffffff89a63534 RDX: 1ffff110200ec602 RSI: 0000000000000004 RDI: ffff888100763010 RBP: ffff888100763000 R08: 0000000000000001 R09: ffff888100763028 R10: 0000000000000003 R11: 0000000000000000 R12: 0000000000000000 R13: ffff88812c432000 R14: ffff88812c608000 R15: ffff888120bfc000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f91d6970c99 CR3: 00000001159c4000 CR4: 00000000000006f0 Call Trace: <TASK> __ext4_journal_get_create_access+0x42/0x170 ext4_getblk+0x319/0x6f0 ext4_bread+0x11/0x100 ext4_append+0x1e6/0x4a0 ext4_init_new_dir+0x145/0x1d0 ext4_mkdir+0x326/0x920 vfs_mkdir+0x45c/0x740 do_mkdirat+0x234/0x2f0 __x64_sys_mkdir+0xd6/0x120 do_syscall_64+0x5f/0xfa0 entry_SYSCALL_64_after_hwframe+0x76/0x7e ------------[ cut here ]------------
Эта проблема возникает в режиме errors=continue при наличии сбоев хранения данных. В файловой системе наблюдаются многочисленные несоответствия данных.
В случае несоответствия данных файловой системы, например, если битовая карта блоков не установлена для указанного блока, это может привести к ситуации, когда блок, который должен быть зафиксирован, повторно выделяется и используется. В результате следующее условие не выполняется, что вызывает срабатывание BUG_ON. Конечно, вполне возможно создать проблемный образ, который может вызвать это BUG_ON через специфические операции. На самом деле, я создал такой образ и легко воспроизвел эту проблему.
Поэтому J_ASSERT() справедливо только в идеальных условиях, но может не выполняться в исключительных сценариях. Прямое использование J_ASSERT() в аномальных ситуациях приведет к сбою системы, что, очевидно, нежелательно. Поэтому здесь мы напрямую вызываем прерывание JBD вместо немедленного вызова BUG_ON.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.