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

Ay's Blog@CNSSUESTC

[導(dǎo)入]Paper導(dǎo)讀系列之HookFinder: Identifying and Understanding Malware Hooking Behaviors

最近要看各種paper  但是看的斷斷續(xù)續(xù)的,后面看前面的就忘光了(主要就是太忙……各種私人以及學(xué)習(xí)的是,不過(guò)還好申請(qǐng)弄完了 閑下來(lái)可以看看書(shū)了 哈哈),所以開(kāi)個(gè)帖子把讀過(guò)的paper總結(jié)下,寫(xiě)個(gè)心得吧。標(biāo)紅的是我的問(wèn)題~哈哈

 

原文:HookFinder: Identifying and Understanding Malware Hooking Behaviors

source2download:點(diǎn)這里

 

引言:

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

 

下面就開(kāi)始吧,通過(guò)監(jiān)測(cè)寄存器(system-emulator提供的接口),那么我們便可以掌握內(nèi)存的讀寫(xiě)情況,更犀利的是我們?nèi)绱吮憧梢员O(jiān)控所有對(duì)內(nèi)存讀寫(xiě)的操作。然后通過(guò)一個(gè)叫Semantics Extrator(SE)的模塊來(lái)提取出操作系統(tǒng)層次的信息,打個(gè)比方,我捕獲到0x743292BC這個(gè)要被寫(xiě)入東西,那么通過(guò)SE模塊我可以查出這個(gè)地址是系統(tǒng)內(nèi)核函數(shù)ObReferencebyPointors的函數(shù)空間,然而我又可以通過(guò)SE模塊知道我現(xiàn)在運(yùn)行的代碼段是在X驅(qū)動(dòng)模塊中的,那么顯然X驅(qū)動(dòng)就有可能是在修改系統(tǒng)代碼,正在進(jìn)行Data Hook。

 

聽(tīng)起來(lái)很犀利哇?不過(guò)深入分析下去,還是有很多問(wèn)題要解決的。多個(gè)模塊代碼都進(jìn)行了同樣的hook你又如何記錄存儲(chǔ)這些HOOK信息咧?如何實(shí)現(xiàn)自動(dòng)檢測(cè)HOOK?

 

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

Impact Engine

何為impact在文中的意思就是改動(dòng),整體翻譯就是改動(dòng)檢測(cè)引擎(個(gè)人YY過(guò)來(lái)的)。這個(gè)引擎用來(lái)監(jiān)控標(biāo)記程序運(yùn)行時(shí),對(duì)系統(tǒng)內(nèi)存讀寫(xiě)的動(dòng)作,以便下一步的分析。

這個(gè)引擎分2部分,Impact Marker和Impact Tracker

Impact Marker

監(jiān)控惡意代碼中的內(nèi)存讀寫(xiě)分幾種情況,一種是在代碼中直接進(jìn)行內(nèi)存讀寫(xiě),另一種就是惡意代碼通過(guò)調(diào)用外部函數(shù)比如memcpy之類的來(lái)進(jìn)行內(nèi)存操作,文中主要討論了記錄外部調(diào)用的內(nèi)存操作的策略。

首先監(jiān)控內(nèi)存讀寫(xiě)以及寄存器讀寫(xiě),但這2個(gè)操作是分開(kāi)來(lái)處理的。對(duì)于外部函數(shù)調(diào)用讀寫(xiě)內(nèi)存,我們只監(jiān)控外部變量的讀寫(xiě),至于外部變量如何判斷很簡(jiǎn)單,查看寫(xiě)入地址如否在線程堆棧的范圍內(nèi),若在則是局部變量,若不在,嘿嘿~外部變量。


那么對(duì)于寄存器讀寫(xiě)的操作就顯得容易多了,因?yàn)樵趙indows系統(tǒng)下,返回值是通過(guò)eax傳遞的,文中說(shuō)的是在函數(shù)開(kāi)始時(shí)記錄eax的值,然后等函數(shù)結(jié)束后在比對(duì)eax的值是否與原來(lái)的一樣,如果不一樣,那么函數(shù)包含返回值則標(biāo)記之,如果不一樣,那么函數(shù)返回值是無(wú)效的。


當(dāng)然這里涉及到一個(gè)問(wèn)題就是惡意代碼會(huì)動(dòng)態(tài)產(chǎn)生可執(zhí)行代碼丫,但是由于我們標(biāo)記了它內(nèi)存分配情況,那么只要在執(zhí)行時(shí)判斷下執(zhí)行的指令是否取自標(biāo)記的內(nèi)存段,若是,就認(rèn)為是惡意代碼自產(chǎn)生的可執(zhí)行代碼,然后對(duì)于這段代碼也采取同樣的監(jiān)控標(biāo)記方式來(lái)跟蹤它的輸入輸出。


Impact Tracker(IT)

這個(gè)模塊主要用來(lái)關(guān)聯(lián)這些標(biāo)記的內(nèi)存操作和內(nèi)存改動(dòng)的。如果在Impact Marker的標(biāo)記中,操作數(shù)的地址或數(shù)據(jù)是被標(biāo)記了的,則標(biāo)記上目的操作數(shù)的地址或數(shù)據(jù)。并且IT模塊對(duì)目的操作數(shù)每個(gè)標(biāo)記分配一個(gè)ID號(hào),并記錄每個(gè)ID號(hào)之間的關(guān)聯(lián),如此一來(lái)我們便可以捕獲惡意代碼對(duì)系統(tǒng)生成的改動(dòng),比如惡意代碼是如何改動(dòng)重要數(shù)據(jù)結(jié)構(gòu)的,當(dāng)然這些監(jiān)控對(duì)惡意代碼的磁盤(pán)讀寫(xiě),設(shè)備掛載,系統(tǒng)例程注冊(cè)同樣有效。因?yàn)檫@些操作的最終原理也不過(guò)是生成或改動(dòng)數(shù)據(jù)結(jié)構(gòu)而已。


Semantics Extractor


該模塊很簡(jiǎn)單,就是從虛擬的系統(tǒng)中提取出需要的信息,比如說(shuō)進(jìn)程的所有信息,線程的所有信息,驅(qū)動(dòng)模塊的所有信息等等,然后獲得這些需要的信息一般有2種方式,其一就是通過(guò)解析一些重要的數(shù)據(jù)結(jié)構(gòu)來(lái)獲得,比如EPROCESS,另一種方式就是向虛擬系統(tǒng)中插入一個(gè)模塊,在系統(tǒng)運(yùn)行時(shí)動(dòng)態(tài)收集系統(tǒng)信息,主要通過(guò)設(shè)置回調(diào)函數(shù)的方式工作。比如收集進(jìn)程信息,在進(jìn)程創(chuàng)建銷毀的時(shí)候調(diào)用該模塊的處理例程等等。


此外SE模塊還負(fù)責(zé)解析函數(shù)符號(hào)名,確定是否是惡意代碼進(jìn)行的外部函數(shù)調(diào)用。主要是通過(guò)解析PE頭文件來(lái)實(shí)現(xiàn),這個(gè)就不累述了,一來(lái)我只是略懂,二來(lái)看雪上關(guān)于PE的資料我覺(jué)得已經(jīng)很透徹了~

 

HOOK Detector

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

 


類別:Host Security 查看評(píng)論
文章來(lái)源:http://hi.baidu.com/uestc%5Fay/blog/item/f9bae97af15009e60ad187f9.html

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


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   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>
            亚洲一区自拍| 一区二区高清视频在线观看| 亚洲性夜色噜噜噜7777| 欧美视频一区二| 亚洲视频一二| 亚洲欧美日韩中文播放| 国产在线日韩| 欧美本精品男人aⅴ天堂| 欧美福利一区二区| 国产精品99久久久久久久vr| 中文网丁香综合网| 国产亚洲日本欧美韩国| 欧美aa国产视频| 欧美精品久久久久久久久久| 亚洲私人黄色宅男| 性欧美video另类hd性玩具| 黄色成人在线| 亚洲精品在线一区二区| 国产精品日韩精品欧美在线| 久久久久国内| 欧美激情一区二区三区高清视频| 亚洲在线中文字幕| 久久精品成人欧美大片古装| 亚洲精品一二三区| 亚洲一区二区黄| 亚洲国内精品| 亚洲欧美日本国产专区一区| 亚洲国产欧美一区二区三区同亚洲| 亚洲区一区二| 国产一区在线免费观看| 亚洲黄色精品| 国产一区视频在线观看免费| 亚洲精品韩国| 韩国福利一区| 一区二区av在线| 亚洲黄色av一区| 欧美一级成年大片在线观看| 日韩视频专区| 久久亚洲精品一区二区| 午夜精品三级视频福利| 欧美激情第3页| 久久婷婷久久一区二区三区| 国产精品黄色| 欧美日韩精品免费观看视一区二区 | 久久av资源网站| 欧美激情视频在线播放 | 一区二区三区四区蜜桃| 久久久精品久久久久| 亚洲在线成人| 欧美久久精品午夜青青大伊人| 久久影视精品| 国产一区二区精品| 亚洲一区久久久| 亚洲一区欧美二区| 欧美日韩免费观看一区三区 | 亚洲欧美经典视频| 欧美人牲a欧美精品| 欧美高清视频免费观看| 激情五月婷婷综合| 欧美一区二区三区四区高清| 午夜精品久久久久久久| 欧美午夜不卡在线观看免费 | 亚洲激情中文1区| 亚洲激情av在线| 免费视频亚洲| 亚洲国产精品成人久久综合一区| 在线精品一区| 久久视频在线视频| 欧美激情五月| 日韩视频一区二区| 欧美精品一区二区三| 亚洲国产欧美一区| 99精品热视频| 国产精品成人免费精品自在线观看| 亚洲免费高清| 性久久久久久久久久久久| 国产九九精品| 久久国产精品一区二区| 你懂的一区二区| 亚洲日本欧美在线| 欧美日韩一区二区三区在线看| 亚洲精品久久久久久久久久久久久| 日韩午夜视频在线观看| 欧美午夜免费影院| 午夜精品福利在线观看| 久久久久久欧美| 亚洲黄色成人网| 欧美日韩成人在线| 亚洲无限av看| 狼狼综合久久久久综合网| 亚洲精品乱码久久久久久按摩观| 欧美激情免费在线| 亚洲影院免费观看| 蜜臀av国产精品久久久久| 亚洲精品久久久久久一区二区 | 久久综合成人精品亚洲另类欧美| 欧美激情一区在线| 亚洲免费人成在线视频观看| 国产香蕉97碰碰久久人人| 蜜桃久久av| 亚洲视频视频在线| 毛片av中文字幕一区二区| 一本到12不卡视频在线dvd| 国产农村妇女毛片精品久久麻豆 | 国产精品多人| 久久久亚洲国产天美传媒修理工| 亚洲精品日本| 久久久国产午夜精品| 艳妇臀荡乳欲伦亚洲一区| 国产美女精品免费电影| 欧美成人中文| 久久国内精品自在自线400部| 亚洲精品国产欧美| 久久亚洲精品网站| 亚洲一级一区| 亚洲精品国产欧美| 狠狠色狠狠色综合| 欧美性大战xxxxx久久久| 久久亚洲综合网| 亚洲欧美中文在线视频| 亚洲精品一区二区三区蜜桃久| 久久久久久婷| 欧美在线视频免费| 一区二区三欧美| 亚洲激情婷婷| 伊人影院久久| 国产亚洲欧美日韩精品| 欧美午夜精品久久久久免费视| 欧美jizz19hd性欧美| 久久精品国产免费| 亚洲欧美日韩在线播放| 夜夜嗨av一区二区三区网页| 亚洲观看高清完整版在线观看| 久久久精品一区| 欧美一区日韩一区| 亚洲欧美日本国产专区一区| 一区二区日韩伦理片| 亚洲精品美女91| 亚洲精品一区二区三区婷婷月 | 国产亚洲一区二区三区在线观看| 欧美色网在线| 欧美日韩在线视频首页| 欧美喷潮久久久xxxxx| 欧美日韩中文另类| 欧美国产日本在线| 久久一日本道色综合久久| 欧美日韩aaaaa| 欧美精品97| 99国产精品久久久久久久成人热 | 久久久99久久精品女同性| 欧美激情一区二区| 国产一区二区黄| 一区二区冒白浆视频| 久久久午夜视频| 99re热这里只有精品免费视频| 欧美一区二区视频97| 欧美屁股在线| 伊人成人在线视频| 午夜国产精品影院在线观看| 欧美国产欧美亚洲国产日韩mv天天看完整 | 欧美一级视频免费在线观看| 欧美精品在线观看91| 精品av久久久久电影| 亚洲影院免费观看| 亚洲国产精品久久久久秋霞不卡| 亚洲欧美一区二区在线观看| 欧美区国产区| 亚洲黄色在线看| 久久日韩精品| 亚洲综合二区| 欧美性猛交xxxx乱大交退制版| 亚洲精品乱码久久久久久日本蜜臀 | 亚洲国产日韩一区| 久久国产精品99精品国产| 99日韩精品| 欧美国产在线观看| 亚洲国产91精品在线观看| 久久久www| 亚洲女人天堂av| 国产精品免费看| 亚洲午夜av| 亚洲免费成人av电影| 欧美精品一区三区在线观看| 亚洲电影免费| 欧美v国产在线一区二区三区| 新67194成人永久网站| 国产精品日韩欧美一区二区| 亚洲一区成人| 亚洲天堂网站在线观看视频| 欧美三级在线播放| 亚洲一区二区欧美| av不卡在线观看| 国产精品播放| 亚洲欧美日本日韩| 亚洲综合社区| 国产视频一区在线观看| 久久精品综合| 久久久人成影片一区二区三区| 在线观看国产精品网站| 欧美va天堂|