查看: 15327|回复: 97
收起左侧

[分享] 给力免杀及相关负载分析报告

  [复制链接]
dayu66888
发表于 2014-11-25 12:05:31 | 显示全部楼层 |阅读模式
本帖最后由 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群。受害者加入群后,会被告知:需要知道价格,单独询问群管理员。当单独询问群管理员时,便会收到对方发来的“价格表”,通过一些列简单的招数,诱使受害者激活《价格表》中携带的恶软,完成恶软植入。
以下是与两位恶软散播者的聊天过程,展示了他们如何诱骗用户:


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 5分享 +3 魅力 +2 人气 +3 收起 理由
dongwenqi + 1 版区有你更精彩: )
xflcx1991 + 1 版区有你更精彩: )
heaven888 + 2
屁颠屁颠 + 3 版区有你更精彩: )
wjy19800315 + 1 学习

查看全部评分

dayu66888
 楼主| 发表于 2014-11-25 12:06:38 | 显示全部楼层
本帖最后由 dayu66888 于 2014-11-25 13:47 编辑

四、外界感染量

        经过九、十两月对给力免杀产出的恶软进行了监控,百度杀毒共帮助用户拦截不同威胁7487例。这些受害者中,其中通过QQ接收到恶软的用户为3279名,而通过YY接收到恶软的用户为803名。以下是全国各地区截获量统计以及全国分布图:


可以看出,经过免杀的恶软传播覆盖了全国各个地区。广东省的受害者以及制毒者最多。


五、加载器代码简要分析

加载器(Loader)代码均被插入在正常程序文件中,在所有截获的样本中,它们的存在形式大致有以下几种:
1、Loader将内部数据解密为映像并调用,以样本970C2B1EACD3CDEC9B10C38440BB7BB为例,从导出函数MemDraw开始执行,进入decode_and_run,如下图:

decode_and_run在初始化解密用的KEY后开始解密,被解密数据为文件内的_encode_data:

需要被解密数据为:


2、Loader代码打开外部数据文件,将文件内数据解密为PE映像并调用。以样本CC08F953618682043E817B4C5428C126为例,通过替换DLLMain函数的内容,直接进入了Loader代码,主要逻辑便是打开数据文件,解密后动态加载PE映像执行。‘



六、流行负载简要分析

我们选取了一个今年9月份截获的恶软文件包进行分析,包含的重要文件如下:


1、行为概述
        “价格表.exe“执行时加载“HSInst.dll”,“HSInst.dll”中的Loader对第一个数据文件(pic)进行解密,得到DLL2的内容并直接加载至进程中。DLL2执行,解密另一个数据文件(png),得到DLL3内容并直接加载至进程中,DLL3为后门程序,负责完成所有的恶意功能。DLL3为一个后门程序,具有:基本的文件、注册表远程操作、屏幕截取、音视频截取、键盘记录、下载执行、远程桌面开启等功能。用户的计算机中毒后,便成为“肉鸡”任人控制。

2、初始化以及伪装
DLL3有一个导出函数Run,一切从这里开始。
第一步解出后门上线需要用到的URL,实际上已经类似明文了,将后面的0xC0经过处理变成00,解密方式是与特定字符异或再相加。

(URL解密函数)
之后调用rundll32.exe显示真正的图片,这也是伪装的必要部分。

之后开启线程尝试连接,目标地址就是之前解密得到的URL,IP地址与微博地址都会尝试。
  
如果是通过微博的方式可以从目标微博首页的签名处获得一个IP地址(下图中红色框中的字符串),这个IP将被用于之后的连接控制服务器。有意思的是,这个微博的用户名叫“在线收获”,不知此人共计收获了多少“肉鸡”。

通过腾讯微博的搜索功能,共计发现了1256名类似的用户。这些用户的资料的家乡字段,基本在广东湛江,这也进一步说明广东省湛江市为最大的此类恶意软件源头。


3、篡改现有模块文件,实现自启动
        使用了免杀同样的手法,将一小段启动代码注入到现有模块文件中。当这些模块被加载时,这段启动代码被执行,进而启动了后门程序的执行流程。
通过遍历进程,定位特定的几款软件(多为网游)进程,接着对这些程序启动时必须加载的动态库进行代码注入,达到自启动的目的。被关注的程序包括:《畅游》,《星辰变》,《第九大陆》,《御龙在天》,《问道》,《53客服》。


当发现系统当中存在目标程序时,便会从这些进程主映像的文件路径下选择某个特定的DLL或者OCX模块进行注入,而腾讯的两款游戏是通过注册表查找的方式。程序被选择注入的文件对应关系如下:

注入完成之后,会在该路径下生成一个快捷方式xxx.lnk,这个LNK文件指向之前被复制到%APPDATA%目录下的原始EXE的副本。
被注入代码的模块中,恶意代码通过篡改入口点开始的第一条CALL(E8)指令获得执行机会,而具体的功能代码,则被放置到入口点所节的尾部空隙处。

插入的代码非常短小,其功能就是执行之前创建的快捷方式。代码如下:


4、后门功能
C&C功能派发函数结构:

整个命令派发为一个switch,不同的功能号执行对应的操作。大部分子功能通过创建新线程的方式来实现,主要包括:
- 使用GetRawInputData获取键盘输入:

- 使用GDI函数进行屏幕截图:

- 视屏音频监控功能:

- 修改远程连接默认端口:

其他功能不再一一列举,总体来说,后门功能较为全面。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 1人气 +1 收起 理由
dongwenqi + 1 版区有你更精彩: )

查看全部评分

dayu66888
 楼主| 发表于 2014-11-25 12:07:01 | 显示全部楼层
本帖最后由 dayu66888 于 2014-11-25 14:12 编辑

七、免杀效果测试

2014年11月7日,使用用户提交的给力免杀生成channel.dll,并提交至VirScan和VirusTotal进行扫描,无一引擎对其报毒,扫描结果见URL:
VirScan(0/39) : http://r.virscan.org/report/c9421252e8739eed827cf9ffbd98c245
VirusTotal(0/53):https://www.virustotal.com/en/fi ... nalysis/1415330413/
       
接着,以九、十两月截获的7487个样本为测试集,使用360杀毒5.0以及百度杀毒3.0进行对测试。(力免杀之前主要的免杀对象为360杀毒)
360杀毒的测试结果,总体检出率为: 4986/7487= 66.60%,并不理想,结果如图:

(11/7最新,无常规引擎)

分析其扫描日志,其中由Trojan.Generic报毒的有2645项,由QVM报毒的有2215项,QVM的检出贡献连一半都没达到。
百度杀毒3.0的测试结果为:Win32.Trojan.BonBonLdr.a检出量为7264,CCE引擎检出量为99,总计检出率为7448/7487 = 99.48%,结果如图:

2014年11月17日,随机抽取一个11月1日截获的样本,提交至VirScan和VirusTotal,检出结果均不理想,只有VirusTotal上的Rising检出,结果URL如下:
VirSacn(0/39): http://r.virscan.org/report/d0131475945bc31317d78ef29bd0b7a6
VirusTotal(1/55):https://www.virustotal.com/en/fi ... nalysis/1416222217/
而百度杀毒3.0的“雪狼”引擎则可以检出这个样本,结果如下图。

接着,又选取了11月1日至17日截获的2401个样本作为测试集进行测试。360杀毒5.0测试结果为:总检出率为:1610/2401=67.06%,其中,QVM检出量为884,约占总检出量的一半。截图如下:

(11/17最新,无常规引擎)

百度杀毒3.0的总检出率为:2318/2401=96.54%,截图如下:


通过以上的测试,非常直观的展现了给力免杀的免杀效果,即使是15天之前成功感染了用户的活跃样本,依然有众多反病毒厂商无法检出。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 2人气 +2 收起 理由
dongwenqi + 1 版区有你更精彩: )
xilinfeng2008 + 1 一条深藏不露的大鱼啊

查看全部评分

dayu66888
 楼主| 发表于 2014-11-25 14:02:14 | 显示全部楼层
本帖最后由 dayu66888 于 2014-11-25 14:13 编辑

八、免杀原因分析

给力免杀对QVM引擎具有较好的免杀效果,至于为什么,由于无法了解QVM真正的工作方式,所以无法给出合理的答案。
不妨从给力免杀的实现方式来进行猜测。给力免杀采用的最重要的手段是:将短小的恶意代码注入到一个已经被标记为安全(或无害)的程序文件中。这样恶意代码存在方式, 即使是人工静态分析,也不能轻易地在第一时间找到恶意代码。从整个文件的角度去衡量,无害的程序代码占据了文件的绝大部分。如果不采用针对性的分类特征提取方式,机器学习算法势必会做出错误的判断,因为目标文件“看”上去实在是太像正常程序了。这就如同一个苍蝇被埋在一碗粥里,怎么看都还是一碗粥,只有一勺一勺吃粥时才能发现,这原来是碗不能喝的粥。
可以说,这种免杀方法,是专门对付QVM这类基于机器学习算法的木马引擎的。

九、基于特征的处理方法

在意识到了普通的机器学习类木马引擎无法很好地解决这个问题后,开始寻找其他方式进行应对。
经过对截获样本一段时间的跟踪和分析,发现了一段给力免杀留下的特殊标记,而百度杀毒便对这段“特殊标记”进行了识别,获得较高的检出率,在这类恶软到达用户计算机时便进行了查杀。这段“特殊标记”为图中红框内代码:

从11月开始,给力免杀作者开始对百度杀毒进行免杀,网上出现了“23點6.9免杀百度生成器”这样免杀包。免杀后的文件中,这段“特殊标记”也至此消失了。
百度杀毒一直持续关注着给力免杀以及其负载的变化,并在第一时间对给力免杀的变化作出了应对,引入了程序指令流分析的方法来发现嵌入在正常程序文件中的恶意代码,所以依然可以对给力免杀保持96%以上的检出率。

十、总结

给力免杀工具可能是目前看来对360免杀效果最好的工具,在过去的一年多时间里一直没有消失,而是持续地演化着。

给力免杀采用了类似感染型病毒的手法,将小段恶意代码插入到正常程序中,但又不改变正常程序文件的表面特征(PE文件结构),这使得一些使用机器学习算法的反病毒引擎无法很好地识别。

使用给力免杀的恶意软件主要通过IM传播,以网络游戏道具交易为土壤,以“价格表”等为诱饵进行钓鱼。从截获的样本来看,主要负载为后门程序。用户计算机被感染后,计算机将成为“肉鸡”被控,之后可能在地下黑市买卖。

从对给力免杀的不同处理方式可以看出,不同的技术,有其特定的优缺点。面对不断变化的对抗形式,只有持续、快速的感知现实世界的变化,认真、诚恳地分析威胁,选择合适的技术手段应对和处理威胁,才能真正长久地保护我们的用户不受恶软的侵害。

参考:《石晓虹-QVM:云计算环境下的海量恶意软件智能识别技术》
http://www.taodocs.com/p-5574868.html
感谢:Chai提供的负载分析报告

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 4人气 +5 收起 理由
sfzjn + 1 精品文章
至尊潮流 + 2 版区有你更精彩: )
sadfish5 + 1 版区有你更精彩: )
wjy19800315 + 1 感谢提供分享

查看全部评分

狂少小雨
发表于 2014-11-25 14:18:50 | 显示全部楼层
哇哦,写了这么多,内容好丰富哦。
芊芊细手
发表于 2014-11-25 14:26:13 来自手机 | 显示全部楼层
狂少小雨 发表于 2014-11-25 14:18
哇哦,写了这么多,内容好丰富哦。

你看得懂么←_←我根本看不懂TUT
芊芊细手
发表于 2014-11-25 14:26:47 来自手机 | 显示全部楼层
肉鸡是什么 我只知道鸡肉←_←

评分

参与人数 1人气 +1 收起 理由
dayu66888 + 1 一边吃鸡肉去。。一边水去。。好好工作去!.

查看全部评分

三无先森
头像被屏蔽
发表于 2014-11-25 14:27:37 | 显示全部楼层
lz辛苦
三无先森
头像被屏蔽
发表于 2014-11-25 14:28:41 | 显示全部楼层
芊芊细手 发表于 2014-11-25 14:26
肉鸡是什么 我只知道鸡肉←_←

经鉴定吃货一枚~
1094947421
发表于 2014-11-25 14:32:15 | 显示全部楼层
雪狼技术上是很不错 的,可惜静默安装卫视,而且百度杀毒开监控所有文件,就会卡视频播放和游戏,3秒一卡,卡的潇洒,5步一停,停的有型。
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-11-26 02:47 , Processed in 0.130130 second(s), 18 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表