360互联网安全中心近期监测到“我爱卡”网站(51credit.com)出现挂马情况,进一步分析发现,访问该网站会加载跳转到漏洞攻击包(Exploit Kit)页面的恶意Flash广告,没有专业安全防护的访问者电脑会感染号称勒索软件“集大成者”的Sage2.0,造成文件被加密勒索的惨重损失。相比以往的漏洞攻击包,此次整个攻击链完全使用Flash文件实现,不再需要HTML与Java脚本交互功能,呈现出新的攻击形式和较高的技术水平。 2. 技术分析 2.1 广告挂马点 图1 整体挂马流程 我爱卡网站采用了较为常见的OpenX开源广告系统,该广告系统具备较完整的商业生态,被很多大型网站采用。但是因为审核不严格,已有多次漏洞攻击包通过该广告系统进行传播[1]。 图2 返回挂马广告内容 浏览我爱卡网站任意页面时,会插入了一个广告Flash文件hxxp://consultantvideo.info/admedia/player.swf。而在另外一个被挂马网站中,这个Flash则被直接托管在挂马网站上。显然,攻击者将这个Flash文件伪装成广告提供给广告运营商,广告运营商审核不严直接在投放网站上上线。打开该Flash文件,其实是没有任何可以显示的内容,实际功能则是利用AS3代码实现了获取Flash版本号并进行相关判断、加载Flash文件功能,使得只有是IE浏览器并且安装了Flash11~21版本才会进一步加载第二个Flash文件。通过该文件拦住了所有无法触发漏洞的用户访问,减少了实际攻击页面的暴露,同时这个文件非常简洁并且没有明显特征,易于躲过查杀。 图3 Flash加载代码 2.2 第二个Flash加载器 接下来加载的第二个Flash文件仍然是一个加载器,功能与第一个Flash文件相同,实现了版本判断、加载下一个Flash的功能。但是与第一个Flash不同,这个文件是动态生成的,根据该文件的网络请求响应头,可以猜测该文件是利用php动态生成,对比变化的样本,发现每隔一段时间要加载下一个Flash的地址都会发生变化。这个Flash网址使用了Exploit Kit所常见的域名生成算法,并不停的变换三级域名地址,这样确保对实际攻击文件的网址难以再次访问。另外,由于该文件是动态生成的,所以Content-Type被有意或者无意设置成默认的text/html,这可以让部分依赖Content-Type进行文件类型判断的网络检测设备忽略,从而降低被发现的概率。 图4 动态返回Flash内容 图5 生成的不同域名 2.3Flash 漏洞攻击文件 直到这时,访问的第三个网址才真正引入了攻击Flash文件。但是攻击者的防范措施仍然不止于此,在访问最终的Flash漏洞文件网址时,有时会出现无缘无故无法访问的情况,猜测攻击者使用了IP屏蔽或者随机阻拦请求的策略,增加了分析重现的难度。并且根据用户Flash版本信息,服务器会返回不同的漏洞利用脚本,这种手段与我们之前分析过的一起广告挂马事件中的方法一致,并且也利用了相同的漏洞攻击代码[2],唯一不同的是这次并没有进行代码的混淆,能够较为容易的分析攻击代码。 具体分析该文件代码,发现漏洞攻击代码被使用RC4加密后切分保存在了Flash的BinaryData字段中,根据不同的发起请求的Flash版本号,解密后获得的漏洞攻击脚本分别是CVE-2015-8651 [3]、CVE-2016-1019 [4]、CVE-2016-4117 [5]的攻击代码,这几个漏洞也是目前各个攻击包常用的方式,具备较高的攻击成功率。 图6 攻击代码类型 2.4 释放载荷 (责任编辑:本港台直播) |