This series tightens validation of on-disk NTFS metadata in the read path.
The first four patches move index validation closer to the point
where index metadata is read and tighten the structural checks for both
$INDEX_ROOT and INDX block headers. The last patch adds a missing bounds
check before accessing fields in an EA entry.
To: Namjae Jeon <linkinjeon@kernel.org>
Cc: linux-fsdevel@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: charsyam@gmail.com
Signed-off-by: Hyunchul Lee <hyc.lee@gmail.com>
Hyunchul Lee (4):
ntfs: validate index block header more strictly
ntfs: centalize $INDEX_ROOT header validation
ntfs: validate index entries on reading
ntfs: add bounds check before accessing EA entries
---
Changes in v2:
- Added a Tested-by tag.
- Addressed comments by DeaMyung Kang.
* Patch 1: Moved changes to make make ntfs_index_block_inconsistent()
return -EIO from patch 3.
* Patch 1: Made ntfs_index_header_inconsistent() verify the remaining
space before accessing index_header fields.
* Patch 4: Removed a redundant pre-loop check.
fs/ntfs/dir.c | 64 +++-------------
fs/ntfs/ea.c | 16 ++--
fs/ntfs/index.c | 197 ++++++++++++++++++++++++++++++++----------------
fs/ntfs/index.h | 12 ++-
fs/ntfs/inode.c | 15 ++--
5 files changed, 165 insertions(+), 139 deletions(-)
--
2.43.0