在上一篇文章中,我們提到延遲綁定時 dl-resolve(link_map, index) 將實際地址填入 .got.plt 的流程。 現在我們將繼續說明具體要...
在上一篇文章,我們說明整個攻擊手法,而這篇文章將會實作 ret2dlresolve。 以下為本篇所使用的範例程式 #include<stdio.h>...
前幾篇文章中,我們針對 Stack Buffer Overflow 說明了許多不同的攻擊手法與相對應的保護機制。在這幾篇文章中我們都沒有開啟 PIE(可執行區段...
在之前的幾篇文章中,我們從程式有後門函式到需要自己寫 Shellcode,再到後來學習了 NX 保護機制,也因此學會了使用 ROP 去繞過,最後也說明延遲綁定帶...
接續上一篇 題目是 pwnable.tw 的第一題 start 上一篇寫到我們要把 esp 的值改為我們 shellcode 的位置,這樣在 ret 時,就...
今天同樣做 pwnable.tw 的題目,第二題 orw。 先確認一下檔案類型跟記憶體保護機制,發現同樣是 x86 並且有開啟 Canary。 用 IDA 打開...
題目pwnable.tw 的題目,第二題 orw 昨天寫到他就是一個可以輸入 shellcode 但是只能使用 open、read、write。我們要想辦法...
在之前的文章中,我們探討了與 Stack 相關的攻擊手法及其對應的保護機制。接下來的幾篇文章,將會把焦點轉向程式的另一個記憶體區域—Heap。 Heap 概念...
在上一篇文章中,我們有提到下圖黃色的連續記憶體空間(main_arena)即為 Heap。Heap 是用來動態管理程式運行過程中的記憶體分配,主要透過 mall...
在前一篇文章中,我們介紹了 Heap 的基本操作,包括記憶體的分配與釋放,並提到了 Bin 機制。這篇文章將詳細介紹不同類型的 Bins 及其運作方式。 Bin...