- 1、本文档共46页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
xKungfoo2013-0day漏洞快速分析
0day快速分析Instruder of code audits lab南京翰海源信息技术有限公司Who am i王云翔,南京翰海源代码实验室成员,网名instruder,binvul组织核心成员。 主要从事二进制漏洞挖掘、分析、利用技术APT防御研究、实现。快速漏洞分析对公司意义:为厂商赢得更多的关注 ,实力输出更快速的响应产生防御规则及应对措施,保护客户免受攻击漏洞分析本质ROOT CAUSE: 找到外界的输入数据跟这个漏洞的关系 命名 深刻理解一类漏洞常见方法:动态调试分析Windbg/Od 各种断点静态分析BIN IDASource Code输入数据格式分析已有010脚本正常样本以及POC样本流程不一致两种情形你已经知道了漏洞的原因漏洞名称?其他人的简略分析?你不知道这个是什么漏洞仅仅只有POC漏洞分析的难点漏洞分类基本上可分为两大类内存破坏堆、栈溢出内存未初始化释放后重用任意地址读、写…..CVE 2011-2462 、CVE 2012-4969 、CVE 2013-0640/0641逻辑漏洞Java Sandbox Escape 漏洞等内存破坏漏洞 过程内存破坏漏洞 定位数据流反朔从触发异常的污染传染节点回朔到被污染源从被污染源回朔到污染源从污染源查找到漏洞代码从被污染源反朔到污染事件查找到污染源的初始数据分配,正向分析数据流越界正向 、逆向 分析内存破坏漏洞 难点由于堆、栈的动态分配特性,导致数据流污染的路径上带有多个难以确认的因素,使得通过数据流污染路径反朔内存漏洞存在更多的困难一切都是变化的!FirstSecond这个是来自污染数据?污染数据?逻辑漏洞透彻其逻辑才能更好的进行分析Java 沙盒逃离路径遍历安全功能绕过等漏洞分析 高级方法假如我知道未来发生什么让一切都变得固定、可预知假如 每次堆分配的堆、栈地址是固定、可预知的…我们知道这个地址的内存会被申请、释放…我们知道这个地址的内存会被改写…这样 我能 直接 Ba w 1 0x0352d700 …..漏洞分析还会难吗?转换分析思路以往的分析思路 分析代码逻辑 回溯代码查找数据流向转换后的分析思路 直接分析数据流向极大减少回溯层数,减少复杂度VM 快照虚拟机的快照功能可以实现这一切VM 快照 关键点选好合适点创建快照等待内存布局基本稳定文件类型 : 应用程序开始打开POC 时处理时网页类型 :浏览器开始处理第一条脚本语句时网络类型 : 应用程序接受数据包、初始连接可能还需要更深入的关键点类、接口初始化的时候外部数据初始化程序内部数据结构EXAMPLEEXAMPLE CVE 2011-2462U3D File Handler Uninitialized Memory vulnerability?2011年10月出现 APT攻击,分析前对该漏洞没有任何细节 由于该漏洞分析较有难度,各大安全厂商未能及时发布细节满天飘着带该漏洞附件的攻击,翰海源首发该漏洞细节及拦截规则 /index.php/2011/12/12/cve-2011-2462-pdf-0day-analysis/让漏洞飞一会?APT 攻击军火商洛克马丁的漏洞First SnapShot第一次ReadFile地方 (读取poc pdf) 完全一样!Crash 点First Second漏洞溯源从Crash点向上分析的第一个表象是绘制Node已经出现问题ukclass=*(node+0x68);*(*(ukclass+0x48)+0x54)=0x52520a50此时node+0x68处已经变成了非法值,需继续追踪该值何时填入 0:000 dd 0352d698+0x68 0352d700 0352e550 c09fef6b c19fef6d 0:000 dd 0352e550 +0x48 0352e598 0352d478 0352ffd800000014 0:000 dd 0352d478+0x54 0352d4cc 08b8010000000000 //非法值漏洞溯源恢复虚拟机快照,Ba w 1 0352d698+0x68断点即可一层层的追踪,很快速的找到根本触发的地方赋值最终原因0值绕过初始化关键指针EXAMPLE CVE 2012-4969IE execCommand function Use after free Vulnerability国外安全研究员eromang 一不小心发现的0day样本翰海源首发blog 分析/index.php/2012/09/17/ie-execcommand-fuction-use-after-free-vulnerability-0day/De
文档评论(0)