实验环境
| 推荐使用的环境 | 备注 | |
|---|---|---|
| 操作系统 | Windows XP SP3 | |
| 虚拟机 | Vmware | |
| 调试器 | OD | |
| 反汇编器 | IDA Pro | |
| 漏洞软件 | Microsoft Office 2003 |
动态分析
打开POC,发现eip是0x41414141,向上最近的返回地址是0x275C8A0A MSCOMCTL.275C8A0A。

该返回地址在sub_275c89c7函数中。

打个断点重新运行。
call 275c876D执行完后,栈的数据变化了,猜测是从文件中获取了某个obj的长度。由于是文件中存的是hex的字符版本,所以直接搜索ascii的hex数据即可。


猜测这里会从0x09160810地址复制8282字节到栈中。

果然50开始的数据变了

定位数据如下,具体为什么是这里开始需要去看OLE数据格式。

文章评论