CVE-2022-50581 in Linux
Resumen
por VulDB • 2026-08-23
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
hfs: corregir lectura fuera de límites (OOB Read) en __hfs_brec_find
Syzbot reportó un bug de lectura fuera de límites (OOB read):
================================================================== BUG: KASAN: slab-out-of-bounds in hfs_strcmp+0x117/0x190 fs/hfs/string.c:84 Read of size 1 at addr ffff88807eb62c4e by task kworker/u4:1/11 CPU: 1 PID: 11 Comm: kworker/u4:1 Not tainted 6.1.0-rc6-syzkaller-00308-g644e9524388a #0 Workqueue: writeback wb_workfn (flush-7:0) Call Trace:
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0x1b1/0x28e lib/dump_stack.c:106 print_address_description+0x74/0x340 mm/kasan/report.c:284 print_report+0x107/0x1f0 mm/kasan/report.c:395 kasan_report+0xcd/0x100 mm/kasan/report.c:495 hfs_strcmp+0x117/0x190 fs/hfs/string.c:84 __hfs_brec_find+0x213/0x5c0 fs/hfs/bfind.c:75 hfs_brec_find+0x276/0x520 fs/hfs/bfind.c:138 hfs_write_inode+0x34c/0xb40 fs/hfs/inode.c:462 write_inode fs/fs-writeback.c:1440 [inline]
Si el inode de entrada de hfs_write_inode() es incorrecto: struct inode struct hfs_inode_info struct hfs_cat_key struct hfs_name u8 len # len es mayor que HFS_NAMELEN(31), que es la longitud máxima de un nombre de archivo HFS
Se produjo una lectura fuera de límites (OOB read): hfs_write_inode() hfs_brec_find() __hfs_brec_find() hfs_cat_keycmp() hfs_strcmp() # Se produce OOB read debido a que len es demasiado grande
Corregir esto añadiendo una comprobación de len en hfs_write_inode() antes de llamar a hfs_brec_find().
If you want to get best quality of vulnerability data, you may have to visit VulDB.