②新建一个文件后,打开菜单“文件”→“导入”,这时会弹出一个文件对话框,让你选择一个文件。不用考虑,随便选择一个文件就可以了。 ③然后打开“编辑”→“命令行”,在弹出的命令行输入对话框中输入“cmd.exe /c del d:\test.txt”,点“确定”。 ④然后,在菜单中选择“编辑”→“复制数据包”。 ⑤接着,随便在硬盘上找个地方,我就直接在桌面上了。在桌面上点击鼠标右键,在弹出菜单中选择“粘贴”,这时我们可以看到在桌面创建了一个碎片对象文件。 现在我们可以双击一下这个文件,CMD窗口一闪而过后,再到D盘看看,测试文件D:\test.txt已经被删除了!现在你该知道了,当时在对象包装中输入地命令被执行了。好危险啊,如果这条命令是要删除系统中的一个重要文件,或者是格式化命令format之类的危险命令,那该有多么的可怕! 下面让我们一起来看看这个“隐身杀手”的真正面目吧! 2. 技术原理 依照微软的解释,SHS文件是一类特殊的OLE(Object Linking and Embedding,对象连接和嵌入)对象,可以由Word文档或Excel电子表格创建。通过选择文档中文本或图像的一块区域,然后拖放该区域到桌面上的某处,就可以创建一个Windows碎片对象,或称为SHS文件(此文件是不可读文件)。但是你可以用任何其它你想要的文件名重新命名SHS文件,或者拖放SHS对象到另一个文档(同样地,你可以剪切和粘贴)。 也就是说,我们所输入的命令作为OLE对象嵌入到对象包装程序新建的文件中了,而微软为了能方便的将嵌入到文件的对象进行复制,使用了一种技术Shell Scrap Object(简称SHS),就是说,当你在不同文件间复制对象时,Windows是将对象包装成一个碎片对象来进行复制的。因此,一旦我们不是在文件间进行复制粘贴,而是直接将碎片对象粘贴到硬盘上,就会产生一个.SHS文件。这个碎片对象文件保存了原来对象的所具备的功能,原来对象包含的命令同样会被解析执行,这正是其可怕这处! 3. 防范方法 (1)“野蛮”法 SHS文件既然不是可执行文件,当然需要其他的程序来解析执行了,我们去掉解析执行的关联就可以简单防止这种文件中潜伏的威胁了。 运行注册表编辑器regedit.exe,在HKEY_CLASSES_ROOT\.shs主键下,将默认值ShellScrap删除,现在双击.SHS文件,看,不会执行了吧?弹出了一个对话框,让我们选择打开.SHS文件需要的程序,此时你选择“记事本”程序看就非常安全了。 更彻底一点的办法是将HKEY_CLASSES_ROOT\ShellScrap\shell\open\command下的打开.SHS文件的关联完全去掉,现在双击.SHS文件,连选择运行程序的对话框也不出现了,它会直接要求在控制面板重建文件关联。 ②更换“碎片对象”文件的默认图标。由于碎片对象文件的默认图标与文本文件图标非常相似,容易麻痹人,所以我们要更换它的图标。打开资源管理器,选中“查看”菜单下的“文件夹选框”,在弹出的对话框中选择“文件类型”标签,在“已注册的文件类型”下找到“碎片对象”。单击右上角“编辑”按钮,在打开的“编辑文件类型”对话框中单击上边的“更改图标”按钮。打开C:\WINDOWS\SYSTEM\Pifmgr.dll,从出现的图标中选一个作为“.SHS”文件的新图标即可。 (3)更多防治手段 ①如果是病毒文件隐藏了其真实扩展名“SHS”,而你在反病毒软件中设置成扫描指定程序文件、而不是扫描所有文件(如只扫描可执行文件),那么反病毒软件是无法发现病毒的,所以请在反病毒软件的指定程序文件中加入“.SHS”文件的扫描。各种防病毒软件的设置大同小异,比较简单,请大家自己进行设置。 ②禁止“碎片对象”文件及“指向文档的快捷方式”文件。 三.改头换面的OutLook邮件附件 除了上面所说的两类危险的“TXT”文件,还存在另一种危险的“TXT”文件——改头换面的OutLook邮件附件!即一个看起来是TXT的文件其实是个EXE文件!下面我以OutLook2000简体中文版为例进行详细说明。 1. 开启OutLook2000,新建一个邮件,选择菜单栏中的“格式”→“带格式文本”,在邮件正文点击一下鼠标左键,选择菜单“插入”→“对象”,点击“由文件创建”→“浏览”,选择Windows目录下的notepad.exe,点击“确定”,在新邮件的主体部分出现notepad.exe及其图标。 |