青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Ay's Blog@CNSSUESTC

[導入]Paper導讀系列之HookFinder: Identifying and Understanding Malware Hooking Behaviors

最近要看各種paper  但是看的斷斷續續的,后面看前面的就忘光了(主要就是太忙……各種私人以及學習的是,不過還好申請弄完了 閑下來可以看看書了 哈哈),所以開個帖子把讀過的paper總結下,寫個心得吧。標紅的是我的問題~哈哈

 

原文:HookFinder: Identifying and Understanding Malware Hooking Behaviors

source2download:點這里

 

引言:

這篇文章講述的內容小有趣的說,主要介紹了一個系統,把樣本的惡意程序放進去能夠自動分析出它的hook操作,包括hook了哪里,如何hook的。它結合一個特定的“虛擬機”(這么說不算太貼切 它文章里面用的是system-emulator這個詞,文章里面說這個和虛擬機不用,我估計是原理相同用途不同而已吧,后面就虛擬機這么叫吧),在物理層面它能夠獲取到程序執行時的所有寄存器狀態,在系統層面它能夠獲得系統信息,比如進程模塊地址之類的東西,就跟windbg類似。然后通過跟蹤寄存器讀寫操作以及結合系統信息來檢測出程序的hook行為,它里面測試的樣例可都是kernel級別的rootkit喲,還是相當強大的一個東東。

 

下面就開始吧,通過監測寄存器(system-emulator提供的接口),那么我們便可以掌握內存的讀寫情況,更犀利的是我們如此便可以監控所有對內存讀寫的操作。然后通過一個叫Semantics Extrator(SE)的模塊來提取出操作系統層次的信息,打個比方,我捕獲到0x743292BC這個要被寫入東西,那么通過SE模塊我可以查出這個地址是系統內核函數ObReferencebyPointors的函數空間,然而我又可以通過SE模塊知道我現在運行的代碼段是在X驅動模塊中的,那么顯然X驅動就有可能是在修改系統代碼,正在進行Data Hook。

 

聽起來很犀利哇?不過深入分析下去,還是有很多問題要解決的。多個模塊代碼都進行了同樣的hook你又如何記錄存儲這些HOOK信息咧?如何實現自動檢測HOOK?

 

那么文章中提出了設計了3個模塊(其實不止3個 我把工作相似的模塊合并了):Impact Engine,SE,Hook Detector

Impact Engine

何為impact在文中的意思就是改動,整體翻譯就是改動檢測引擎(個人YY過來的)。這個引擎用來監控標記程序運行時,對系統內存讀寫的動作,以便下一步的分析。

這個引擎分2部分,Impact Marker和Impact Tracker

Impact Marker

監控惡意代碼中的內存讀寫分幾種情況,一種是在代碼中直接進行內存讀寫,另一種就是惡意代碼通過調用外部函數比如memcpy之類的來進行內存操作,文中主要討論了記錄外部調用的內存操作的策略。

首先監控內存讀寫以及寄存器讀寫,但這2個操作是分開來處理的。對于外部函數調用讀寫內存,我們只監控外部變量的讀寫,至于外部變量如何判斷很簡單,查看寫入地址如否在線程堆棧的范圍內,若在則是局部變量,若不在,嘿嘿~外部變量。


那么對于寄存器讀寫的操作就顯得容易多了,因為在windows系統下,返回值是通過eax傳遞的,文中說的是在函數開始時記錄eax的值,然后等函數結束后在比對eax的值是否與原來的一樣,如果不一樣,那么函數包含返回值則標記之,如果不一樣,那么函數返回值是無效的。


當然這里涉及到一個問題就是惡意代碼會動態產生可執行代碼丫,但是由于我們標記了它內存分配情況,那么只要在執行時判斷下執行的指令是否取自標記的內存段,若是,就認為是惡意代碼自產生的可執行代碼,然后對于這段代碼也采取同樣的監控標記方式來跟蹤它的輸入輸出。


Impact Tracker(IT)

這個模塊主要用來關聯這些標記的內存操作和內存改動的。如果在Impact Marker的標記中,操作數的地址或數據是被標記了的,則標記上目的操作數的地址或數據。并且IT模塊對目的操作數每個標記分配一個ID號,并記錄每個ID號之間的關聯,如此一來我們便可以捕獲惡意代碼對系統生成的改動,比如惡意代碼是如何改動重要數據結構的,當然這些監控對惡意代碼的磁盤讀寫,設備掛載,系統例程注冊同樣有效。因為這些操作的最終原理也不過是生成或改動數據結構而已。


Semantics Extractor


該模塊很簡單,就是從虛擬的系統中提取出需要的信息,比如說進程的所有信息,線程的所有信息,驅動模塊的所有信息等等,然后獲得這些需要的信息一般有2種方式,其一就是通過解析一些重要的數據結構來獲得,比如EPROCESS,另一種方式就是向虛擬系統中插入一個模塊,在系統運行時動態收集系統信息,主要通過設置回調函數的方式工作。比如收集進程信息,在進程創建銷毀的時候調用該模塊的處理例程等等。


此外SE模塊還負責解析函數符號名,確定是否是惡意代碼進行的外部函數調用。主要是通過解析PE頭文件來實現,這個就不累述了,一來我只是略懂,二來看雪上關于PE的資料我覺得已經很透徹了~

 

HOOK Detector

這個模塊的判斷依據還比較簡單,判斷EIP寄存器載入的數據是否是被標記了的,如果EIP載入了被標記的數據(也就是說程序當時運行在非惡意代碼模塊的上下文,若不考慮這個,則惡意代碼代碼執行的內部調用也會被誤判為HOOK)并且立即跳轉到了惡意代碼的模塊空間或者是惡意代碼分配的內存空間內,則將其定義為一個HOOK。當然這個辦法僅僅能用于數據HOOK,代碼HOOK的話還需另加討論,我們定義說如果在非惡意代碼上下文是運行了被標記為惡意代碼模塊的篡改數據,并且EIP載入數據也被標記并且跳轉到了惡意代碼空間,那么這就是一個代碼HOOK,然而這里又有一個問題,代碼HOOK和惡意代碼自產生的代碼性質是一樣的,那么如何判斷這些被標記的代碼是自產生代碼還是HOOK的數據咧?很簡單,自產生代碼存在的空間要么是惡意代碼模塊分配的,要么是占用了不屬于任何模塊的數據空間,而HOOK的數據肯定是覆蓋了系統調用的空間的,所以簡單的通過SE模塊查一下這段代碼是否在系統調用空間就OK了,如果是,則判斷為HOOK數據,如果不是,在驗證下是否滿足自產生代碼的條件。

 


類別:Host Security 查看評論
文章來源:http://hi.baidu.com/uestc%5Fay/blog/item/f9bae97af15009e60ad187f9.html

posted on 2011-01-04 00:06 __ay 閱讀(204) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            红桃视频一区| 一本大道av伊人久久综合| 欧美一区二区福利在线| 亚洲性视频网站| 国产欧美日韩另类一区| 欧美在线视频免费播放| 性欧美精品高清| 永久域名在线精品| 亚洲高清免费| 欧美午夜欧美| 久久精品国产精品亚洲| 久久永久免费| 亚洲午夜国产成人av电影男同| 亚洲一区二区三区在线播放| 国产日韩欧美在线播放| 欧美 日韩 国产精品免费观看| 欧美成人精品h版在线观看| 亚洲图片激情小说| 欧美在线视频二区| 亚洲精品中文字幕女同| 亚洲欧美韩国| 亚洲欧洲日本在线| 亚洲一区二区四区| 最新亚洲一区| 亚洲欧美日韩国产综合在线| 亚洲激情一区二区三区| 亚洲一区二区3| 亚洲三级免费电影| 欧美一区二区三区播放老司机| 亚洲观看高清完整版在线观看| 一级成人国产| 亚洲国产一区二区a毛片| 亚洲色无码播放| 亚洲国内自拍| 欧美一区二区三区免费大片| 亚洲人在线视频| 久久精品成人一区二区三区| 亚洲一二三区在线| 麻豆精品91| 久久久久久伊人| 国产精品国产一区二区| 亚洲国产精品一区在线观看不卡 | 亚洲国产高清高潮精品美女| 国产精品国产一区二区| 最新国产成人av网站网址麻豆| 国产一区二区剧情av在线| 99视频精品全部免费在线| 亚洲国产精品成人| 久久精品免费看| 久久精品欧洲| 国产欧美视频一区二区三区| 在线亚洲成人| 一区二区精品国产| 欧美激情精品久久久久久黑人 | 亚洲午夜高清视频| 一本一道久久综合狠狠老精东影业 | 久久精品导航| 欧美午夜宅男影院| 亚洲毛片在线| 一区二区三区欧美在线观看| 欧美成人午夜视频| 亚洲国产成人91精品| 亚洲电影av| 久久这里有精品15一区二区三区| 久久日韩粉嫩一区二区三区| 韩国v欧美v日本v亚洲v| 欧美专区在线播放| 久久久久www| 一区二区在线观看视频在线观看| 欧美诱惑福利视频| 久久香蕉精品| 在线观看成人小视频| 麻豆精品精品国产自在97香蕉| 久久亚洲国产精品日日av夜夜| 黄色在线一区| 免费一级欧美片在线播放| 亚洲国产日韩欧美在线99| 亚洲美女少妇无套啪啪呻吟| 欧美精品粉嫩高潮一区二区 | 亚洲一区二区三区视频| 午夜精品久久| 国内在线观看一区二区三区| 久久亚洲精品视频| 亚洲国产日韩欧美| 亚洲一区999| 国产亚洲精久久久久久| 裸体歌舞表演一区二区| 亚洲精品视频免费在线观看| 亚洲直播在线一区| 国产尤物精品| 欧美黄色aa电影| 亚洲色在线视频| 老鸭窝毛片一区二区三区 | 欧美日韩一二区| 亚洲欧美资源在线| 欧美不卡高清| 亚洲在线1234| 亚洲国产精品高清久久久| 欧美黄色日本| 午夜日本精品| 亚洲精品视频啊美女在线直播| 午夜精彩视频在线观看不卡 | 欧美日韩一区在线| 久久黄色影院| 夜夜爽av福利精品导航| 久久青草久久| 亚洲视频网在线直播| 激情91久久| 国产精品福利片| 美女亚洲精品| 午夜国产精品影院在线观看| 亚洲国产精品一区二区三区| 久久黄色小说| 亚洲自拍偷拍福利| 最新国产の精品合集bt伙计| 国产精品一区二区三区四区| 欧美大片在线影院| 久久久国产成人精品| 亚洲视频在线看| 亚洲人体大胆视频| 欧美成年网站| 久久久成人网| 欧美一级一区| 亚洲专区免费| 99re在线精品| 亚洲第一视频| 国内精品伊人久久久久av一坑| 国产精品第十页| 欧美日韩精品一区视频| 欧美成人精品激情在线观看| 久久99在线观看| 亚洲欧美激情在线视频| 亚洲最新在线视频| 亚洲精品在线观看视频| 亚洲国产裸拍裸体视频在线观看乱了中文 | 欧美中文字幕久久| 午夜国产一区| 亚洲综合激情| 亚洲欧美一区二区激情| 中文亚洲字幕| 亚洲性线免费观看视频成熟| 亚洲精品一区二区网址| 亚洲国产你懂的| 亚洲大胆视频| 91久久精品国产91久久性色| 亚洲国产婷婷| 亚洲精品国久久99热| 亚洲日本成人网| 99在线热播精品免费| 一本久久综合| 亚洲欧美另类综合偷拍| 性欧美18~19sex高清播放| 午夜国产精品影院在线观看| 欧美一级久久久久久久大片| 久久成人在线| 免费一级欧美在线大片| 亚洲国产高清一区| 日韩视频免费看| 亚洲一二三区精品| 久久精品日产第一区二区| 久久午夜av| 欧美精品二区| 国产精品萝li| 好吊成人免视频| 最新国产の精品合集bt伙计| 一区二区av在线| 欧美一区二区性| 欧美国产精品中文字幕| 亚洲美女诱惑| 亚久久调教视频| 欧美成人a视频| 国产精品久久久久久久电影| 国产色综合久久| 亚洲国产三级在线| 亚洲一区二区黄色| 久久―日本道色综合久久| 亚洲黄色一区二区三区| 亚洲欧美激情视频在线观看一区二区三区 | 亚洲激情视频在线播放| 亚洲一区欧美| 免费国产一区二区| 国产精品一区二区在线观看不卡| 在线观看亚洲精品视频| 中文亚洲字幕| 免费日韩视频| 亚洲淫性视频| 欧美精品videossex性护士| 国产欧美一区二区三区久久人妖| 亚洲第一主播视频| 欧美亚洲在线视频| 亚洲人永久免费| 久久裸体视频| 国产精品一区一区三区| 一本高清dvd不卡在线观看| 久久综合免费视频影院| 亚洲一区二区网站| 欧美巨乳波霸| 亚洲国产精品电影在线观看| 欧美在线观看视频| 亚洲视频免费在线|