本帖最后由 dayu66888 于 2014-11-25 14:11 编辑
给力免杀及相关负载分析报告
—— 免杀方法、流行负载、免杀效果和应对方式
一、免杀器介绍
给力免杀是一款用于帮助恶意软件躲避杀毒软件静态查杀的工具。运行后点击【生成】按钮即免杀完毕。
生成的恶软由多个文件组成,有DLL,LNK,BAT,BMP等,并且其中部分那文件为隐藏方式。
以下是另外两种常见的文件组合方式:
(1)
(2)
总的来说,它们基本上由这么几种文件组成:
1. DLL/EXE:“白加黑”加载时,被杀软判定为“白”的EXE文件、注入过恶意代码的可执行文件;
2. 经过加密的数据文件:内部为经过加密的恶软程序,大部分为后门程序。
3. 用于迷惑用户的图片文件:根据散播时的场景不同而不同,基本是网游中道具的价格表。
4. 用于激活恶意软件的快捷方式:内部为使用rundll32.exe加载恶意DLL的命令行。
二、免杀使用的手段
1、填充随机字符串,MD5每次不同
首先,为了避免基于哈希值的云查杀,每次生成的PE文件内容均不同。具体做法是每次生成的文件时,PE头里DOS程序中的字符串会被随机替换。
2、免杀器的每次更新,会选用不同的宿主PE文件
根据9月、10月截获的样本,目前已经使用过的PE(DLL/EXE)的文件名大致为81个:
3、采用不同的恶意代码激活方式
A.利用异常处理获得执行机会。以样本80FCDDD8FC98343F0C5FBB4D88511A6E(channel.dll,2014-11-7由用户上传的免杀器生成)为例,这种方式修改了C++程序中,try-catch实现机制中的函数指针,在程序发生异常时,获得执行机会。如下图:
B. 替换或增加导出函数。以样本A3D4FFC53F68E80881546E4B8E361B5D(MdPlayer.dll,2013-12-20截获)为例,导出表的最后一个导出函数是恶意代码的开始,经过几条无效的浮点指令后,便转入Loader的功能代码。如下图:
C. 直接修改或覆盖内部函数。将恶意代码以直接替换原正常函数的方式注入到EXE/DLL内部,或者注入代码后修改某一函数调用指令,将程序执行流程引入恶意代码。以下列举三个相关样本:
1、修改正常程序指令流中的Call指令,将Call的目标地址设为恶意代码地址。样本(MD5:8461d8183bd68500d25833630f6aa7dc,HAutorun.EXE,截获于 2014/5/16)中,正常文件的某条Call指令被修改,调用目标被指向了一段用于解密Loader的代码。如图:
2、直接覆盖程序内部函数体。样本EB4B87A2EDF5DA5867ED3E78CA370883(Gpkitclt.dll,截获于2013/12/28)中,将原来的DLLMain函数的内容替换为一段用于解密Loader的代码。如图:
3、覆盖原程序中的某一小段代码片段。在样本946578E38A3DA1964C68987538793D7B中,可以看到下图红框中的代码段,明显与上下文代码功能不符。它的作用便是将Loader的代码复制后启动。
三、制造及传播
这一年多的时间里,每天都会新增不少由给力免杀生成的恶软。以一个位于广东省湛江市的I P(113.86.141.87)为例,它在今年10月份,制造了73个免杀过的恶软程序。
给力免杀产出的恶软,主要在IM群中,以网游道具交易为名进行传播,主要IM有:QQ、YY,原因是QQ是目前最大的PC端IM软件,而YY则是网游用户经常使用的IM软件。
恶软散播者会建立相应的游戏道具交易群,在网游内发送邮件进行钓鱼,诱骗受害者加入IM群,受害者也可能通过IM的群搜索功能主动找到IM群。受害者加入群后,会被告知:需要知道价格,单独询问群管理员。当单独询问群管理员时,便会收到对方发来的“价格表”,通过一些列简单的招数,诱使受害者激活《价格表》中携带的恶软,完成恶软植入。
以下是与两位恶软散播者的聊天过程,展示了他们如何诱骗用户:
|