提問(wèn)者:bukeyong 2020-6-14請(qǐng)問(wèn)調(diào)用System函數(shù)之后,,必須要p32(0)之后再壓入?yún)?shù)“bin/sh”嗎,?我直接用的p32(system_addr)+p32(bin_sh),結(jié)果失敗了,;但是中間加了一個(gè)參數(shù)之后就能獲取shell了,。
是的呀,32位程序是棧傳參,,調(diào)用函數(shù)時(shí),,系統(tǒng)函數(shù)會(huì)到棧上取數(shù)據(jù)。64位程序是寄存器傳參,,系統(tǒng)函數(shù)會(huì)到寄存器中取參數(shù),!