kernel_samsung_a53x/fs/jfs
Artem Sadovnikov 8aa32dd61f jfs: xattr: check invalid xattr size more strictly
commit d9f9d96136cba8fedd647d2c024342ce090133c2 upstream.

Commit 7c55b78818cf ("jfs: xattr: fix buffer overflow for invalid xattr")
also addresses this issue but it only fixes it for positive values, while
ea_size is an integer type and can take negative values, e.g. in case of
a corrupted filesystem. This still breaks validation and would overflow
because of implicit conversion from int to size_t in print_hex_dump().

Fix this issue by clamping the ea_size value instead.

Found by Linux Verification Center (linuxtesting.org) with Syzkaller.

Cc: stable@vger.kernel.org
Signed-off-by: Artem Sadovnikov <ancowi69@gmail.com>
Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-12-17 13:24:17 +01:00
..
acl.c
file.c
inode.c
ioctl.c
jfs_acl.h
jfs_btree.h
jfs_debug.c
jfs_debug.h
jfs_dinode.h
jfs_discard.c Revert "jfs: Fix uaf in dbFreeBits" 2024-11-24 00:23:06 +01:00
jfs_discard.h
jfs_dmap.c Revert "jfs: UBSAN: shift-out-of-bounds in dbFindBits" 2024-11-24 00:23:06 +01:00
jfs_dmap.h
jfs_dtree.c jfs: fix slab-out-of-bounds Read in dtSearch 2024-11-18 12:13:09 +01:00
jfs_dtree.h
jfs_extent.c
jfs_extent.h
jfs_filsys.h
jfs_imap.c jfs: fix out-of-bounds in dbNextAG() and diAlloc() 2024-11-23 23:21:21 +01:00
jfs_imap.h
jfs_incore.h
jfs_inode.c
jfs_inode.h
jfs_lock.h
jfs_logmgr.c
jfs_logmgr.h
jfs_metapage.c
jfs_metapage.h
jfs_mount.c jfs: fix uaf in jfs_evict_inode 2024-11-18 12:13:09 +01:00
jfs_superblock.h
jfs_txnmgr.c
jfs_txnmgr.h
jfs_types.h
jfs_umount.c
jfs_unicode.c
jfs_unicode.h
jfs_uniupr.c
jfs_xattr.h
jfs_xtree.c
jfs_xtree.h
Kconfig
Makefile
namei.c
resize.c
super.c
symlink.c
xattr.c jfs: xattr: check invalid xattr size more strictly 2024-12-17 13:24:17 +01:00