知识屋:更实用的电脑技术知识网站
所在位置:首页 > 网络安全 > 技术文献

制作免杀的ASP网页木马

发布时间:2011-06-30 19:45:48作者:知识屋

  2005年是免杀技术突飞猛进的一年,越来越多的人熟悉了简单的PE文件免杀操作。而杀毒软件也是在查杀方面下足了功夫,使得修改文件变得越来越困难。但是,无论定位和修改多么麻烦,只要杀软利用的是特征码扫描,PE文件就可以通过相对简单的特征码修改达到免杀。而CCL一直没有涉足的方面是脚本免杀,坛里也有朋友让我改进一下,因此最近给CCL加上了定位脚本特征码的功能,并对一款asp木马进行了测试,结果怎么样呢? 
    这里我选择了海阳顶端网ASP木马2006版。由于并不知道杀软是怎样定义脚本文件的特征码,所以我的操作与定位PE文件相同。杀软仍用大名鼎鼎Kaspersky。先查一下吧,卡巴报警发现Backdoor.ASP.Ace.aw。注意末尾的aw,这是杀软对同一个文件不同版本的特征码定义,有时我们需要运用定位过程中版本号的变化来确定特征码的位置。 
    首先假设将特征码定位器CCL设置成手动定位,生成文件200个,打开海洋的木马主文件2006.asp。这时弹出了定位范围选择窗口,由于脚本文件不是PE文件,因此没有分段,整个文件就是一个整体。如图1所示,段名为整个文件,段大小就是整个文件的大小。 

 



    直接点确定,对整个文件进行定位。生成文件完毕后对目标进行查杀,结果,只剩下一个文件没有被杀,OUT_00000000_000001C3,这说明当从偏移0开始1C3个字节的数据被填0时,该文件免杀。我们看一下这里是什么。 
代码:


    脚本文件我不太熟,但总比改汇编指令简单,试着修改一下吧,原则还是不能破坏原文件功能。我们知道,asp中代码是在<% %>之间的,于是我们在每一个前插入一个<% %>,就像汇编插入nop空指令一样。保存修改,再用卡巴查一下。还是报警,但是这次显示的是Backdoor.ASP.Ace.w。这就说明:我们刚才修改是特征码中的一处,但不是全部,也就是说我们把aw中的a代表的特征码改掉了,但是w仍然在。 
    我们再用CCL打开修改过的2006.asp,设置保持不变,再重复上述步骤。经过查杀后,200个文件剩下了6个。看一下结果 
        -------------定位结果------------ 
      序号    起始偏移     大小     结束偏移 
    0001    00000000    000001C3    000001C3     
      0002    000140A2    000008CF    00014971     

    第1段仍是在文件头部。我分析是卡巴在对脚本文件检测前会分析文件的完整性,而1号结果正好将“<%”给替换掉,这样的脚本代码是没法运行的,因此卡巴就不认为它有毒。(卡巴对PE操作也存在同样问题,这也是很多人用CCL定位卡巴总是遇到结果定位在PE文件头部的原因。)我们看2段处是什么,该段结果范围较大,我们找有“特色”的改。最终目标定在如下语句: 
代码:





    我们将“文件上传成功”改为“上传成功”,保存后再检测。OK,免杀成功了。运行一下试试,海洋的各项功能正常。当然,文件上传成功后的提示已经变了。如图2。 
 

 



    总结一下:卡巴对恶意脚本的定义仍是沿用特征码的方式,且明显没有PE文件的特征码定义那样复杂。希望杀软早日在检测方式上产生根本性的改变!

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜