-z execstack
/-z noexecstack
(關閉 / 開啟) 不讓執行棧上的資料,於是jmp esp就不能用了
即可寫處不可執行,可執行處不可寫
-fno-stack-protector
/-fstack-protector
/-fstack-protector-all
(關閉 / 開啟 / 全開啟) 棧裡插入cookie資訊
又名金絲雀,在函式開始時就隨機產生乙個值,將這個值canary放到棧上緊挨ebp的上乙個位置,當攻擊者想通過緩衝區溢位覆蓋ebp或者ebp下方的返回位址時,一定會覆蓋掉canary的值;當程式結束時,程式會檢查canary這個值和之前的是否一致,如果不一致,則不會往下執行,從而避免了緩衝區溢位攻擊。
-no-pie
/-pie
(關閉 / 開啟) 位址隨機化,另外開啟後會有get_pc_thunk
-z norelro
/-z lazy
/-z now
(關閉 / 部分開啟 / 完全開啟) 對got表具有寫許可權
TCP Wrappers保護機制
簡單介紹方式1 通過tcpd主程式對其他服務程式進行包裝 方式2 由其他服務程式呼叫libwrap.so.鏈結庫 etc hosts allow 允許 etc hosts deny 拒絕 流程圖 由此可見,etc hosts.allow檔案的優先順序更高,若同一ip位址即出現在hosts allow...
程式保護機制
3.堆保護 nx 傳統的堆漏洞攻擊會覆蓋對塊首部,並檢視建立乙個偽造的塊,當記憶體釋放例程執行時可以使用該塊在任意記憶體位址處寫入任意4個位元組。具體為 4.dep nx dep data execution prevention 即資料執行保護,阻止存放在堆 棧或資料記憶體中的 執行,這一直以來都...
Linux OOM Killer 保護機制
發表於 2018 12 25 更新於 2019 04 02 分類於 linux 閱讀次數 3 oom killer out of memory killer linux下允許程式申請比系統可用記憶體更多的記憶體,這個特性叫overcommit 過度分配 在系統記憶體耗盡的情況下,oom killer...