CVE-2011-0104 Microsoft Excel漏洞分析与复现

admin 2021年12月22日01:48:53评论251 views字数 712阅读2分22秒阅读模式

CVE-2011-0104 Microsoft Excel漏洞分析与复现

扫一扫关注公众号,长期致力于安全研究CVE-2011-0104 Microsoft Excel漏洞分析与复现

前言:该漏洞是excel在解析XLB文件时候造成的栈溢出漏洞



0x01 Windbg定位

首先运行excel.exe,加载并导入exploit.xlb文件,windbg加载运行触发异常

CVE-2011-0104 Microsoft Excel漏洞分析与复现

300e06f7 8908            mov     dword ptr [eax],ecx  ds:0023:51455047=????????

0x02 动态调试

有异常的是上面地址,那么载入一个正常文件追溯到函数调用处

CVE-2011-0104 Microsoft Excel漏洞分析与复现

300E19D7    E8 D1EBFFFF     call EXCEL修?300E05AD300E19DC    3BC3            cmp eax,ebx

之后函数call处下断点。跟进函数,首先提高了0X60大小的栈空间

CVE-2011-0104 Microsoft Excel漏洞分析与复现


在ESP设置一个内存写入的断点

CVE-2011-0104 Microsoft Excel漏洞分析与复现


两次F9跟到这里,其实就是rep造成的溢出

CVE-2011-0104 Microsoft Excel漏洞分析与复现


通过winhex对比成功发现数据

CVE-2011-0104 Microsoft Excel漏洞分析与复现



之后根据返回地址找到,将其改为call esp

CVE-2011-0104 Microsoft Excel漏洞分析与复现


通过查找call esp,将返回地址替换即可

CVE-2011-0104 Microsoft Excel漏洞分析与复现


之后esp+0X20到此处,此处填写shellcode即可,对照winhex,也就是shellcode需要在这填充

CVE-2011-0104 Microsoft Excel漏洞分析与复现


但是在shellcode填充完之后,有一个错误,eax的地址无法写入,根据定位得知EBP+2C的位置是eax的内容,之后会访问这个地址进行写入,所以需要将此处地址改为可用的地址。

CVE-2011-0104 Microsoft Excel漏洞分析与复现


更改为一个栈地址即可

CVE-2011-0104 Microsoft Excel漏洞分析与复现

再次运行看一下ret的情况

CVE-2011-0104 Microsoft Excel漏洞分析与复现

成功跳转到call esp处,现在esp栈顶就是shellcode

CVE-2011-0104 Microsoft Excel漏洞分析与复现

最后shellcode成功执行

CVE-2011-0104 Microsoft Excel漏洞分析与复现



11111
微信搜索关注 "安全族" 长期致力于安全研究


下方扫一下扫,即可关注CVE-2011-0104 Microsoft Excel漏洞分析与复现

CVE-2011-0104 Microsoft Excel漏洞分析与复现






本文始发于微信公众号(安全族):CVE-2011-0104 Microsoft Excel漏洞分析与复现

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年12月22日01:48:53
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2011-0104 Microsoft Excel漏洞分析与复现http://cn-sec.com/archives/455371.html

发表评论

匿名网友 填写信息