NTFS文件系统文件寻址实操记录

前言

最近在学NTFS,发现网上的博客千篇一律,讲的不够通透,于是决定自己写一篇。

本文章通过寻找文件地址这个任务,讲述了NTFS文件系统$Boot文件、$MFT文件的结构,对$MFT文件中的A0、80属性进行了重点分析。

本文对于NTFS的具体每种属性的字段含义不会详细阐述,因此可以预先了解相关知识,或者在看到文中提到这些知识时使用搜索引擎详细查证一下。

个人认为讲的比较好的博客和资源:

  • https://www.cnblogs.com/lsh123/p/15789479.html
  • https://blog.youkuaiyun.com/enjoy5512/article/details/50935972
  • https://www.ntfs.com/ntfs-partition-boot-sector.htm
  • https://github.com/BigGan/Windows-Hack-Programming/issues/3
  • https://www.intohard.com/thread-61790-1-1.html

任务背景

在一块NTFS硬盘中存在如下文件:
在这里插入图片描述
其中demo文件夹中有如下文件:
在这里插入图片描述
目标是,通过解析NTFS底层数据,找到上述所有文件的源数据。

当然,无论是010 editor还是winhex还是各类工具,其实都能够很快的通过程序找到上述文件,但是为了探究系统文件寻址的底层流程,我们认为有必要在不使用解析程序的条件下走一遍这样的流程。

实验过程

使用winhex打开硬盘:
在这里插入图片描述
硬盘的前8个字节告诉我们这是一块NTFS的硬盘。

众所周知,NTFS包含了16个元文件和数据区,其结构如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AndrewMe8211

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值