二進制代碼級的漏洞攻擊檢測研究.pdf_第1頁
已閱讀1頁,還剩153頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、網(wǎng)絡攻擊自從上世紀八十年代Morris蠕蟲出現(xiàn)以來,一直給互聯(lián)網(wǎng)和用戶帶來嚴重威脅。造成各種攻擊的根源是軟件漏洞。雖然工業(yè)界和學術界提出各種技術保護軟件及操作系統(tǒng)安全,但攻擊數(shù)量仍有增無減;而漏洞攻擊技術也不斷發(fā)展,從緩沖區(qū)溢出到最近的Return-Oriented-Programming(ROP)攻擊。漏洞攻擊檢測是信息安全領域的研究熱點,特別是如何在二進制代碼級檢測攻擊更是業(yè)界關注的焦點,但x86指令的復雜性和WYSINWYX(Wh

2、at You See Is Not What You Execute)給檢測帶來諸多挑戰(zhàn)。
  在二進制代碼級檢測攻擊不僅可用于攻擊防御,而且能為漏洞分析和zero-day漏洞挖掘提供幫助,同時有助于設計更有效的編譯器和操作系統(tǒng)級防御機制。然而當前漏洞攻擊檢測技術存在若干問題:首先,相當部分的防御檢測手段都需要源碼,但商業(yè)軟件不提供源碼;其次,大部分防御技術都是純粹的靜態(tài)或動態(tài)分析,犧牲了準確性或效率,沒有將兩者結(jié)合起來,特別是對

3、于最新的ROP攻擊,目前還未找到一種合適的檢測方法??偟膩碚f,當前漏洞攻擊的發(fā)展給攻擊檢測提出了新的要求,而以Stack canary、NX、特征碼匹配為代表的經(jīng)典防御技術已不能滿足對于目前攻擊的檢測需求。
  本文對動態(tài)污點分析、控制流安全以及復雜shellcode三個方面進行了深入細致的研究,取得了四方面成果:
  1.提出了若干種技術加強動態(tài)污點分析,能夠準確檢測一種重要類型的攻擊-內(nèi)存溢出攻擊,并提高了系統(tǒng)效率。首先

4、,設計和實現(xiàn)了一種高效shadow memory,能夠在較低時間復雜度和空間復雜度存儲查詢shadow bit。提出了x86指令層次化結(jié)構(gòu)分析,有效克服了x86指令的復雜性,通過它制定準確污點傳播策略。傳統(tǒng)污點分析只在指令級傳播污點,缺乏過程級傳播,為此提出了兩種技術加強過程級污點傳播的準確性與效率,分別是函數(shù)局部變量殘留污點清除與函數(shù)摘要?;趧討B(tài)插樁工具實現(xiàn)了原型系統(tǒng)MANGO,并對真實攻擊進行了測試,實驗結(jié)果表明MANGO能有效檢

5、測內(nèi)存溢出攻擊,并且系統(tǒng)效率得到提升。
  2.提出了一種新的ROP攻擊檢測方法。當前檢測技術依賴ROP某些特征檢測攻擊,但無法準確區(qū)分正常指令執(zhí)行與ROP攻擊,因此誤報率較高。本文通過分析實際ROP代碼,確定了 ROP的表現(xiàn)特征與功能特征,并依賴它們作為檢測依據(jù)。同時,純粹的動態(tài)分析對程序性能影響較大,并且無法在gadget執(zhí)行前阻止攻擊,本文提出了黑盒模擬gadget思想加強檢測效率與效果。原型系統(tǒng)通過動態(tài)插樁工具實現(xiàn),通過自

6、動化工具對真實shellcode生成ROP攻擊樣本,并對其進行測試,實驗結(jié)果表明我們提出的方法在檢測準確性和效率都優(yōu)于當前ROP攻擊檢測方法。
  3.提出了一種基于地址完整性檢查的函數(shù)指針攻擊檢測方法FPGuard,其思想是判斷間接跳轉(zhuǎn)指令的目標地址是否位于合法函數(shù)范圍。FPGuard與CFI的最大區(qū)別是前者的檢查代碼位于程序外部,能有效分析間接跳轉(zhuǎn)指令。除了傳統(tǒng)注入攻擊,攻擊者仍有可能利用函數(shù)指針覆蓋進行ROP攻擊,同時本文在

7、實驗中發(fā)現(xiàn)C++程序存在多函數(shù)入口點。提出了兩階段方法檢測攻擊,第一步是粗粒度的range check,第二步是細粒度的黑盒模擬gadget(用于檢測ROP攻擊)。通過測試真實攻擊,F(xiàn)PGuard能準確檢測注入代碼與ROP攻擊。并且由于FPGuard采用高效數(shù)據(jù)結(jié)構(gòu)存儲查詢函數(shù)地址信息,保證了較高的效率。FPGuard是目前首個能同時檢測(通過覆蓋函數(shù)指針)注入代碼攻擊與ROP攻擊的技術。
  4.提出了一種有效的自修改多態(tài)she

8、llcode(SMPS)檢測方法。通過實際SMPS樣本,我們觀察到SMPS的一個重要特點是動態(tài)代碼字節(jié)生成,基于此特點提出一種有效的靜態(tài)與動態(tài)結(jié)合檢測算法。首先用反匯編得到靜態(tài)代碼字節(jié),然后將payload放入模擬器執(zhí)行,比較兩者之間差異,如果不同則檢測到SMPS。為了過濾正常payload,實現(xiàn)了一種簡單有效的過濾機制。對Metasploit提供的真實SMPS樣本進行測試,實驗結(jié)果表明檢測效果非常好,同時對正常網(wǎng)絡流進行了誤報率測試,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論