CSAPP——bomblab實(shí)驗(yàn)1

最近學(xué)習(xí)CSAPP,做到對(duì)應(yīng)實(shí)驗(yàn)bomblab了,記錄一下拆彈過(guò)程。

https://github.com/EugeneLiu/translationCSAPP 課程相關(guān)地址

bomblab是需要通過(guò)反匯編來(lái)找線(xiàn)索的實(shí)驗(yàn),總共有6條線(xiàn)索要找,因?yàn)椴粫?huì)用gdb所以花了一些時(shí)間去學(xué)了gdb的使用,現(xiàn)在先做一個(gè)1實(shí)驗(yàn)試試水。


實(shí)驗(yàn)文件

首先進(jìn)來(lái)當(dāng)然是先list看看源代碼行不行



雖然這里看不出什么直接的線(xiàn)索,但是可以看出來(lái)6個(gè)線(xiàn)索應(yīng)該分別對(duì)應(yīng)phase_1~phase_6,應(yīng)該只需要在這幾個(gè)函數(shù)內(nèi)部做文章就可以。那么這次先從1開(kāi)始

反匯編一下phase_1函數(shù)看看


哦豁,看起來(lái)就是幾個(gè)寄存器比較了下值,那不出意外答案應(yīng)該就在這幾個(gè)寄存器里,先打個(gè)斷點(diǎn)運(yùn)行看看:


123456就隨便輸了先

感覺(jué)中獎(jiǎng)了,esi里的這句話(huà)應(yīng)該就是答案了。

既然rax是我輸入的值,我就先試試能不能直接把這串字符串復(fù)制到rax里


看上去好像不行

不行就算了,那就從頭運(yùn)行里輸入唄


確實(shí)1線(xiàn)索就這么找到通過(guò)了,有空再繼續(xù)做后續(xù)的2——6拆彈。先記錄到這。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容