最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

調(diào)試與反調(diào)試系列丨使用異常進(jìn)行反調(diào)試

2022-06-16 23:43 作者:rkvir逆向工程學(xué)院  | 我要投稿

使用異常進(jìn)行反調(diào)試是利用異常處理的機(jī)制對(duì)調(diào)試器進(jìn)行一些操作。

原理是自己處理了異常就會(huì)走正常流程,如果沒(méi)有接收到自己的異常,就說(shuō)明異常被調(diào)試器接收了,無(wú)法正常處理。那么就可以判斷是在調(diào)試器中運(yùn)行的。

我們先來(lái)創(chuàng)建一個(gè)DLL項(xiàng)目。步驟如下:


  1. ?選擇新建項(xiàng)目


2.創(chuàng)建win32控制臺(tái)應(yīng)用程序->點(diǎn)擊確定


3.勾選空項(xiàng)目,完成


4.新建源文件entry.cpp


5.配置

5.1?選擇屬性


5.2修改運(yùn)行庫(kù),應(yīng)用


6.?添加#include、#include、主函數(shù)和默認(rèn)循環(huán)


7.?要?jiǎng)?chuàng)建一個(gè)線程,先寫(xiě)一個(gè)線程回調(diào)


8.在主函數(shù)里創(chuàng)建線程


9.填入檢測(cè)調(diào)試器用的代碼


9.1在try觸發(fā)異常,通過(guò)EXCEPTION_EXECUTE_HANDLER(異常處理常量)判斷要自行處理異常,進(jìn)入到異常處理的代碼執(zhí)行


9.2手動(dòng)寫(xiě)一個(gè)異常語(yǔ)句_asm int 3 (軟件斷點(diǎn))


9.3如果被調(diào)試器接收沒(méi)有處理,就會(huì)崩(int 3觸發(fā)異常,調(diào)試器識(shí)別為自行下的斷點(diǎn))


9.4自行處理加continue(跳出去,進(jìn)行下一個(gè)循環(huán))


9.5聲明是一個(gè)已知的異常,已知異常的處理代碼就是continue,沒(méi)有調(diào)試器附加,這個(gè)代碼就會(huì)一直運(yùn)行(內(nèi)部其實(shí)觸發(fā)了異常,不過(guò)異常已經(jīng)被自行處理掉了)


10.?在調(diào)試器里打開(kāi),

沒(méi)有處理的情況下,調(diào)試器一直在暫停

處理的情況下

在od打開(kāi),出現(xiàn)彈窗(在x32dbg沒(méi)有彈窗,是因?yàn)楸挥涗浵聛?lái)了)

利用異常進(jìn)行反調(diào)試的正常情況下,在這一步識(shí)別到調(diào)試器之后

會(huì)做一些誤導(dǎo)分析者這里是正常執(zhí)行位置的假象,從而達(dá)到利用異常進(jìn)行反調(diào)試的目的。


調(diào)試與反調(diào)試系列丨使用異常進(jìn)行反調(diào)試的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
微山县| 建阳市| 手游| 潮安县| 贵德县| 开远市| 库车县| 兴义市| 兴宁市| 张家港市| 鄂伦春自治旗| 岚皋县| 平江县| 句容市| 锡林郭勒盟| 金阳县| 济南市| 丹巴县| 吴川市| 涪陵区| 江源县| 延吉市| 互助| 凭祥市| 寻乌县| 全椒县| 屏东市| 绥芬河市| 长沙县| 清徐县| 青海省| 榆中县| 定安县| 吴川市| 景东| 宜良县| 名山县| 淮北市| 崇礼县| 光山县| 布尔津县|