国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關(guān)注微信公眾號

惡意軟件反檢測技術(shù)簡介:反調(diào)試技術(shù)解析 (1)
2008-10-13   

在上篇中,我們會為讀者介紹惡意軟件常用來的反仿真技術(shù)。本文中,我們將向讀者介紹惡意軟件用以阻礙對其進(jìn)行逆向工程的各種反調(diào)試技術(shù),以幫助讀者很好的理解這些技術(shù),從而能夠更有效地對惡意軟件進(jìn)行動態(tài)檢測和分析。

一、反調(diào)試技術(shù)

反調(diào)試技術(shù)是一種常見的反檢測技術(shù),因為惡意軟件總是企圖監(jiān)視自己的代碼以檢測是否自己正在被調(diào)試。為做到這一點,惡意軟件可以檢查自己代碼是否被設(shè)置了斷點,或者直接通過系統(tǒng)調(diào)用來檢測調(diào)試器。

1.斷點

為了檢測其代碼是否被設(shè)置斷點,惡意軟件可以查找指令操作碼0xcc(調(diào)試器會使用該指令在斷點處取得惡意軟件的控制權(quán)),它會引起一個SIGTRAP。如果惡意軟件代碼本身建立了一個單獨的處理程序的話,惡意軟件也可以設(shè)置偽斷點。用這種方法惡意軟件可以在被設(shè)置斷點的情況下繼續(xù)執(zhí)行其指令。

惡意軟件也可以設(shè)法覆蓋斷點,例如有的病毒采用了反向解密循環(huán)來覆蓋病毒中的斷點。相反,還有的病毒則使用漢明碼自我糾正自身的代碼。漢明碼使得程序可以檢測并修改錯誤,但是在這里卻使病毒能夠檢測并清除在它的代碼中的斷點。

2.計算校驗和

惡意軟件也可以計算自身的校驗和,如果校驗和發(fā)生變化,那么病毒會假定它正在被調(diào)試,并且其代碼內(nèi)部已被放置斷點。VAMPiRE是一款抗反調(diào)試工具,可用來逃避斷點的檢測。VaMPiRE通過在內(nèi)存中維護(hù)一張斷點表來達(dá)到目的,該表記錄已被設(shè)置的所有斷點。該程序由一個頁故障處理程序(PFH),一個通用保護(hù)故障處理程序(GPFH),一個單步處理程序和一個框架API組成。當(dāng)一個斷點被觸發(fā)的時候,控制權(quán)要么傳給PFH(處理設(shè)置在代碼、數(shù)據(jù)或者內(nèi)存映射I/O中的斷點),要么傳給GPFH(處理遺留的I/O斷點)。單步處理程序用于存放斷點,使斷點可以多次使用。

3.檢測調(diào)試器

在Linux系統(tǒng)上檢測調(diào)試器有一個簡單的方法,只要調(diào)用Ptrace即可,因為對于一個特定的進(jìn)程而言無法連續(xù)地調(diào)用Ptrace兩次以上。在Windows中,如果程序目前處于被調(diào)試狀態(tài)的話,系統(tǒng)調(diào)用isDebuggerPresent將返回1,否則返回0。這個系統(tǒng)調(diào)用簡單檢查一個標(biāo)志位,當(dāng)調(diào)試器正在運行時該標(biāo)志位被置1。直接通過進(jìn)程環(huán)境塊的第二個字節(jié)就可以完成這項檢查,以下代碼為大家展示的就是這種技術(shù):

mov eax, fs:[30h]
move eax, byte [eax+2]
test eax, eax    
jne @DdebuggerDetected

在上面的代碼中,eax被設(shè)置為PEB(進(jìn)程環(huán)境塊),然后訪問PEB的第二個字節(jié),并將該字節(jié)的內(nèi)容移入eax。通過查看eax是否為零,即可完成這項檢測。如果為零,則不存在調(diào)試器;否則,說明存在一個調(diào)試器。

如果某個進(jìn)程為提前運行的調(diào)試器所創(chuàng)建的,那么系統(tǒng)就會給ntdll.dll中的堆操作例程設(shè)置某些標(biāo)志,這些標(biāo)志分別是FLG_HEAP_ENABLE_TAIL_CHECK、FLG_HEAP_ENABLE_FREE_CHECK和FLG_HEAP_VALIDATE_PARAMETERS。我們可以通過下列代碼來檢查這些標(biāo)志:

mov eax, fs:[30h]
mov eax, [eax+68h]
and eax, 0x70
test eax, eax
jne @DebuggerDetected

在上面的代碼中,我們還是訪問PEB,然后通過將PEB的地址加上偏移量68h到達(dá)堆操作例程所使用的這些標(biāo)志的起始位置,通過檢查這些標(biāo)志就能知道是否存在調(diào)試器。

檢查堆頭部內(nèi)諸如ForceFlags之類的標(biāo)志也能檢測是否有調(diào)試器在運行,如下所示:

mov eax, fs:[30h]
mov eax, [eax+18h] ;process heap
mov eax, [eax+10h] ;heap flags
test eax, eax
jne @DebuggerDetected

上面的代碼向我們展示了如何通過PEB的偏移量來訪問進(jìn)程的堆及堆標(biāo)志,通過檢查這些內(nèi)容,我們就能知道Force標(biāo)志是否已經(jīng)被當(dāng)前運行的調(diào)試器提前設(shè)置為1了。

另一種檢測調(diào)試器的方法是,使用NtQueryInformationProcess這個系統(tǒng)調(diào)用。我們可以將ProcessInformationClass設(shè)為7來調(diào)用該函數(shù),這樣會引用ProcessDebugPort,如果該進(jìn)程正在被調(diào)試的話,該函數(shù)將返回-1。示例代碼如下所示。

push 0
push 4
push offset isdebugged
push 7 ;ProcessDebugPort
push -1
call NtQueryInformationProcess
test eax, eax
jne @ExitError
cmp isdebugged, 0
jne @DebuggerDetected

在本例中,首先把NtQueryInformationProcess的參數(shù)壓入堆棧。這些參數(shù)介紹如下:第一個是句柄(在本例中是0),第二個是進(jìn)程信息的長度(在本例中為4字節(jié)),接下來是進(jìn)程信息類別(在本例中是7,表示ProcessDebugPort),下一個是一個變量,用于返回是否存在調(diào)試器的信息。如果該值為非零值,那么說明該進(jìn)程正運行在一個調(diào)試器下;否則,說明一切正常。最后一個參數(shù)是返回長度。使用這些參數(shù)調(diào)用NtQueryInformationProcess后的返回值位于isdebugged中。隨后測試該返回值是否為0即可。

另外,還有其他一些檢測調(diào)試器的方法,如檢查設(shè)備列表是否含有調(diào)試器的名稱,檢查是否存在用于調(diào)試器的注冊表鍵,以及通過掃描內(nèi)存以檢查其中是否含有調(diào)試器的代碼等。

另一種非常類似于EPO的方法是,通知PE加載器通過PE頭部中的線程局部存儲器(TLS)表項來引用程序的入口點。這會導(dǎo)致首先執(zhí)行TLS中的代碼,而不是先去讀取程序的入口點。因此,TLS在程序啟動就可以完成反調(diào)試所需檢測。從TLS啟動時,使得病毒得以能夠在調(diào)試器啟動之前就開始運行,因為一些調(diào)試器是在程序的主入口點處切入的。


共3頁: 1 [2] [3] 下一頁
 第 1 頁:  第 2 頁:探測單步執(zhí)行
 第 3 頁:解除調(diào)試器線程

熱詞搜索:

上一篇:惡意軟件反檢測技術(shù)簡介:模擬器超限技術(shù) (1)
下一篇:利用跨站腳本攻擊(XSS)摧毀Web(1)

分享到: 收藏
国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区
午夜精品一区二区三区电影天堂 | 中文字幕一区不卡| 日韩三级中文字幕| 欧美日韩一区二区在线观看视频| 色综合欧美在线| 91在线看国产| 在线精品亚洲一区二区不卡| 欧美日韩免费电影| 欧美日韩一卡二卡三卡| 欧美喷潮久久久xxxxx| 欧美一区二区视频在线观看2022| 欧美精品v日韩精品v韩国精品v| 欧美乱妇23p| 日韩欧美一区二区免费| 精品免费视频一区二区| 精品久久久久香蕉网| 日本一区二区三区dvd视频在线| 国产欧美精品一区二区色综合 | 亚洲国产精品精华液2区45| 精品av综合导航| 国产婷婷色一区二区三区| 亚洲国产精品99久久久久久久久| 欧美激情中文不卡| 亚洲综合男人的天堂| 免费欧美在线视频| 国产69精品久久久久毛片| 91麻豆.com| 日韩视频一区在线观看| 国产精品美女久久久久久| 亚洲精品国产一区二区精华液| 爽好多水快深点欧美视频| 国产最新精品精品你懂的| 99久久国产综合精品女不卡| 欧美日韩免费一区二区三区视频| 精品国产成人在线影院| 亚洲欧洲精品天堂一级 | 亚洲丝袜美腿综合| 午夜精品福利一区二区三区蜜桃| 久久99精品视频| 99r精品视频| 欧美一区二区在线免费播放| 综合中文字幕亚洲| 免费看精品久久片| 91丝袜美女网| 久久中文字幕电影| 亚洲激情综合网| 风间由美一区二区三区在线观看 | 国产精品一区不卡| 在线视频欧美精品| 国产三级久久久| 美女一区二区视频| 色网综合在线观看| 国产亚洲精品资源在线26u| 亚洲午夜久久久久久久久久久| 国产乱码精品一区二区三区五月婷| 色婷婷综合视频在线观看| 国产亚洲一区二区在线观看| 五月天久久比比资源色| 成+人+亚洲+综合天堂| 精品国产一区二区三区久久久蜜月| 亚洲精品国产a久久久久久| 国产一区二区三区在线观看精品| 欧美精品免费视频| 亚洲激情欧美激情| 97精品视频在线观看自产线路二| 久久精品欧美日韩精品| 蜜桃精品视频在线| 欧美高清一级片在线| 亚洲精品美国一| 91亚洲资源网| 五月天欧美精品| 色婷婷狠狠综合| ●精品国产综合乱码久久久久| 国产中文字幕一区| 久久午夜老司机| 久久99久久99精品免视看婷婷| 欧美日韩在线三级| 亚洲成人动漫在线免费观看| 欧美性高清videossexo| 亚洲免费高清视频在线| 91在线无精精品入口| 国产精品久久久久一区二区三区共 | 亚洲图片自拍偷拍| 91电影在线观看| 亚洲一区影音先锋| 欧美日韩国产成人在线免费| 天天亚洲美女在线视频| 欧美精品久久一区二区三区| 奇米色一区二区| 精品处破学生在线二十三| 国产精品18久久久久久vr| 久久日韩粉嫩一区二区三区| 国产精品一二三四区| 国产亚洲精品久| 99精品欧美一区| 亚洲毛片av在线| 欧美丰满少妇xxxxx高潮对白 | www国产精品av| 国产不卡高清在线观看视频| 国产精品乱码妇女bbbb| 色欲综合视频天天天| 亚洲成av人片一区二区梦乃| 日韩三级视频在线看| 高清成人在线观看| 又紧又大又爽精品一区二区| 欧美久久久久中文字幕| 精品亚洲国内自在自线福利| 国产精品丝袜一区| 欧美性视频一区二区三区| 日日摸夜夜添夜夜添精品视频| 久久一区二区视频| 91视频xxxx| 日韩成人免费看| 国产精品国产三级国产aⅴ中文 | 五月激情综合色| 久久久久99精品国产片| 日本韩国视频一区二区| 国产在线麻豆精品观看| 1024国产精品| 久久色在线视频| 91国偷自产一区二区开放时间| 久久se这里有精品| 亚洲视频网在线直播| 精品国产乱码久久久久久影片| 9人人澡人人爽人人精品| 三级欧美韩日大片在线看| 国产精品少妇自拍| 91精品福利在线一区二区三区| 粉嫩av亚洲一区二区图片| 奇米精品一区二区三区在线观看| 国产精品久久久一本精品| 日韩精品一区二| 欧美日韩高清影院| av电影在线观看一区| 激情综合亚洲精品| 亚洲国产aⅴ成人精品无吗| 日韩美女精品在线| 久久久亚洲精品石原莉奈 | 国产一区久久久| 午夜精品福利在线| 一区二区三区在线不卡| 国产女人18水真多18精品一级做 | 国产区在线观看成人精品| 日韩三级伦理片妻子的秘密按摩| 在线视频你懂得一区二区三区| 成人午夜私人影院| 美女视频一区二区| 亚洲成av人片在线观看无码| 亚洲乱码中文字幕综合| 欧美精彩视频一区二区三区| 精品免费日韩av| 欧美一区二区三区系列电影| 欧美少妇一区二区| 91蝌蚪国产九色| 91麻豆产精品久久久久久| 97se亚洲国产综合在线| 波多野结衣视频一区| 豆国产96在线|亚洲| 成人av电影观看| 成人免费va视频| 色婷婷综合久久久| 日本精品裸体写真集在线观看| 欧美性高清videossexo| 欧美日韩一区二区在线观看视频| 欧美日韩aaaaaa| 欧美一级片在线观看| 日韩精品一区二区三区视频| 日韩精品一区二区三区四区视频| 日韩欧美一级二级三级| 久久亚洲综合色| 国产精品三级电影| 亚洲女女做受ⅹxx高潮| 亚洲女同一区二区| 亚洲午夜一区二区三区| 蜜桃精品在线观看| 大胆亚洲人体视频| 91视频在线观看免费| 91精品国产综合久久蜜臀| 欧美一级高清片| 中文字幕av不卡| 亚洲黄色免费电影| 美女诱惑一区二区| av高清不卡在线| 3d动漫精品啪啪1区2区免费| 日韩免费电影一区| 国产精品每日更新| 亚洲妇熟xx妇色黄| 国产精品亚洲成人| 色婷婷精品大视频在线蜜桃视频| 91精品麻豆日日躁夜夜躁| 国产亚洲成av人在线观看导航| 亚洲精品ww久久久久久p站| 精品一区二区免费在线观看| 91蜜桃在线免费视频| 精品少妇一区二区三区在线视频| 国产精品青草综合久久久久99| 亚洲成人黄色影院| 国产91丝袜在线播放九色| 欧美年轻男男videosbes| 亚洲日本青草视频在线怡红院|