title: CVE-2010-3333 分析
date: 2018-04-26 19:07:31
categories:
XP sp3
Microsoft Office Word 2003 SP3
Windbg
CVE-2010-3333漏洞是一个栈溢出漏洞,该漏洞是由于Microsoft word在处理RTF数据的对数据解析处理错误,可被利用破坏内存,导致任意代码执行。
相关RTF可以参考《漏洞战争》。
我们使用MSF生产POC:
msf > use exploit/windows/fileformat/ms10_087_rtf_pfragments_bof
msf exploit(windows/fileformat/ms10_087_rtf_pfragments_bof) > info
msf exploit(windows/fileformat/ms10_087_rtf_pfragments_bof) > set target 6
打开 word 使用Windbg 附加进程,打开 ksf.rtf 文件会触发异常。
在将 [esi] 复制到 [edi] 时溢出到只读地址。
通过栈回溯可发现实在 0x30f0b5c2 函数 调用了溢出函数。
仔细分析溢出函数,发现复制长度我们为栈上的值,我们可以控制。
这样漏洞比价简单,有意思的关于 2003 与 2007 的通用性。
书中讲到是同时覆盖返回地址和SEH结构。
定位SEH可以使用MSF中的pattern_create和pattern_offset,《Exploit编写系列教程》有详细讲解。
由于office 存在内部异常处理 需要在溢出数据指定位置为改为0x00000000。
《漏洞战争》