能力值:
( LV8,RANK:130 )
|
-
-
2 楼
从LINUX上找.
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
http://forum.eviloctal.com/thread-33513-1-1.html
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
http://forum.eviloctal.com/thread-33513-1-1.html
这个已经看过了,看到获取$mft再往下就看不明白了,且里面有此数据结构感觉不太对, 不知是不是我RP问题 我就想知道具体的步骤,从$mft再去找哪里直到找到文件??
SageNdis大哥给个地址我去学习学习
感谢大家关注继续等。
|
能力值:
( LV12,RANK:420 )
|
-
-
5 楼
在mft里通过b+ tree来找file record,从而找到文件,
如果想偷懒可以使用FSCTL_GET_NTFS_FILE_RECORD这个 CTL CODE
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
在mft里通过b+ tree来找file record,从而找到文件,
如果想偷懒可以使用FSCTL_GET_NTFS_FILE_RECORD这个 CTL CODE
看见360大牛回复我就激动 这个b+ tree是什么样的结构如何获取?
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
数据结构没学好看见“树”就吐血,
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
你是不是要自己通过自己读取扇区内容,根据ntfs文件系统结构,查找某一文件内容?上午看你帖的时候还以为你要恢复$MFT这个文件的内容
找某一个文件的内容(如要读取文件F:\WINDOWS\SYSTEM32\abc.exe,具体步骤如下:
(1)读取分区表/分区链表信息,找到磁盘F的起始扇区。
(2)读取F盘的第一个扇区(分区的BOOTSETOR)取得分区的每簇大小,MFT表起始簇号等信息。
(3)读取MFT表的第五个记录(根目录)找到目录索引所在簇号。
(4)读取根目录索引,查找WINDOWS目录所在的MFT记录号
(5)读取WINDOWS目录的MFT记录,找到目录索引所在簇号。
(6)读取WINDOWS目录的索引,查找SYTEM32目录所在MFT记录号
(7)读取SYTEM32目录的MFT记录,找到目录索引所在簇号。
(8)读取SYTEM32目录的索引,查找abc.exe所在MFT记录号
(9)读取abc.exe文件的MFT记录,找到它的DATA属性。
(10)根据DATA属性中指定的文件数据存放位置读取出abc.exe文件的数据。
推荐参考书:《数据安全与编程技术》 涂彦晖,戴士剑
|
能力值:
( LV9,RANK:610 )
|
-
-
9 楼
又见Userinit.exe~~
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
你是不是要自己通过自己读取扇区内容,根据ntfs文件系统结构,查找某一文件内容?上午看你帖的时候还以为你要恢复$MFT这个文件的内容
找某一个文件的内容(如要读取文件F:\WINDOWS\SYSTEM32\abc.exe,具体步骤如下:
(1)读取分区表/分区链表信息,找到磁盘F的起始扇区。
(2)读取F盘的第一个扇区(分区的BOOTSETOR)取得分区的每簇大小,MFT表起始簇号等信息。
(3)读取MFT表的第五个记录(根目录)找到目录索引所在簇号。
(4)读取根目录索引,查找WINDOWS目录所在的MFT记录号
(5)读取WINDOWS目录的MFT记录,找到目录索引所在簇号。
(6)读取WINDOWS目录的索引,查找SYTEM32目录所在MFT记录号
(7)读取SYTEM32目录的MFT记录,找到目录索引所在簇号。
(8)读取SYTEM32目录的索引,查找USERINIT.EXE所在MFT记录号
(9)读取USERINIT.EXE文件的MFT记录,找到它的DATA属性。
(10)根据DATA属性中指定的文件数据存放位置读取出abc.exe文件的数据。
推荐参考书:《数据安全与编程技术》 涂彦晖,戴士剑 感谢hust白客大哥的详细指导,在这里有还几个地方不太明白:
1.“(3)读取MFT表的第五个记录(根目录)找到目录索引所在簇号。”这里的根目录在MFT第五个记录是固定的吗?始终在第五个?这个记录是根据哪个结构来找到的?
2.“(8)读取SYTEM32目录的索引,查找USERINIT.EXE所在MFT记录号
(9)读取USERINIT.EXE文件的MFT记录,找到它的DATA属性。”
这里的userinit.exe是不是应该为abc.exe??
|
能力值:
( LV9,RANK:610 )
|
-
-
11 楼
是的,那位仁兄把它搞窜了~
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
是机器狗太嚣张的原因
|
能力值:
( LV12,RANK:1010 )
|
-
-
13 楼
可在 sourceforge上找 linux下解析 fat32/ntfs的源码.
|
能力值:
( LV12,RANK:450 )
|
-
-
14 楼
给你个好玩的东西吧。你看了应该会高兴。
|
能力值:
( LV7,RANK:100 )
|
-
-
15 楼
给你个好玩的东西吧。你看了应该会高兴。 上传的附件 Windows系统文件操作.rar (2009-02-12 01:16, 253.1 KB, 7 次下载)
瞻仰weolar大侠的好东东~~~
thx
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
[QUOTE=astrayfish;576637].(3)读取MFT表的第五个记录(根目录)找到目录索引所在簇号。”这里的根目录在MFT第五个记录是固定的吗?始终在第五个?这个记录是根据哪个结构来找到的?QUOTE]
NTFS元数据文件列表
序号 元数据文件 功能
0 $MFT 主控文件表本身
1 $MFTMirr 主控文件表的部分镜像
2 $LogFile 日志文件
3 $Volume 卷文件
4 $AttrDef 属性定义列表文件
5 $Root 根目录
6 $Birmap 位图文件,记录了卷中簇的分配情况
7 $Boot 引导文件,记录了系统用于引导的数据情况
8 $BadClus 卷的坏簇列表文件
9 $Secure 安全文件
10 $UpCase 大小写字符转换表文件
11 $Extended metadata directory 扩展元数据目录
12 $Extend\$Reparse 重解析点文件
13 $Extend\$UsnJrnl 加密日志文件
14 $Extend\$Quota 配额管理文件
15 $Extend\$ObjID 对象ID文件
16~23 为以后扩展而保留
23~ 用户文件和目录
NTFS重要元数据文件说明如下:
(1)MFT中的第0个记录就是MFT自身。
(2)由于MFT文件本身的重要性,为确保文件系统结构的可靠性,系统专门为它准备了一个镜像文件($MFTMirr),也就是MFT中的第1个记录。
(3)第5个记录是根目录($\),其中保存了存放于该卷根目录下所有文件和目录的索引。
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
可在sourceforge上找linux下解析fat32/ntfs的源码.
感谢sudami指点,你发的http://forum.eviloctal.com/thread-33513-1-1.html开始还行,越往后越看不明白了
weolar大侠的“windows系统文件操作.rar”我看了的确很高兴,同样感谢hust白客大侠
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
MFT中的文件记录对应各个文件,与FAT32不同NTFS文件系统将文件的所有信息都放入属性中,如果想查看的话,可以使用NTFS_Explorer工具,那个工具就是用来解析NTFS文件系统的。
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
1.“(3)读取MFT表的第五个记录(根目录)找到目录索引所在簇号。”这里的根目录在MFT第五个记录是固定的吗?始终在第五个?这个记录是根据哪个结构来找到的?
根目录固定是第六个(第一个编号是0),应该根据$MFT本身的运行列表来找,而不是固定在mft位置按下排(中间可能是不连续的,不过几乎不可能碰到,但理论上存在),另外mft 及indx结构的大小最好是自己获取,而不是取固定的1024及4096,解析的时候,别忘了0X20属性,读取任何其他属性前,请先查看0X20属性是否存在
NTFS的资料还是看linux那的比较全,可以打印出来参考。
http://forum.eviloctal.com/thread-33513-1-1.html这里介绍的太少
|
能力值:
( LV2,RANK:10 )
|
-
-
20 楼
太感谢了...顶上去吧...
|
能力值:
( LV2,RANK:10 )
|
-
-
21 楼
DATARUN后面为非零的情况就错了
|
能力值:
( LV2,RANK:10 )
|
-
-
22 楼
谢谢那个发代码的NB人
|
能力值:
( LV2,RANK:10 )
|
-
-
23 楼
二楼说的不错,不过太难了,一大堆。
|
能力值:
( LV2,RANK:10 )
|
-
-
24 楼
大三的时候倒是用C在unix实现过读取NTFS分区的文件的功能,不过现在毕业一年多了,忘得都差不多了,具体实现应该跟上面那些大牛说的差不多,不过具体实现中还会有很多小问题的,
每个文件属性很多,每个属性的意义和字节数都不同
你可以参考一下http://data.linux-ntfs.org/ntfsdoc.pdf
|
能力值:
( LV2,RANK:10 )
|
-
-
25 楼
下了是要回帖的。。
|
|
|