我正坐在办公室里对着电脑发呆,只听见门外飘过熟悉的声音:“床前明月光,吃饭先喝汤……”我知道,这是同事小新在召唤我们去吃午饭了。受全球经济危机的影响,我们现在都比较节约,几个要好的同事搞起了“拼饭”。吃饭时,大家自然是你争我抢的,而小新还边抢边对我感叹:“咱在现实生活中还有鱼香肉丝可以吃,可我在虚拟网络中能捉到的‘肉鸡’却是越来越少了。兄弟,你有啥方法让我的木马躲过杀毒软件的查杀啊?”我边吃边回答:“你这是活该!这么多的木马程序,你却偏偏固执地要用‘灰鸽子’。想我教你木马免杀?没问题!老板,加两份烧白,算到这哥们头上!”
注:本文仅为技术研究,文中相关软件有技术研究兴趣的读者可在网上搜索下载。
找准木马的特征字符串
吃完饭回到办公室,我开始思考:每个木马文件中都有自己特定的字符串信息,而这些信息一旦被杀毒软件设置成特征码,就非常容易被查杀。这就好比警察根据“犯罪嫌疑人的左手有一颗痣”等人体特征来开展侦缉工作一样。要是把木马文件中的特征字符串给修改了,不就能躲过大多数杀毒软件的查杀了吗?说干就干,我叫来小新,开始向他演示。
首先,将“灰鸽子”目录中的CServer.dat文件复制出来,改名为CServer.exe。因为该文件是未进行配置的木马服务端,所以在做了免杀修改后可以直接调用。然后,运行反汇编工具C32Asm,点击“文件”菜单中的“打开16进制文件”命令,导入CServer.exe。了解“灰鸽子”木马的朋友都知道,它是通过IE浏览器来传输数据的,因此和IE浏览器相关的字符串也就是杀毒软件检查的重点。所以,我点击“搜索”菜单中的“搜索”命令,在弹出窗口中选择“类型”为“ANSI字符串”,并在“搜索”项中输入了“iexplore.exe”,即IE浏览器的主程序。点击“下一个”按钮,立即在CServer.exe文件中找到了一处相关信息“:Program FilesInternet Exploreriexplore.exe”,在它左边所对应的就是特征字符串。
特征字符串乾坤大挪 移在C32Asm中,用鼠标选中这段特征字符串,点击右键“拷贝”。拖动C32Asm的滚动条到窗口底部,找到其中的00处(即没有代码的空白区域),点击右键“粘贴”。记录下粘贴的地址,我这里是000BA950(如图2)。把滚动条拉回到前面,依旧选中特征字符串。点击右键“填充”,在弹出窗口中选择“使用16进制填充”并输入“31”,点击“确定”按钮。现在这段特征字符串就变成“1111111111111111”了(之所以这样修改,是为了后面的操作方便)。在C32Asm中把修改完成的CServer.exe存盘。
运行《偏移量转换器》这款小软件,导入CServer.exe。在“ 文件偏移”中输入字符串的新地址(即000BA950),点击“转换”按钮,在“内存地址”中就得到了该字符串的内存地址004C1D50。
用OllyICE这款汇编软件打开CServer.exe。首先,点击右键“查找”菜单中的“所有参考文本字串”项,在新窗口中找到“ASCII "1111111111111111"”这一段,双击后返回到汇编内容窗口中。选中这段汇编信息,点击右键“汇编”,将地址那部分改写成新的内存地址004C1D50(如图4)。然后,点击右键“复制到可执行文件”→“选择部分”,在新窗口中点击右键“保存文件”。
又运行C 32As m,导入被Ol l y I C E修改过的CServer.exe。用“搜索”菜单中的“搜索”命令,搜索“1111111111111111”这段字符串。因为这段字符串已经没用了,所以找到后点击右键“填充”,选择“使用十六进制填充”并输入“00”,存盘。
最后,将CServer.exe这个“灰鸽子”木马服务端,改名为以前的CServer.dat,并复制回“灰鸽子”的目录里就行了。
就这样,以前常被杀毒软件清剿的“灰鸽子”木马如今披上了一件免杀的外衣,在杀毒软件的眼皮底下肆意游荡……
Text/牧马人
……
关注读览天下微信,
100万篇深度好文,
等你来看……