乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      OD學(xué)習(xí)筆記

       hjd7578 2019-03-28
      OD 第二課
      1、OD與IDA是兩個常用工具。OD是動態(tài)分析,IDA是靜態(tài)分析。


      2、F2下斷點(diǎn),F(xiàn)3加載一個可執(zhí)行程序。


      3、Call *** 按F7可以進(jìn)入該函數(shù)內(nèi)部,Ctrl + F9運(yùn)行至ret出,就可以返回程序了。


      4、Alt + B打開斷點(diǎn)編輯器,用于取消斷點(diǎn),del或者空格取消斷點(diǎn)。


      5、Ctrl + G可以查找函數(shù)名,例如:GetDlgItemTextA 或者 GetDlgItemTextW


      6、單步執(zhí)行時,注意下面提示,有時候會發(fā)現(xiàn)一些用用的信息的。


      7、當(dāng)程序停止下來時,按下Ctrl + G,輸入esp + 4C,可以查看地址內(nèi)容。


      8、Call返回值存放在eax中,返回地址時,eax中存放地址。


      9、test eax,eax,查看eax是否為0,為0時,Z=1,雙擊Z,則Z變成0.


      10、不想讓je跳轉(zhuǎn)的兩種方法,(1)將Z改成0;(2)將je short 0040122e雙擊,改成nop填充即可。


      11、保存修改:選中修改的文件,右擊,復(fù)制到可自行文件,選擇,備份,保存數(shù)據(jù)到文件。如果程序加過殼,則會不可執(zhí)行。


      12、如果跟進(jìn)到系統(tǒng)dll中,此時想返回到應(yīng)用程序領(lǐng)空,可以按Alt + F9,返回到用戶代碼。


      13、如004013F7,這類地址一般是可自行文件領(lǐng)空,7C8114AB這類地址一般是系統(tǒng)Dll所在的地址空間。


      14、Ctrl + N,可以打開應(yīng)用程序的導(dǎo)入表


      OD第三課
      1、找call
      call *** 等于push eip;然后jmp ***
      call幾種方式
      ——call 404000h,直接跳轉(zhuǎn)到函數(shù)或者過程的地址。
      ——call eax,函數(shù)或者過程的地址存放在eax中。
      ——call dword ptr[eax]  例如:eax中存放400080h,而400080h中存放404000h,所有實際是Call 404000h。
      ——call dword ptr[<&API>];執(zhí)行一個系統(tǒng)API。


      2、WinAPI參考文檔
      (1)Win32 Programmers Reference.rar -> win32.hlp
      (2)幫助->選擇API幫助文檔
      (3)選擇要查看的API,右擊->符號名幫助


      3、Cmp dest,src,比較dest,src并通過比較結(jié)果設(shè)置 C / 0 / Z 標(biāo)志位。
          cmp eax,-1 //如果eax = FFFFFFFF,
          cmp eax,[404000],將eax和404000地址處的dword型數(shù)據(jù)進(jìn)行比較并置位。
          cmp dword ptr[402173] 比較402173處值是否為16。


      4、標(biāo)志位
          cmp可以修改三個標(biāo)志位,Z / 0 / C
          Z標(biāo)志位:結(jié)果為0,則置1,否則置0;
          0標(biāo)志位:溢出置1,否則置0;
          C標(biāo)志位:進(jìn)位標(biāo)志,最高有效位有進(jìn)位置1,否則置0;


      5、test指令
         對兩個操作數(shù)進(jìn)行按位與運(yùn)算,但不將與的結(jié)果放到dest中,而and則會將與的結(jié)果放到dest中,test僅改變標(biāo)志位。
         test僅改變標(biāo)志位,test eax,eax (如果eax值為0,則Z置1)。


      6、跳轉(zhuǎn)條件
       ja  CF = 0 and ZF = 0
       jb  CF = 1
       jnz ZF = 0


      7、將jnz改成jmp實現(xiàn)無條件跳轉(zhuǎn)。將jnz改成nop指令,不讓跳,啥都不干。
          nop填充,選中要填充的指令,右擊->用nop填充。


      OD第四課 去除NAG窗口
      1、Messagebox,不讓彈出
       push 1,messagebox父句柄執(zhí)行為1,不存在的句柄值,則不彈出。


      2、PE結(jié)構(gòu)
      按M查看內(nèi)存分布圖,可以通過修改PE結(jié)構(gòu)來去除NAG。將模塊的入口地址更改。從00401000——>00401024即可。
      AddressofEntrypoint=1000 ——》1024。
      3、GetModuleHandleA可以獲得程序ImageBase


      OD第五課
      1、PE:sizeofcode = 4000400最高位有數(shù)據(jù),懷疑被惡意修改了。
         baseofcode = 40001000,代碼段的起始偏移地址。
         baseofdata = 40002000,數(shù)據(jù)段的起始偏移地址。
      2、PE結(jié)構(gòu)被修改后,windows加載器可以自動識別,但是OD不會,所以O(shè)D運(yùn)行不起來。
      3、advancedolly.dll 放到OD->plugin目錄下,即可載入進(jìn)來經(jīng)修改的PE了。需要設(shè)置插件的Ignore faked export table與Hande Base of Code,sizeof code and base of data。




      OD第六課
      1、忽略異常
      (1)shift + F9,用來忽悠異常,多按幾次。
      (2)選項->調(diào)試選項->異常->添加范圍 00000000->FFFFFFFF,整個內(nèi)存段的全部異常都忽略。
      2、Alt + F9 返回到用戶地址空間。
      3、點(diǎn)擊M ,Ctrl + B ,在整個內(nèi)存中查找字符串。UNREGISTERED VERSION
      4、找到字符串后,選中,右擊選擇 二進(jìn)制編輯 ,注意保持大小寫,返回到C,選擇修改后的內(nèi)容,保存下來即可。
      5、選擇某個地址,右擊,查看參考,可以查看到哪里引用了它。


      OD第七課
      1、OD軟件斷點(diǎn)與硬件斷點(diǎn)。
       軟件斷點(diǎn)的原理:在斷點(diǎn)處重寫代碼,插入一個int 3中斷指令,當(dāng)CPU執(zhí)行到int 3時,OD就可以獲得控制權(quán)了。
       硬件斷點(diǎn):調(diào)試寄存器Dr0——Dr7,其中Dr0——Dr3四個寄存器用來存放中斷地址,Dr4——Dr5保留不使用,Dr6——Dr7用來記錄Dr0——Dr3的屬性。
      硬件斷點(diǎn)只有四個。
      何時使用:
      (1)軟件斷點(diǎn)只能在OD的CPU界面下,在數(shù)據(jù)段下不了。
      (2)當(dāng)想將斷點(diǎn)下載Windows的動態(tài)鏈接庫上時,需要用硬件斷點(diǎn),因為用軟件斷點(diǎn)下在dll界面是不會保存的,重啟后將丟失斷點(diǎn)。


      2、跳出循環(huán)的方法:在循環(huán)下一條語句下一個斷點(diǎn),F(xiàn)9走到斷點(diǎn)處
      3、下硬件斷點(diǎn):選中->右擊->硬件執(zhí)行。硬件斷點(diǎn)使用完需要立即清除,因為資源有限。
      4、去除Nag,只需要Call *** 改為 Move eax,1,這樣此函數(shù)始終返回1, 程序即可執(zhí)行了。
      5、K查看哪些函數(shù)被調(diào)用過了。
      6、要關(guān)注跳轉(zhuǎn)的地方,比較正常與異常時,跳轉(zhuǎn)的區(qū)別,這樣可以改變程序的執(zhí)行路徑,實現(xiàn)破解。


      OD第八課 去除Nag —— 第十七課
      1、查找標(biāo)題中的字符串
      右擊->查找->所有參考文本串,再在其中找標(biāo)題中對應(yīng)的字符串即可。


      2、通過閱讀jmp前幾行代碼規(guī)律,分析破解方法
       
      OD第十課 VB程序破解
      1、利用PEiD.exe可以查看可執(zhí)行文件用什么編譯工具編譯的,加了什么殼,需要使用英文版的PEid
      2、所有的VB程序都依賴一個外部的動態(tài)鏈接庫,MSVBVM60.dll
      3、VB破解關(guān)鍵
      針對變量        針對字符串
      _vbaVarTstEq   _vbaStrCmp
      _vbaVarTstNe   _vbaStrComp
      4、Ctrl + N 調(diào)出輸出表,查找調(diào)用的函數(shù),在用斷點(diǎn)進(jìn)行調(diào)試。


      OD第十二課 介紹Delphi
      OD第十三棵
      1、DialogBoxs類型常用APIs,用這些API進(jìn)行搜索。
      2、查找->所有模塊間的調(diào)用,可以在每個調(diào)用GetWindowTextA上設(shè)置斷點(diǎn)。
      3、Ctrl + N,輸入GetWindowTextA,在每個參考上設(shè)置斷點(diǎn)。


      OD第十五課
      1、內(nèi)嵌補(bǔ)丁,把補(bǔ)丁代碼寫入文件,達(dá)到破解的目的。解決因指令長度不匹配導(dǎo)致堆棧破壞的問題。
      2、通過書簽方式,可以方便跳轉(zhuǎn)。
      OD第十七課
      介紹硬件訪問斷點(diǎn)的使用。


        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多