В ядре Linux устранена следующая уязвимость: ext4: добавить i_data_sem защита в ext4_destroy_inline_data_nolock() Исправьте гонку между вст…
В ядре Linux устранена следующая уязвимость: ext4: добавить i_data_sem защита в ext4_destroy_inline_data_nolock() Исправьте гонку между встроенным уничтожением данных и картографированием блоков. Функция ext4_destroy_inline_data_nolock() изменяет данные inode макет путем очистки EXT4_INODE_INLINE_DATA и установки EXT4_INODE_EXTENTS. При этом другой поток может исполнять ext4_map_blocks(), который тесты EXT4_INODE_EXTENTS, чтобы решить, стоит ли звонить ext4_ext_map_blocks() или ext4_ind_map_blocks(). Без защиты i_data_sem ext4_ind_map_blocks() может получить inode с EXT4_INODE_EXTENTS флагом и триггерным утверждением. Ядро BUG на fs/ext4/indirect.c:546! EXT4-fs (loop2): немонтаж файловой системы. недействительный код: 0000 [#1] PREEMPT SMP KASAN NOPTI Аппаратное название: QEMU Стандартный ПК (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014 RIP: 0010:ext4_ind_ind_blocks.cold+0x2b/0x5a fs/ext4/indirect.c:546 Трейс по вызову: <TASK> ext4_map_blocks+0xb9b/0x16f0 fs/ext4/inode.c:681 _xt4_get_block+0x242/0x590 fs/ext4/inode.c:822 ext4_block_write_begin+0x48b/0x12c0 fs/ext4/inode.c:1124 ext4_write_begin+0x598/0xef0 fs/ext4/inode.c:1255 ext4_da_write_begin+0x21e/0x9c0 fs/ext4/inode.c:3000 generic_perform_write+0x259/0x5d0 mm/filemap.c:3846 ext4_buffered_write_iter+0x15b/0x470 fs/ext4/file.c:285 ext4_file_write_iter+0x8e0/0x17f0 fs/ext4/file.c:679 call_write_iter включить/linux/fs.h:2271 [inline] do_iter_readv_writev+0x212/0x3c0 fs/read_write.c:735 do_iter_write+0x186/0x710 fs/read_write.c:861 vfs_iter_write+0x70/0xa0 fs/read_write.c:902 iter_file_splice_write+0x73b/0xc90 fs/splice.c:685 do_splice_from fs/splice.c:763 [inline] direct_splice_actor+0x10f/0x170 fs/splice.c:950 Щебрито_direct_to_actor+0x33a/0xa10 fs/splice.c:896 do_splice_direct+0x1a9/0x280 fs/splice.c:1002 do_sendfile+0xb13/0x12c0 fs/read_write.c:1255 __do_sys_sendfile64 fs/read_write.c:1323 [inline] __se_sys_sendfile64 fs/read_write.c:1309 [inline] __x64_sys_sendfile64+0x1cf/0x210 fs/read_write.c:1309 do_syscall_x64 арка/x86/entry/common.c:51 [inline] do_syscall_64+0x35/0x80 арка/x86/entry/common.c:81 вход_SYSCALL_64_after_hwframe+0x6e/0xd8
| Продукт | Вендор | Статус |
|---|---|---|
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux-5.10 | Отслеживается | |
| linux-6.1 | Отслеживается | |
| linux-allwinner-5.19 | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается | |
| linux-aws | Отслеживается |