NTFS交换数据流隐写
NTFS文件系统时windows NT内核系列操作系统支持的、专门为网络和磁盘配额的,文件加密等管理安全特性设计的磁盘格式。NTFS比FAT文件系统更加稳定,更能也更为强大。
NTFS数据流文件也被称为 Alternate data streams,简称ADS,是NTFS文件系统的一个特性之一,允许单独的数据流文件存在,同时也允许文件附着多个数据流,除了主文件流之外还允许许多非主文件流寄生在主文件流中,使用资源派生的方式来维持与文件的相关信息,并且这些寄生的数据流文件我们使用资源管理器无法看到。
交换数据流介绍
Windows NTFS文件系统的交换数据流(Alternate Data Steams, ADS)可以追溯到Windows NT3.1,为了满足Windows系统和苹果HFS(Hierachical File System) 系统的交互需求诞生了交换数据流。NTFS使用的交换数据流来存储文件的相关元数据,包括安全信息、原作者以及其他元数据。
对于隐藏文件,Windows NTFS中的交换数据流事一种简单并且隐蔽的方式。
利用系统命令隐藏文件
在一个空文件夹中新建一个txt文件,命名为flag.txt,输入要显示的内容1
notepad flag.txt
接下来,执行如下命令使用上面生成的文件创建第一个交换数据流
1 | notepad flag.txt:hide.txt |
然后输入要隐藏显示的内容,如下图所示
保存之后使用dir
命令查看当前文件夹下的文件
如图,只显示一个文件
常用的浏览技术对交换数据流都是免疫的,创建成功后,显示的文件大小也没有变化,所以通过一般手段是看不到这个隐藏文件的。一个文件可以创建多个交换数据流,使用相同的命令,注意隐藏文件不要使用相同的文件名。
因为开启针对文件交换数据流的扫描效率特别低,会比关闭状态下降低90%的扫描速度,所以很多查杀病毒的软件都默认关闭了这个功能。
例题演示
在深思杯·省大学生网络安全技能大赛中有一道隐写题,就是和NTFS数据流隐写相关的,题目名字是你真的很不错,下载下来是一个rar
后缀的压缩包,如下图所示,题目后来的提示是使用WinRAR解压
这次比赛中其他题目下载下来压缩包一般是zip
后缀和7z
后缀,唯有这个是rar
后缀,而且提示是使用WinRAR,这里有一个点就是,WinRAR是支持NTFS数据流压缩的,如果使用不支持NTFS数据流压缩的软件进行解压,会丢失隐藏的数据,因此这个题目提示使用WinRAR打开。
使用WinRAR解压后,直接使用NtfsStreamsEditor扫描解压出的目录
可以看到扫描出了一个隐藏的png文件,使用软件的导出功能将扫描出的图片文件导出,打开导出的文件就可以直接看到flag了。
Reference
- NTFS文件隐写
- 《数据隐藏技术揭秘》
本文作者 : W4rnIn9
原文链接 : http://joner11234.github.io/article/85357d8d.html
版权声明 : 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!