freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

參加英國(guó)國(guó)際學(xué)術(shù)會(huì)議有感——陳莉(編輯修改稿)

2025-10-08 22:37 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 系統(tǒng)軟硬件異常的一種機(jī)制,在程序設(shè)計(jì)中的合理使用可以提高軟件的穩(wěn)定性、容錯(cuò)性。本文著重探討了其在軟件反跟蹤中的應(yīng)用。應(yīng)用程序正常執(zhí)行中出現(xiàn)異常時(shí), 操作系統(tǒng)將收集異常發(fā)生的原因、類型、位置等信息,填寫相關(guān)的數(shù)據(jù)結(jié)構(gòu),并從用戶程序轉(zhuǎn)到系統(tǒng)級(jí)執(zhí)行,將控制權(quán)交給系統(tǒng)的異常調(diào)度函數(shù)。該函數(shù)將根據(jù)系統(tǒng)收集的異常信息選擇一個(gè)異常處理例程處理異常。用戶可定義的異常處理例程分為兩種;一種是線程相關(guān)的,一種是進(jìn)程相關(guān)的:線程相關(guān)的異常處理例程,監(jiān)視某線程中某段代碼是否發(fā)生異常,由于線程是程序執(zhí)行的最小單位,所以把異常解決于線程的內(nèi)部,可以避免該異常對(duì)其它線程的干擾,保證程序的穩(wěn)定運(yùn)行。進(jìn)程相關(guān)的異常處理例程:也稱為篩選器,監(jiān)視進(jìn)程中所有線程發(fā)生的異常,做進(jìn)程退出前的清理工作。異常處理流程是指運(yùn)行在win32系統(tǒng)中的程序通常包含多個(gè)線程,而每個(gè)線程都會(huì)安裝各自的異常處理例程;除此之外,程序中可能存在一個(gè)全局性的異常處理例程;再者,如果進(jìn)程被調(diào)試的話,調(diào)試進(jìn)程也相當(dāng)于一個(gè)異常處理例程。當(dāng)異常發(fā)生時(shí),系統(tǒng)將根據(jù)異常類型選擇一個(gè)異常處理例程來處理異常,正常情況下,系統(tǒng)進(jìn)行異常處理的流程為:系統(tǒng)首先判斷異常是否應(yīng)發(fā)送給目標(biāo)程序的異常處理例程。如果應(yīng)該發(fā)送,并且目標(biāo)程序正在被調(diào)試.則系統(tǒng)掛起程序;如果程序沒有被調(diào)試或者調(diào)試器未能處理異常,系統(tǒng)繼續(xù)查找是否安裝了線程相關(guān)的異常處理例程。如果已經(jīng)安裝,系統(tǒng)就把異常發(fā)送給SEH處理例程。每個(gè)線程相關(guān)的異常處理例程可以處理或者不處理這個(gè)異常,如果它不處理并且安裝了多個(gè)線程相關(guān)的異常處理例程可交由鏈起來的其他例程處理;如果這些SEH處理例程均不處理異常,且程序處于被調(diào)試狀態(tài),操作系統(tǒng)會(huì)再次通知調(diào)試器;如果程序未處于被調(diào)試狀態(tài)或者調(diào)試器沒有能夠處理,并且程序調(diào)用SetUnhandledExceptionFilter函數(shù)安裝了進(jìn)程相關(guān)的異常處理例程的話,系統(tǒng)轉(zhuǎn)向?qū)λ恼{(diào)用;如果沒有安裝進(jìn)程相關(guān)的異常處理例程或者它沒有處理這個(gè)異常,系統(tǒng)會(huì)調(diào)用默認(rèn)的異常處理例程,通常顯示一個(gè)對(duì)話框,用戶可以選擇“關(guān)閉”或者可以將程序附加到調(diào)試器的“調(diào)試”按鈕。如果沒有可以附加的調(diào)試器或調(diào)試器也不處理,系統(tǒng)就對(duì)線程異常處理句柄進(jìn)行展開做最后的清理工作,最終調(diào)用ExitProcess終結(jié)程序。通過對(duì)系統(tǒng)異常處理流程分析可知,當(dāng)應(yīng)用程序執(zhí)行過程中發(fā)生異常時(shí),系統(tǒng)可在三個(gè)層次上完成異常處理:調(diào)試器、進(jìn)程、線程。線程層次的異常處理即SEH,能夠準(zhǔn)確定位異常的信息,更加靈活、隱蔽的實(shí)現(xiàn)反跟蹤的功能,是本文研究的主要方面。下面深入分析SEH的工作原理。系統(tǒng)級(jí)處理機(jī)制,SEH作為系統(tǒng)內(nèi)部處理異常的一種機(jī)制,其工作主要在系統(tǒng)級(jí)完成,因此掌握系統(tǒng)內(nèi)部異常處理的工作原理是研究基于SEH的軟件反跟蹤的關(guān)鍵。下面圍繞異常處理例程深入分析系統(tǒng)級(jí)異常處理機(jī)制。異常發(fā)生時(shí),系統(tǒng)執(zhí)行KiUserExceptionDispatcher函數(shù)并調(diào)用RtlDispatchException啟動(dòng)對(duì)注冊(cè)的異常處理例程的查找。如果找到的處理例程處理了異常并繼續(xù)執(zhí)行,則對(duì)RtlDispatchException 的調(diào)用不再返回。否則,有兩種可能:調(diào)用 NtContinue使程序繼續(xù)或產(chǎn)生另一個(gè)異常。若是后者,異常不再繼續(xù),進(jìn)程必須終止。RtlDispatchException函數(shù)遍歷異常幀,利用獲得的指向 EXCEPTION_REGISTRATIONS鏈表的指針遍歷每一個(gè)節(jié)點(diǎn)查找異常處理例程,并通過 RtlpExecuteHandlerForException 完成異常處理例程的調(diào)用,根據(jù)RtlpExecuteHandlerForException 的反饋信息,RtlDispatchException或者繼續(xù)遍歷異常幀,或者產(chǎn)生另一個(gè)異常,最終將控制送至ExecuteHandler函數(shù),由該函數(shù)通過 EXCEPTION_REGISTRATION 的 handler 域調(diào)用異常處理例程,對(duì)程序執(zhí)行中產(chǎn)生的異常進(jìn)行處理。SEH在軟件反跟蹤中的主要應(yīng)用方式是調(diào)試工具的檢測(cè)、硬件斷點(diǎn)的去除、改變程序執(zhí)行順序等,但這些反跟蹤技術(shù)相對(duì)比較成熟,很容易被破解者發(fā)現(xiàn)并成功破解。本文所介紹的是一種更加隱蔽,效果更好的反跟蹤方式:?jiǎn)尾疆惓3槿〈a法。在程序的正常執(zhí)行序列中設(shè)置功能請(qǐng)求標(biāo)志位,之后觸發(fā)單步異常,進(jìn)入異常處理例程后根據(jù)標(biāo)志位完成所抽取的相應(yīng)的功能,繼續(xù)程序的運(yùn)行。這樣,如果破解者不能發(fā)現(xiàn)異常處理例程的存在,將無法實(shí)現(xiàn)該功能。這是因?yàn)楫惓0l(fā)生后,調(diào)試器接管了異常,而不會(huì)去調(diào)用作者安裝的實(shí)現(xiàn)具體功能的異常處理例程,從而達(dá)到反跟蹤的目的。利用單步異常實(shí)現(xiàn)反跟蹤的具體過程是安裝異常處理例程,在程序開始處將異常處理函數(shù)地址放入EXCEPTION_REGISTRATION結(jié)構(gòu)的handler域中,一旦執(zhí)行過程中有異常發(fā)生系統(tǒng)就通過handler域的地址調(diào)用異常處理函數(shù),完成相關(guān)的異常處理,正常執(zhí)行代碼,安裝完異常處理例程,其后是程序功能代碼,在這里設(shè)置標(biāo)志以便異常函數(shù)作不同的處理。插入單步異常指令,此處是關(guān)鍵的地方,因?yàn)槌绦虻姆凑{(diào)試功能通過它來實(shí)現(xiàn)。當(dāng)程序執(zhí)行到這里時(shí),根據(jù)是否處于調(diào)試狀態(tài)有兩條執(zhí)行路徑,一條是處于調(diào)試狀態(tài),這時(shí)調(diào)試器接收異常信息,并進(jìn)行相關(guān)的處理,這樣將有部分程序代碼得不到執(zhí)行而使程序出現(xiàn)錯(cuò)誤;另一條執(zhí)行路徑是不處于調(diào)試狀態(tài)下,程序本身將通過異常處理函數(shù)來處理異常,這樣程序中部分被抽取的代碼將得到執(zhí)行,程序不出現(xiàn)錯(cuò)誤,且功能可以實(shí)現(xiàn)。清除異常處理例程,程序執(zhí)行完功能代碼后,要把開始時(shí)安裝的異常處理例程去除,否則容易引起系統(tǒng)錯(cuò)誤。清除的方法是:用出棧指令將EXCEPTION_REGISTRATION結(jié)構(gòu)的prev與和handler域彈出即可。這次參加ICACTE國(guó)際會(huì)議,通過和與會(huì)學(xué)者的交流、探討,我覺得自己的收獲主要在以
點(diǎn)擊復(fù)制文檔內(nèi)容
合同協(xié)議相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1