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

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 閱讀(203) 評論(0)  編輯 收藏 引用

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            狠狠色综合网站久久久久久久| 久久免费黄色| 国产日韩欧美成人| 欧美日韩国产影片| 欧美精品自拍偷拍动漫精品| 免费永久网站黄欧美| 免费成人激情视频| 欧美ed2k| 欧美午夜精品| 国产精品色网| 一区二区亚洲精品国产| 亚洲国产第一| 一区二区三区欧美日韩| 欧美一区=区| 六月天综合网| 亚洲日本一区二区三区| 亚洲成人在线视频播放 | 欧美在线电影| 久久国产精品毛片| 免费看黄裸体一级大秀欧美| 欧美精品一区二区精品网 | 亚洲风情亚aⅴ在线发布| 亚洲欧美伊人| 久久精品成人| 欧美日本韩国一区二区三区| 国产精品美女久久久| 国产视频欧美视频| 亚洲日本理论电影| 午夜久久一区| 亚洲国产精品综合| 亚洲欧洲av一区二区| 欧美大片网址| 国户精品久久久久久久久久久不卡| 亚洲激情不卡| 久久精品国产一区二区三区免费看 | 亚洲欧美99| 欧美r片在线| 亚洲一级高清| 欧美精品啪啪| 影音先锋久久资源网| 国产精品99久久久久久有的能看| 久久综合色综合88| 亚洲欧美999| 欧美日韩精品在线播放| 亚洲黑丝在线| 裸体丰满少妇做受久久99精品| 在线视频欧美精品| 欧美日韩不卡视频| 亚洲日本欧美| 欧美成人综合网站| 欧美在线网站| 国产一区二区按摩在线观看| 亚洲女同精品视频| 野花国产精品入口| 欧美日韩国产综合网| 亚洲精品在线一区二区| 欧美成人免费小视频| 久久精品一级爱片| 国产欧美日韩三区| 欧美亚洲在线观看| 国产一区二区丝袜高跟鞋图片 | 国产精品一区免费在线观看| 一本色道久久综合亚洲精品不卡| 欧美国产综合| 欧美freesex8一10精品| 亚洲人成在线观看网站高清| 欧美激情 亚洲a∨综合| 噜噜噜91成人网| 亚洲国产午夜| 亚洲日本久久| 国产精品久久久久久久久久免费看| 亚洲少妇自拍| 亚洲视频一区二区在线观看 | 久久久人成影片一区二区三区观看 | 久久最新视频| 亚洲国产成人精品久久| 欧美bbbxxxxx| 欧美成在线视频| av成人老司机| 亚洲免费中文字幕| 国产综合在线看| 亚洲国产高清一区二区三区| 欧美成人在线免费观看| 一区二区三区久久久| 亚洲校园激情| 在线观看亚洲视频啊啊啊啊| 亚洲成人在线网| 国产精品麻豆va在线播放| 久久精品国产69国产精品亚洲| 久久精品夜色噜噜亚洲a∨| 亚洲国产婷婷| 亚洲欧美日韩国产精品| 亚洲国产日韩在线一区模特| 亚洲另类视频| 国产一区二区三区久久 | 欧美揉bbbbb揉bbbbb| 欧美伊人久久大香线蕉综合69| 久久精品成人欧美大片古装| 亚洲人成啪啪网站| 亚洲一区二区三区欧美| 激情自拍一区| 一本久道久久久| 在线视频国产日韩| 一区二区三区视频观看| 国产在线精品一区二区中文| 亚洲区一区二区三区| 国产亚洲欧美另类一区二区三区| 亚洲激情av在线| 国产在线视频欧美| 夜夜爽99久久国产综合精品女不卡| 狠狠入ady亚洲精品| 一区二区三区色| 亚洲肉体裸体xxxx137| 欧美一级精品大片| 亚洲视频一二区| 美女露胸一区二区三区| 久久精品道一区二区三区| 欧美三区视频| 亚洲黄色影院| 亚洲第一毛片| 性欧美videos另类喷潮| 中文国产成人精品| 久久人人九九| 久久蜜臀精品av| 国产欧美日韩麻豆91| 一区二区三区精密机械公司 | 香蕉av福利精品导航| 欧美成人一区二区三区| 久久久久久久综合色一本| 欧美日韩在线播放三区| 亚洲电影自拍| 影音先锋久久精品| 久久精品盗摄| 久久精品亚洲一区| 国产精品视频内| 中文精品视频一区二区在线观看| 亚洲经典在线看| 欧美成熟视频| 亚洲美女av电影| 亚洲一区二区高清| 欧美涩涩视频| 亚洲深夜福利在线| 西西裸体人体做爰大胆久久久| 欧美视频一区二区三区在线观看 | 最新日韩在线视频| 亚洲国产欧美精品| 欧美成人免费在线视频| 亚洲国产电影| 亚洲午夜久久久| 国产精品久久久久影院亚瑟| 亚洲性感激情| 浪潮色综合久久天堂| 亚洲成人在线免费| 欧美顶级大胆免费视频| 日韩香蕉视频| 久久九九精品99国产精品| 精品成人一区二区三区| 麻豆视频一区二区| 亚洲美女性视频| 香蕉乱码成人久久天堂爱免费| 国产精品一区二区男女羞羞无遮挡 | 久久精品一区二区三区四区| 另类av导航| 99国产精品视频免费观看一公开| 欧美日韩国产小视频在线观看| 99国产精品久久久久久久久久| 午夜亚洲性色福利视频| 国产精品自拍视频| 久久一区精品| 99一区二区| 卡通动漫国产精品| 中文久久乱码一区二区| 国产区亚洲区欧美区| 免费日韩av电影| 亚洲免费在线观看| 亚洲国产影院| 欧美一区二区精品久久911| 在线精品视频一区二区| 欧美日韩亚洲视频一区| 久久国产精品久久国产精品| 91久久午夜| 久久精品国产99精品国产亚洲性色 | 欧美一区二区成人6969| 亚洲三级性片| 国产精品视频免费观看| 久久一区二区三区四区| 亚洲一级高清| 亚洲精品小视频| 欧美成人高清| 性做久久久久久| 一本综合精品| 在线日韩中文字幕| 国产色婷婷国产综合在线理论片a| 欧美成人中文| 久久噜噜亚洲综合| 亚洲新中文字幕| 99精品国产在热久久婷婷| 欧美成人精品在线观看| 久久精品理论片| 亚洲欧美日韩天堂|