資源描述:
《反調(diào)試技巧總結(jié)-原理和實(shí)現(xiàn)》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。
1、為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車(chē)場(chǎng)安保新項(xiàng)目的正常、順利開(kāi)展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個(gè)人素質(zhì)的培訓(xùn)計(jì)劃反調(diào)試技巧總結(jié)-原理和實(shí)現(xiàn) 反調(diào)試技巧總結(jié)-原理和實(shí)現(xiàn) PostedonXX-01-1615:24!ep.¢%閱讀(2027)評(píng)論(0)編輯收藏引用所屬分類(lèi): 2、我并沒(méi)有總結(jié)完全,上面的部分分類(lèi)目前還只有很少的函數(shù)甚至空白,等待大家和我一起來(lái)完善和補(bǔ)充。我堅(jiān)信如果有扎實(shí)的基礎(chǔ)知識(shí),豐富的想像力,靈活的運(yùn)用,就會(huì)創(chuàng)造出更多的屬于自己的反調(diào)試。而最強(qiáng)的反調(diào)試,通常都是自己創(chuàng)造的,而不是來(lái)自別人的代碼?! 《?、查找-通用調(diào)試器(FD_)
2、 函數(shù)列表如下,后面會(huì)依次說(shuō)明,需事先說(shuō)明的是,這些反調(diào)試手段多數(shù)已家喻戶(hù)曉,目前有效的不多,多數(shù)已可以通過(guò)OD的插件順利通過(guò),如果你想驗(yàn)證它們的有效性,請(qǐng)關(guān)閉OD的所有反反調(diào)試插件: boolFD_IsDebuggerPresent(); boolFD_PEB_BeingDebuggedFlag(); boolFD_PEB_NtGlobalFlags(); boolFD_Heap_HeapFlags(); boolFD_Heap_ForceFlags(); boolFD_Heap_Tail(); boolFD_CheckRemot
3、eDebuggerPresent();目的-通過(guò)該培訓(xùn)員工可對(duì)保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專(zhuān)業(yè)水平,并確保其在這個(gè)行業(yè)的安全感。為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車(chē)場(chǎng)安保新項(xiàng)目的正常、順利開(kāi)展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個(gè)人素質(zhì)的培訓(xùn)計(jì)劃 boolFD_NtQueryInfoProc_DbgPort(); boolFD_NtQueryInfoProc_DbgObjHandle(); boolFD_NtQueryInfoProc_DbgFlags(); boolFD_NtQueryInfoProc_Sys
4、KrlDbgInfo(); boolFD_SeDebugPrivilege(); boolFD_Parent_Process(); boolFD_DebugObject_NtQueryObject(); boolFD_Find_Debugger_Window(); boolFD_Find_Debugger_Process(); boolFD_Find_Device_Driver(); boolFD_Exception_Closehandle(); boolFD_Exception_Int3(); boolFD_Exception_
5、Popf(); boolFD_OutputDebugString(); boolFD_TEB_check_in_Vista(); boolFD_check_StartupInfo(); boolFD_Parent_Process1(); boolFD_Exception_Instruction_count(); boolFD_INT_2d(); FD_IsDebuggerPresent()目的-通過(guò)該培訓(xùn)員工可對(duì)保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專(zhuān)業(yè)水平,并確保其在這個(gè)行業(yè)的安全感。為了適應(yīng)公司新戰(zhàn)略的發(fā)
6、展,保障停車(chē)場(chǎng)安保新項(xiàng)目的正常、順利開(kāi)展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個(gè)人素質(zhì)的培訓(xùn)計(jì)劃 對(duì)調(diào)試器來(lái)說(shuō),IsDebuggerPresent是臭名昭著的惡意函數(shù)。不多說(shuō)了,它是個(gè)檢測(cè)調(diào)試的api函數(shù)。實(shí)現(xiàn)更簡(jiǎn)單,只要調(diào)用IsDebuggerPresent就可以了。在調(diào)用它之前,可以加如下代碼,以用來(lái)檢測(cè)是否在函數(shù)頭有普通斷點(diǎn),或是否被鉤掛?! ?/checksoftbreak if(*(BYTE*)Func_addr==0xcc) returntrue; //checkhook if(*(BYTE*)Func_addr!=0x64) r
7、eturntrue; FD_PEB_BeingDebuggedFlag 我們知道,如果程序處于調(diào)試器中,那么在PEB結(jié)構(gòu)中有個(gè)beingDegug標(biāo)志會(huì)被設(shè)置,直接讀取它就可判斷是否在調(diào)試器中。實(shí)際上IsDebuggerPresent就是這么干的?! _asm { moveax,fs:[30h];EAX= inceax inceax moveax,[eax] andeax,0xff;AL= testeax,eax jnert_label目的-通過(guò)該培訓(xùn)員工可對(duì)保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專(zhuān)業(yè)
8、水平,并確保其在這個(gè)行業(yè)的安全感。為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車(chē)場(chǎng)安保新項(xiàng)目的正常、順利開(kāi)展,特制定安保從業(yè)人員的業(yè)務(wù)