windows環境下的heap spray+stack pivot gadget 實現繞過dep

Ox9A82發表於2016-07-31

 ASLR+DEP是windows平臺下最為常見的兩種保護手段。這兩種手段使得最基礎的jmp esp等手法不再適用,而單純的堆噴也會因為堆記憶體不可執行而失效。那麼這裡就來介紹一下heap spray+stack pivot,我一般稱為堆噴+換棧的手法。堆噴是一個較為經典的漏洞利用方法,比如我們透過一個記憶體破壞類漏洞控制了一個物件的記憶體內容,那麼我們就可以構造偽虛表來把程式的執行流程控制到我們的手中,而堆噴則提供了一個固定的地址讓我們來放置虛表。在具有DEP的環境下,執行到堆空間時會發生異常,那麼能不能結合能夠繞過DEP的rop方法和能繞過ASLR的Heap spray呢。我們要講的就是在這種思路下誕生的換棧方法。

相關文章