2016-11-16 110 views
0

我知道NTFS支持ADS,这意味着多个数据流,而每个数据流都有不同的名称。但是,我目前正在尝试解析我的音量,并且特定的MFT记录拥有3 未命名的,唯一的(大小和数据运行方式不同)数据流。 该文件填充了256mb的“〜”(单个字符),并且所有的数据流都在相关的MFT记录中找到,这些记录收集了属性列表属性。在一个正常的“流程”中,我将解析所需流的数据运行,并从所需的偏移量中读取所需的长度。我应该如何处理这种情况? (==读取文件内容)

回答

1

每个备用数据流(ADS)应该有一个唯一的名称。这是正确的,你有几个属性类型$DATA,但它应该有不同的名称。例如。如果某个文件multiple.txt具有ADS名称overhere它应该具有以下$DATA属性。从here样品:

Type: $DATA (128-1) Name: $Data  Resident size: 15 
Type: $DATA (128-5) Name: overhere Resident size: 26 

的128-1全称是multiple.txt和128-5的全名是multiple.txt:overhere

其他不知名的属性通常是:

Type: $STANDARD_INFORMATION (16-0) Name: N/A Resident size: 72 
Type: $FILE_NAME (48-2)    Name: N/A Resident size: 90 
Type: $OBJECT_ID (64-3)    Name: N/A Resident size: 16 

尝试istat Sleuthkit工具为您的MFT记录:

istat -f ntfs <SourceName> <ID> 

随着other tools from collection你将能够复制这些数据流的内容。

这是一个开源代码,因此您可以查看NTFS实现的详细信息,并调查从$DATA检索的数据的方式。

相关问题