计算机病毒自诞生至今,已在互联网肆虐了二十多个年头,随着计算机技术的不断成长,各种反病毒软件也随之问世,许多计算机用户也或多或少地了解了一些计算机安全方面的知识,但正所谓道高一尺魔高一丈,计算机病毒的自我保护手段也在不断地升级着,各种免杀,各种伪装更是层出不穷,今天我们将给大家介绍一种比较少见的病毒伪装方法——后缀欺骗.
在我们下载一个文件后,许多有着一定防病毒知识的用户都会先留意下病毒的后缀名,以图片文件为例,用户们下载后都会看下后缀名是不是为jpg/bmp等图片文件后缀,在确定其并非为病毒伪装的图片时,才会将其打开.但是!您确定这真的是个图片文件么?
以下以exe伪装reg文件进行演示.
右图为exe伪装reg:
双击打开后并未出现传说中的添加注册表项提示,反而是出现了下图的界面:
嗯,看到此界面,请不要吃惊,不要惊讶.注意!不是exe捆绑!不是regedit被感染!只是修改了文件名!对!你没听错!原本需要通过捆绑才能实现伪装现在仅需要通过修改文件名便可实现!还等什么!赶快拿起手头的鼠标操作吧!
下面简略描述下伪装方法:
1.提取出reg文件的图标(一般在system32\regedit.exe中,可参考附件资源)
2.随便写一个程序,将程序图标修改成reg文件的图标
3.将程序生成后,右键重命名,以演示中的test.exe.reg文件为例.先将文件名清空,输入"test.",然后右键-插入 Unicode控制字符-RLO(见下图),然后再输入"ger.exe"(以上文件名不包含引号)
这个时候大家是不是看到文件名已经变成了"test.exe.reg"呢?
想来大家也都明白了出现这个结果是因为插入了unicode控制字符,但是想来还有一些人并没完全明白,下面就让笔者来帮大家解释一下.(嗯....你懂的话也麻烦你不要说..因为你说了我就无话可说了.)
我先给大家介绍下unicode控制字符的含义.
unicode编码又称统一码,顾名思义是用于统一字符,以满足跨语言、跨平台进行文本转换,处理,以满足不同地区不同阅读习惯的一种编码.而unicode控制字符说得通俗一点就是为字符的转换选择一种计算方法,用于实现各种不同结果的转换.
演示中我们所使用的控制字符RLO的含义是强制字符成为从左到右的字符,也就是将一串原本按从左到右读的习惯表示出来的文本转换成按从右到左读的方法表示出来.(如文件名ger.exe转换成exe.reg).与之相对的控制字符是LRO:强制字符成为从左到右的字符.
演示所介绍到的伪装方法,便是根据这个原理进行的后缀反转.有趣的是当使用反转符号后,反转符号会随着文件名被写入,所以当你在资源管理器中输入原文件名时,会提示找不到文件,因为这个时候用于伪装的文件名已经成为了真正的文件名.
该方法虽然刁钻,但也并非无法看出破绽,只要细心点不难发现,虽然显示的文件后缀是reg,但系统显示的文件类型仍然是应用程序.(如图)
另外还有一点需要注意的就是此方法对杀毒软件基本无效,所以裸奔的童鞋们请注意了!提高警惕啊亲!
中国行者联盟 - ITS.T.A.R.S网络研发团队
下边是样本链接
分类下载 |