mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 20:54:10 +08:00
019d22eb0e
The data_size and valid_size fields of non resident attributes should be
less than the its alloc_size field, but this is not checked in
ntfs_read_mft function.
Syzbot reports a allocation order warning due to a large unchecked value
of data_size getting assigned to inode->i_size which is then passed to
kcalloc.
Add sanity check for ensuring that the data_size and valid_size fields
are not larger than alloc_size field.
Link: https://syzkaller.appspot.com/bug?extid=fa4648a5446460b7b963
Reported-and-tested-by: syzbot+fa4648a5446460b7b963@syzkaller.appspotmail.com
Fixes: (
|
||
---|---|---|
.. | ||
lib | ||
attrib.c | ||
attrlist.c | ||
bitfunc.c | ||
bitmap.c | ||
debug.h | ||
dir.c | ||
file.c | ||
frecord.c | ||
fslog.c | ||
fsntfs.c | ||
index.c | ||
inode.c | ||
Kconfig | ||
lznt.c | ||
Makefile | ||
namei.c | ||
ntfs_fs.h | ||
ntfs.h | ||
record.c | ||
run.c | ||
super.c | ||
upcase.c | ||
xattr.c |