数据恢复技术NTFS文件属性
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8B
2B 2B 2B 2B 4B 4B 8B 2B
日志文件序列号LSN
序列号,用于记录本文件项被使用的次数 硬链接数,即有多少目录指向该文件,只出现在基本文件记录中 第一个属性的偏移地址 标志,第0位表示是使用/删除,第1位表示目录/文件 记录头和属性的实际使用总长度 总共分配给文件记录的长度,通常为400H 索引号,基本文件记录总为0,非0则表示为扩展文件记录 下一属性ID
五、字符编码转换
Windows简体中文版使用的内码是GB-18030,而存 储文件名的时候,为了满足其适应性,采用了 Unicode编码。一个Unicode字符恒定占2个字节, 西文字符保持了同ASCII码的兼容性,而中文字符 则完全不同。
字符 8 ASCII码 38H GB码 38H Unicode码 0038H
24H 28H 2CH 30H 34H 38H
4B 4B 4B 4B 4B 8B
40H
8B
Windows 2000以后才有,更新序列号,是进入元数据文件$UsnJrnl的索引关键字
四、基本属性介绍 – 30H属性
30H属性用于存储文件名,它总是常驻属性,可容 纳255个Unicode字符的文件名长度。 NTFS通过为一个文件创建多个文件名的方式实现 了POSIX式的硬链接,每个文件名属性都有它自己 的详细资料和父目录。 当一个硬链接文件被删除时,就从MFT记录中删掉 这个文件名,当最后一个硬链接也删除时,文件 就真正的删除了。 NTFS针对不同的操作系统提出了三种文件名命名 空间,其字符集从小到大依次为:DOS、WIN32、 POSIX。
A 人
41H
41H CBC8H
0041H 4EBAH
五、字符编码转换
演示对NTFS分区中指定文件的属性分析过程。
1. 准备好NTFS分区的演示环境,如虚拟机、Winhex等。 2. 搜寻指定的文件记录项。 3. 分析主要属性信息。
总结
1.MFT及文件记录项结构。 2.属性头的结构。 3.基本属性的内容分析。 4.字符编码。
含义
09H
0AH 0CH 0EH 10H 18H 20H 22H 24H
1B
2B 2B 2B 8B 8B 2B 2B 4B
属性名长度(0表示无属性名,非0表示属性名的字符个数)
属性名的起始偏移(如果有的话),通常为18H 压缩(0001H)、加密(4000H)、稀疏 (8000H)标志 属性ID 起始VCN 结束VCN 数据运行(即非常驻区域,等同于数据区)的信息的偏移地址 压缩单位大小,0表示未压缩 无意义
四、基本属性介绍 – 30H属性
偏移 ~ 大小 ~ 属性头 含义
00H
08H 10H 18H 20H 28H
8B
8B 8B 8B 8B 8B
父目录的文件参考号(MFT头的记录编号,偏移2CH)
文件创建时间 文件修改时间 MFT修改时间 文件最后访问时间 文件分配大小
30H
38H 3CH 40H 41H 42H
8B
4B 4B 1B 1B L× 2
文件实际大小
标志(传统文件属性) $EA(扩充属性)使用的空间,或$REPARSE_POINT(重解析点属性)的类 型 文件名长度(字符数L) 文件名命名空间(0=POSIX,1=WIN32,2=DOS,3=WIN32 & DOS) Unicode编码的文件名
五、字符编码转换
一、主控文件表结构
主控文件表由若干个文件记录项组成,每个文件 记录项占1024字节,也就是2个扇区。在NTFS分区 中,每个文件都有一个编号,元文件占了头16个 文件记录项,编号为0到15,16到23是保留项,用 户文件从24号开始。其中,第0项便是$MFT。
一、主控文件表结构
MFT区域中的每个记录项都分为记录头和属性列表 两个部分,记录头里包含了本记录项的总体情况 和信息,属性列表里列出了该文件的所有属性。 不同的文件可以有不同的属性,因此,属性列表 的大小是可变的,在所有属性的最后是结束标志 FFFFFFFFH。
三、属性头结构 – 常驻属性
偏移 00H 04H 08H 大小 4B 4B 1B 属性类型 属性大小(包括属性头和属性内容) 是否常驻(00=常驻;01=非常驻) 含义
09H
0AH 0CH 0EH
1B
2B 2B 2B
属性名长度(0表示无属性名,非0表示属性名的字符个数)
属性名的起始偏移(如果有的话),通常为18H 压缩(0001H)、加密(4000H)、稀疏 (8000H)标志 属性ID
作业
请在自己的计算机(或虚拟机)上选择一个NTFS 分区,选择某个文件,对其文件目录项进行分析。
字符编码就是把所有的字符按某个顺序进行编号, 用一个数字(代号)表示其编码。由于不同的地 区有自己的语言和符号,因此编码方案也不同, 我国采用国标(GB)编码。 为了让不同地区的计算机能够正常交换数据信息, 国际上推出了一种Unicode编码,它是全世界统一 编码,常用于网站、数据库等信息的存储与交换, 其优点是能提供最好的兼容性,但不适用于做系 统机内码使用。
10H
14H 16H 17H
4B
2B 1B 1B
属性内容的长度
属性内容的起始偏移(如果没有属性名,则为18H) 索引标志 无意义,通常为0
18H
-
该属性的内容,或属性名(如果有属性名的话)
三、属性头结构 – 非常驻属性
偏移
00H 04H 08H
大小
4B 4B 1B 属性类型 属性大小(包括属性头和属性内容) 是否常驻(00=常驻;01=非常驻)
10H
18H 20H
8B
8B 4B
MFT修改时间
文件最后访问时间 传统文件属性。01=只读文件,02=隐含文件,04=系统文件,20H=档案文件, 40H=设备文件,80H=常规文件,100H=临时文件,200H=稀疏文件, 400H=重解析点文件,800H=压缩文件,1000H=脱机文件,4000H=加密文件 最大版本数,为0则表示没有版本 版本数,如果偏移24H处为0则此处也为0 分类ID(一个双向的类索引) Windows 2000以后才有,所有者ID,用于访问磁盘配额$Quota中索引关键字 Windows 2000以后才有,安全ID,用于访问安全元文件$Secure中索引关键字 Windows 2000以后才有,配额管理,配额占用情况,为0表示未使用配额
2AH
2CH 30H
2B
4B -
Windows XP中使用,边界
MFT记录编号(从0号起始) 更新序列号和更新序列数组
二、NTFS文件属性
在一个NTFS卷中文件所有的信息,包括文件数据 在内,都被认为是文件的属性,而构成该属性的 实际数据则被称为“流”。 不同的文件拥有的属性不一样,有的属性也会在 同一记录项中多次出现,比如文件名属性。 每个属性的头4个字节表示属性类型,接下来的4 个字节表示本属性大小,根据这个信息,我们可 以遍历文件的属性列表。 MFT中的各属性的大小均以8字节为边界。
一、主控文件表结构
文件记录头 10H属性 30H属性 80H属性 B0H属性 结束标志
一、主控文件表结构 – 文件记录头
偏移
00H 04H 06H
长度
4B 2B 2B MFT标志,一定为字符串“FILE” 更新序列号的偏移,通常为30H 更新序列号的大小与数组
含义
08H
10H 12H 14H 16H 18H 1CH 20H 28H
28H
30H 38H 40H
8B
8B 8B -
属性分配大小,是该属性所占的所有簇空间的大小
属性真实大小,即实际占用空间 最初的属性大小(似乎和属性真实大小相同) 属性的运行信息(记录了属性内容的位置和大小),或者为属性名(如果有的话)
四、基本属性介绍 – 10H属性
偏移 ~ 00H 08H 大小 ~ 8B 8B 属性头 文件建立时间,用64位来表示日期和时间,用Windows的时间API函数取得 文件最后修改时间 含义
NTFS文件属性
M6-2 本单元主要内容
ቤተ መጻሕፍቲ ባይዱ一 二 三
主控文件表结构
NTFS文件属性
属性头结构 基本属性介绍
四 五
字符编码转换
M6-2 本单元重难点
重点
主控文件表结构 属性头结构 基本文件属性
难点
主控文件表结构 属性头结构
一、主控文件表结构
主控文件表(MFT)在NTFS文件系统中的地位非常 重要,它记载了该分区中所有的文件记录信息, 甚至还可以包括文件数据。 在格式化时,系统首先确定了主控文件表的起始 位置和大小。主控文件表本身也被当做文件管理, 就是$MFT元文件。
二、NTFS文件属性 – 属性图示
10属性头
属性内容 30属性头 属性内容 30属性头 属性内容
二、NTFS文件属性 – 属性列表
属性类型
10H 20H 30H 40H 50H 60H 70H 80H
属性名
$STANDARD_INFOMATION $ATTRIBUTE_LIST $FILE_NAME $OBJECT_ID $SECURITY_DESCRIPTOR $VOLUME_NAME $VOLUME_INFOMATION $DATA
属性描述
标准信息:文件传统属性,时间属性,硬链接等 属性列表:描述扩展文件记录项中属性的信息 文件名:用Unicode字符表示的文件名 对象ID:具有64字节的标识符,提供API调用访问 安全描述符:文件的访问控制,现在移到$Secure中了 卷名(卷标识):仅存在于$Volume元文件中 卷信息:仅存在于$Volume元文件中 数据:文件的实际数据内容
E0H
1000H
$EA
$LOGGED_UTILITY_STREAM
扩充信息
EFS加密属性:存储合法用户列表、密钥等
三、属性头结构
每个属性又分为属性头和属性内容两部分,属性 头给出了该属性的结构信息。 有的属性内容存储在记录项中(如文件名),称 为常驻属性。有的属性内容很大,需要在MFT外另 外开辟空间存储(如文件数据),则称为非常驻 属性。 有的属性在属性头之后列出了属性名,而有的则 没有,一般存放特殊内容的属性都有属性名。
90H
A0H B0H C0H D0H
$INDEX_ROOT
$INDEX_ALLOCATION $BITMAP $REPARSE_POINT $EA_INFOMATION
索引根:文件目录的根节点
索引分配:文件目录表的子节点 位图:分配空间的使用情况 重解析点,实现卷、目录和应用程序之间的连接 扩充信息属性