更新时间:2024-05-20 18:12
ADS流文件,计算机科学名词。随着杀毒软件功能的日益强大,病毒总会借助各式各样的隐藏手段来逃避杀毒软件的“追捕”。有些病毒会通过设置文件属性来隐藏自身,从而长期伏在计算机中,使自己很难被用户发现。一种更为隐蔽、危害性更大的隐藏方法逐渐被病毒利用,即利用NTFS数据流来隐藏病毒,此类病毒我们称之为ADS流病毒或ZeroAcess。
NTFS交换数据流(Alternate Data Streams,简称ADS)是NTFS磁盘格式的一个特性。在NTFS文件系统下,每个文件都可以存在多个数据流,意思是除了主文件流之外还可以有许多非主文件流寄宿在主文件流中,这些利用NTFS数据流寄宿并隐藏在系统中的非主文件流我们称之为ADS流文件。虽然我们无法看到ADS流文件,但它们却是真实存在。下面通过一个实例来具体展现ADS流文件的创建、关联及隐藏过程。
(1) 在C盘根目录下创建名为“test.txt”的文本类型宿主文件,输入内容为“This is a test file”。
图1:创建名为“text.txt”的宿主文件
(2) 创建数据流文件并关联宿主文件,点击“开始”—“运行”,输入“cmd”后回车,在DOS窗口中输入“echo This is an ADS > test.txt:ads.txt”后回车。该命令的含义为:创建一个名为ads.txt内容为“This is an ADS”的数据流文件与宿主文件test.txt进行关联。此时回到C盘根目录下查看,只有test.txt并无ads.txt,打开test.txt查看起内容仍为“This is a test file”也未做任何改变,那么数据流文件ads.txt到底到哪去了呢?“dir”命令也无法查看到。这时,在DOS窗口中输入“notepad test.txt:ads.txt”,在弹出的记事本中就可以看到ads.txt中的内容。
除了DOS命令之外,我们还可以借助一些特殊扫描工具让ADS流文件现形,这里推荐一款工具——NTFS Streams info。运行NTFS Streams info后,先选择要扫描的目录,然后到“Scan”栏目下点击“Start”便可检索出当前目录下所有的ADS流文件以及被关联ADS流文件的宿主文件。点击“View”,右键选中ADS流文件可对其进行编辑、保存、删除等操作,该工具还能轻松地创建ADS流文件,功能算是比较全面,这里就不多做介绍了。
这里展示了ADS流文件的创建及与宿主文件关联的过程。实际上,ADS流文件是不需要依赖宿主文件而能独立创建的,并且文件类型不限,图片、声音或可执行程序都可以作为ADS流文件隐藏起来。试想,若这里的ADS流文件换成病毒文件会怎样?不过,ADS流文件只能在NTFS分区下运行,若放到其他的文件系统分区中则会造成NTFS数据流的丢失。
ADS流病毒的现象
(1) 病毒环境下许多ARK工具无法使用,杀毒软件被关闭,感染系统驱动。
(2) 任务管理器中出现一个明显可疑的进程2840235807:3765482838.exe,无法结束。
(4) 注册表中可以看到病毒服务。
(1) 双击打开V0.43B版本XueTr会弹出如下窗口,这是编写者针对ADS流病毒做的改动,需将XueTr升级到V0.42版本以上方能避免XueT被ZeroAcess恶意结束。这大大降低了处理该病毒的难度,否则需要到PE环境下清除病毒。
(2) 进入“内核”—“系统回调”栏目,删除病毒的系统回调。(3) 进入“内核”—“DPC定时器”栏目,摘除病毒定时器。(4) 进入“服务”栏目,删除病毒服务。(5) 回到“进程”栏目,右键选中病毒进程,结束进程并删除文件。(6) 通过XueTr的“内核”—“对象劫持”栏目可以看到系统驱动被感染。但XueTr没有恢复被感染驱动的功能,这时就要借助其他工具了,这里我选择PowerTool,也是一款很不错的ARK工具,它的“系统驱动感染检测”功能正弥补了XueTr在这方面的不足。通过这一功能可以很快找到被感染的驱动ipsec.sys,右键选中将其恢复即可。上述操作完成后重启一下计算机,ADS流病毒已不复存在。
ADS流病毒属于运行时较为隐蔽、处理起来较为棘手的一类病毒,更可恨的是它会感染系统驱动,若不恢复染毒驱动,那么在重启电脑之后你会发现病毒又加载起来了,之前所做的一切全都白费。不过正所谓“魔高一尺,道高一丈”,随着ADS流病毒的流行,一些ARK工具的编写者也对工具进行了升级,从而保证工具能在病毒环境下也能正常运行这些工具,再逐步清除病毒,恢复系统。