summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Komarov <almaz.alexandrovich@paragon-software.com>2024-08-19 16:26:59 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-03-13 12:53:25 +0100
commiteffac690913af9a6c3d6cd967281a34e47ed3e4c (patch)
tree4ea5735bd3ed54eeeea927a97203a777bef2c513
parentdbd3e4adb98e50ede74f00b3fa956fa29ef95e6c (diff)
fs/ntfs3: Add rough attr alloc_size check
commit c4a8ba334262e9a5c158d618a4820e1b9c12495c upstream. Reported-by: syzbot+c6d94bedd910a8216d25@syzkaller.appspotmail.com Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com> Signed-off-by: Bin Lan <bin.lan.cn@windriver.com> Signed-off-by: He Zhe <zhe.he@windriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--fs/ntfs3/record.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/ntfs3/record.c b/fs/ntfs3/record.c
index b2b98631a000..bfb1f4c2f271 100644
--- a/fs/ntfs3/record.c
+++ b/fs/ntfs3/record.c
@@ -325,6 +325,9 @@ struct ATTRIB *mi_enum_attr(struct mft_inode *mi, struct ATTRIB *attr)
} else {
if (attr->nres.c_unit)
return NULL;
+
+ if (alloc_size > mi->sbi->volume.size)
+ return NULL;
}
return attr;