文章源自略懂百科-http://wswcn.cn/84160.html
综述文章源自略懂百科-http://wswcn.cn/84160.html
2016年5月10日,Adobe公司宣布了一个已被利用的Flash Player零日漏洞,这个严重的漏洞编号为CVE-2016-4117,影响到21.0.0.226及更早版本的Flash Player,横跨Windows、Mac、Linux和Chrome OS平台。攻击者可以利用此漏洞让目标Flash Player崩溃,并且有可能控制受影响的操作系统。文章源自略懂百科-http://wswcn.cn/84160.html
2016年5月12日,Adobe官方发布了Flash Player新版本修补了当前的漏洞。文章源自略懂百科-http://wswcn.cn/84160.html
官方介绍网址如下:文章源自略懂百科-http://wswcn.cn/84160.html
https://helpx.adobe.com/security/products/flash-player/apsa16-02.html文章源自略懂百科-http://wswcn.cn/84160.html
什么是Flash Player?
AdobeFlash Player 是一款高级客户端运行时使用的播放器。它短小精悍,能够在各种浏览器、操作系统和移动设备上使用,功能强大,兼容性高。最初由Macromedia编写,之后被Adobe公司收购后由Adobe公司继续开发并分发。文章源自略懂百科-http://wswcn.cn/84160.html
AdobeFlash Player最初设计目的为播放二维向量动画,之后成为开发创造丰富型互联网应用程序、流视频音频的工具。Flash使用矢量图形的技术来最小化文件以及创建节省网络带宽和下载时间的文件,因此Flash成为嵌入网页中的小游戏、动画以及图形用户界面常用的格式,最终给用户带来美妙的数字体验。文章源自略懂百科-http://wswcn.cn/84160.html
影响的版本文章源自略懂百科-http://wswcn.cn/84160.html
Adobe Flash Player <= 21.0.0.226文章源自略懂百科-http://wswcn.cn/84160.html
不受影响的版本文章源自略懂百科-http://wswcn.cn/84160.html
Adobe Flash Player > 21.0.0.226(当前最新版本:21.0.0.242)文章源自略懂百科-http://wswcn.cn/84160.html
漏洞原理
根据现有资料的分析,该漏洞是由于调用DeleteRangeTimelineOperation类时,没有进行placement的类型检测,造成越界访问,最终实现远程代码执行。文章源自略懂百科-http://wswcn.cn/84160.html
漏洞位于com.adobe.tvsdk.mediacore.timeline.operations中:文章源自略懂百科-http://wswcn.cn/84160.html
当调用DeleteRangeTimelineOperation类时,其参数为Placement类的一个的实例placement,此时AVM虚拟机则会调用内部函数getBinding来获取一个bind id。文章源自略懂百科-http://wswcn.cn/84160.html
int __thiscall sub_1035F480(int this_DeleteRangeTimelineOperation, int a2)文章源自略懂百科-http://wswcn.cn/84160.html
{文章源自略懂百科-http://wswcn.cn/84160.html
…文章源自略懂百科-http://wswcn.cn/84160.html
this_DeleteRangeTimelineOperation1 = this_DeleteRangeTimelineOperation;文章源自略懂百科-http://wswcn.cn/84160.html
varPlacement = sub_10787840(aThis, (int)placement);文章源自略懂百科-http://wswcn.cn/84160.html
varPlacement_1 = varPlacement;文章源自略懂百科-http://wswcn.cn/84160.html
varControlledIndex = sub_107C84E0(文章源自略懂百科-http://wswcn.cn/84160.html
*(_DWORD *)(*(_DWORD *)(*(_DWORD *)(this_DeleteRangeTimelineOperation1 + 12) + 8) + 4),文章源自略懂百科-http://wswcn.cn/84160.html
*(_DWORD *)(*(_DWORD *)(*(_DWORD *)(this_DeleteRangeTimelineOperation1 + 12) + 8) + 20),文章源自略懂百科-http://wswcn.cn/84160.html
&varPlacement_1);文章源自略懂百科-http://wswcn.cn/84160.html
obj = *(_DWORD *)(this_DeleteRangeTimelineOperation1 + 0xC);文章源自略懂百科-http://wswcn.cn/84160.html
varControlledObj = *(_DWORD *)(*(_DWORD *)(obj + 8) + 4 * (varControlledIndex >> 3) + 0x3C);文章源自略懂百科-http://wswcn.cn/84160.html
v24 = (*(int (**)(void))(*(_DWORD *)obj + 8));文章源自略懂百科-http://wswcn.cn/84160.html
v14 = alloca(v13 & 4);文章源自略懂百科-http://wswcn.cn/84160.html
v15 = (*(int (__cdecl **)(int, _DWORD, int *))(*(_DWORD *)(varControlledObj + 8) + 8))(varControlledObj, 0, &v24);文章源自略懂百科-http://wswcn.cn/84160.html
…文章源自略懂百科-http://wswcn.cn/84160.html
}文章源自略懂百科-http://wswcn.cn/84160.html
bind id =varControlledIndex >> 3文章源自略懂百科-http://wswcn.cn/84160.html
varControlledObj=[obj+4*(bind id)+0x3Ch],poc样本可以造成varControlledObj ==0,读取[varControlledObj+ 8]地址处的内存时crash。文章源自略懂百科-http://wswcn.cn/84160.html
也就是说基类DeleteRangeTimelineOperation的Placement属性可以被越界读取,在利用的时候,可以通过派生类创建Placement的新类型属性,比如Boolean 或者Integer,达到控制bind id的目的:文章源自略懂百科-http://wswcn.cn/84160.html
public dynamic class Data4 extennds DeleteRangeTimelineOperation文章源自略懂百科-http://wswcn.cn/84160.html
{文章源自略懂百科-http://wswcn.cn/84160.html
public var a0:uint;文章源自略懂百科-http://wswcn.cn/84160.html
public var a1:uint;文章源自略懂百科-http://wswcn.cn/84160.html
public var a2:uint;文章源自略懂百科-http://wswcn.cn/84160.html
public var a3:uint;文章源自略懂百科-http://wswcn.cn/84160.html
public var a4:uint;文章源自略懂百科-http://wswcn.cn/84160.html
public var a5:uint;文章源自略懂百科-http://wswcn.cn/84160.html
public var a27:Object;文章源自略懂百科-http://wswcn.cn/84160.html
public var placement:Object = true;文章源自略懂百科-http://wswcn.cn/84160.html
public function Data4文章源自略懂百科-http://wswcn.cn/84160.html
{文章源自略懂百科-http://wswcn.cn/84160.html
this.a27 = this;文章源自略懂百科-http://wswcn.cn/84160.html
对于原理的检测主要关注:文章源自略懂百科-http://wswcn.cn/84160.html
1.定义了一个基于DeleteRangeTimelineOperation的派生类。文章源自略懂百科-http://wswcn.cn/84160.html
2.在该派生类中对placement的类型进行定义。文章源自略懂百科-http://wswcn.cn/84160.html
漏洞利用
该漏洞主要被攻击者利用以散布Locky勒索软件家族,根据fireeye的报告,其过程为:文章源自略懂百科-http://wswcn.cn/84160.html
1.含有漏洞的swf被嵌入到了doc文档中:文章源自略懂百科-http://wswcn.cn/84160.html
该漏洞发挥作用的条件为Flash Player的版本大于21.0.0.196文章源自略懂百科-http://wswcn.cn/84160.html
2.条件符合时,触发第一阶段shellcode的执行文章源自略懂百科-http://wswcn.cn/84160.html
功能为:从攻击者的服务器上下载并执行第二阶段shellcode。文章源自略懂百科-http://wswcn.cn/84160.html
3.第二阶段shellcode:文章源自略懂百科-http://wswcn.cn/84160.html
一是下载并执行恶意程序文章源自略懂百科-http://wswcn.cn/84160.html
二是下载并打开诱饵文档文章源自略懂百科-http://wswcn.cn/84160.html
4.恶意程序:连接第二台服务器用于指挥控制,等待进一步的操作。文章源自略懂百科-http://wswcn.cn/84160.html
流程:文章源自略懂百科-http://wswcn.cn/84160.html
对于该wild利用,检测的针对点:文章源自略懂百科-http://wswcn.cn/84160.html
1.Doc是否嵌入了swf,没有则不进行该样本检测;文章源自略懂百科-http://wswcn.cn/84160.html
2.若有则检测flash版本,小于21.0.0.196则不继续检测。文章源自略懂百科-http://wswcn.cn/84160.html
大于21.0.0.196后则重点检测Downloader行为,但是由于请求地址不完全或者变动性,建议检测到有exe下载行为则告警。文章源自略懂百科-http://wswcn.cn/84160.html
修复方法
受影响的用户可以升级到Adobe Flash Player 21.0.0.242。文章源自略懂百科-http://wswcn.cn/84160.html
目前厂商已经发布了升级补丁修复了安全问题,请到厂商主页下载:文章源自略懂百科-http://wswcn.cn/84160.html
https://get.adobe.com/cn/flashplayer文章源自略懂百科-http://wswcn.cn/84160.html
绿盟科技处理建议
1. 检查Flash版本。文章源自略懂百科-http://wswcn.cn/84160.html
访问网站http://www.adobe.com/software/flash/about/,则会提示当前系统中的Adobe Flash Player版本。文章源自略懂百科-http://wswcn.cn/84160.html
Windows用户可以进入%SystemRoot%System32MacromedFlash目录下,右键单击FlashUtil_ActiveX.exe/ FlashUtil_ActiveX.dll/ Flash.ocx查看属性中的详细信息,其中文件版本标识了当前Flash Player的版本。文章源自略懂百科-http://wswcn.cn/84160.html
2. 确定自己的Flash Player为受影响的版本后,打开https://get.adobe.com/flashplayer。文章源自略懂百科-http://wswcn.cn/84160.html
3. 取消下图中对勾,点击立即安装,保存安装包,下载完后打开执行。文章源自略懂百科-http://wswcn.cn/84160.html
声明文章源自略懂百科-http://wswcn.cn/84160.html
本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。文章源自略懂百科-http://wswcn.cn/84160.html
由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。文章源自略懂百科-http://wswcn.cn/84160.html
绿盟科技拥有对此安全公告的修改和解释权。文章源自略懂百科-http://wswcn.cn/84160.html
如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。文章源自略懂百科-http://wswcn.cn/84160.html
关于绿盟科技文章源自略懂百科-http://wswcn.cn/84160.html
北京神州绿盟信息安全科技股份有限公司(简称绿盟科技)成立于2000年4月,总部位于北京。在国内外设有30多个分支机构,为政府、运营商、金融、能源、互联网以及教育、医疗等行业用户,提供具有核心竞争力的安全产品及解决方案,帮助客户实现业务的安全顺畅运行。文章源自略懂百科-http://wswcn.cn/84160.html
基于多年的安全攻防研究,绿盟科技在网络及终端安全、互联网基础安全、合规及安全管理等领域,为客户提供入侵检测/防护、抗拒绝服务攻击、远程安全评估以及Web安全防护等产品以及专业安全服务。文章源自略懂百科-http://wswcn.cn/84160.html
北京神州绿盟信息安全科技股份有限公司于2014年1月29日起在深圳证券交易所创业板上市交易,股票简称:绿盟科技,股票代码:300369。文章源自略懂百科-http://wswcn.cn/84160.html
请点击屏幕右上方…文章源自略懂百科-http://wswcn.cn/84160.html
关注绿盟科技公众号文章源自略懂百科-http://wswcn.cn/84160.html
NSFOCUS-weixin文章源自略懂百科-http://wswcn.cn/84160.html
↑↑↑长按二维码,下载绿盟云APP文章源自略懂百科-http://wswcn.cn/84160.html
文章源自略懂百科-http://wswcn.cn/84160.html
评论