-
-
[原创]暴雷漏洞 (CVE-2012-1889)个人漏洞分析报告
-
发表于:
2017-2-27 20:14
7939
-
[原创]暴雷漏洞 (CVE-2012-1889)个人漏洞分析报告
//------------------------------------------------------------
//
// 个人学习二进制漏洞挖掘时写的漏洞报告总结,算作是项目总结
// 研究的类型包括:缓冲区溢出、UAF漏洞、类型混淆
// 包括内容如下:
// 基本的漏洞成因
// 调试工具的使用
// shellcode(弹框、bindshell)的编写以及改进
// SEH常识
// exploit的编写
// 堆喷射
// ASLR/DEP的基本常识
// ROP链的构造等
//
// 本来是发到MottoIn上的一些投稿,因为错过了时间,所以发到看雪上接收批评
// 最近在研究渗透以及安卓,驱动也没研究完。。。个人时间比较紧,有空再整理成单独的教程
依旧是缓冲区漏洞,用来研究堆溢出以及DEP/ASLR以及ROP链的编写
这次的内容包括:
这次rop链的编写水了,用了mona自带的功能,抽空补上
以下正文:
---
Microsoft XML Core Services缓冲区溢出漏洞
(CVE-2012-1889)
漏洞分析报告
软件名称:Microsoft Internet Explorer 6.0/8.0
组件版本:XML 3.0/4.0/5.0/6.0
漏洞模块:msxml3.dll
模块版本:---
编译日期:2008-04-14
操作系统:Windows XP/2003/7/8
漏洞编号:CVE-2012-1889
危害等级:高危
漏洞类型:缓冲区溢出
威胁类型:远程
分析人:Red_0range
2016年12月25日
目录
1. 软件简介... 2
2. 漏洞成因... 2
3. 漏洞分析... 错误!未定义书签。
4. POC.. 5
5. 漏洞成因分析... 14
6. 参考资料... 15
Microsoft XML Core Services (MSXML)是一组服务,可用JScript、VBScript、Microsoft开发工具编写的应用构建基于XML的Windows-native应用。
Microsoft XML Core Services 3.0、4.0、5.0和6.0版本中存在漏洞,该漏洞源于访问未初始化内存位置。远程攻击者可利用该漏洞借助特制的web站点,执行任意代码或导致拒绝服务(内存破坏)。
3.0. 概览
试运行网上流行的PoC,用WindbgF6附加调试,程序运行至崩溃
·初步分析
发现eax内容为无意义的0x0c0c0c0c,中断处语句为mov ecx,dword ptr[eax],ecx通常用于thiscall调用协议
推测此处将攻击数据错误的当作了类对象
漏洞分析与利用的关键语句
断点在mov ecx,dword ptr[eax]时触发,所以对于漏洞的利用,考虑覆盖语句执行时eax所指向的内容,(eax指向0x0c0c0c0c),通过下面的call dword ptr [ecx+18h]这条指令,使eip的地址转移到堆上。此处适用于winxp系统以及未开启dep和aslr的IE6浏览器。对于win7漏洞的利用会在下文中提及。
·分析调用关系
可以看到eax的值通过InvokeHelper函数传递得到
再进行栈回溯观察大致结构
IDA加载dll文件找到关键函数
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!