2013-02-16 88 views
0

我不確定如果我在正確的位置發佈此特定作業。但我希望有人能幫助我。緩衝區溢出堆棧衛士

這是關於緩衝區溢出

http://nsfsecurity.pr.erau.edu/bom/Smasher.html

和:

http://nsfsecurity.pr.erau.edu/bom/StackGuard.html

請問你們是否知道我怎麼能得到它顯示 「哦,麻煩」。這是關於Stack Guard和粉碎機。

我試過輸入「D」,因爲它確實說了ACSII 0x44的提示,但我迷失了方向。

+1

你應該和你的助教/教授交談。 – 2013-02-16 01:35:39

+0

你想做什麼_exactly_? – vonbrand 2013-02-16 01:42:08

+0

基本上就是那個吐出「哦,打擾」的地方,「進入東西」區域是爲了方塊。 – TrippedStackers 2013-02-16 02:42:23

回答

0

這將是一個漫長的教程。如計算機系統:程序員的視角中所述,基本上,您需要覆蓋返回地址,以便函數返回時(彙編語言中爲ret%pc計數器設置爲某個地址(通常位於堆棧上)。然後該程序繼續執行錯誤的地址,以便您可以執行其他操作。

您需要拆卸二進制文件並檢查程序集。單步執行gdbntsd可能會有所幫助。

+0

我試過了你所給的一切,但可惜我沒有得到「哦,麻煩」的迴應。 – TrippedStackers 2013-02-19 01:06:02

0

我知道這是非常晚,但我只是發現了這一點。 D必須進入緩衝區溢出。例如,HELLOHOWARD在緩衝區溢出中有D。