OD使用教程3(中) - 调试篇03|解密系列
生活随笔
收集整理的這篇文章主要介紹了
OD使用教程3(中) - 调试篇03|解密系列
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
OD使用教程3(上) - 調試篇03
?讓編程改變世界
Change the world by program
?
關于系統API
? Windows應用程序運行在Ring3級別(包括我們的倚天劍:OllyDBG) [caption id="attachment_704" align="aligncenter" width="353"] windows等級安排[/caption] ? 但有時候需要Ring0級別才能進行操作,那咋整? 我們可以通過系統為我們搭建的橋梁:API函數,我們也稱之為系統提供給我們的接口。 ? 因為系統只信任自己提供的函數,所以我們要通過API才能實現對內核的操作。 你可以這么想,假如小甲魚送給你一輛法拉利跑車,恩,你沒聽錯,是假如,不是真的!那你要怎么來駕駛她? ? 沒錯,要通過踩油門來加速,要通過打方向盤來轉彎……而油門,方向盤 就是所謂的接口,對于法拉利來說,它們就是API函數。 ?關于mov指令
? mov指令格式:mov dest, src 這是一個很容易理解的指令,mov指令將src的內容拷貝到dest,mov指令總共有以下幾種擴展: ? movs/movsb/movsw/movsd edi,esi:這些變體按串/字節/字/雙字為單位將esi寄存器指向的數據復制到edi寄存器指向的空間。 movsx符號位擴展,byte->word,word->dword (擴展后高位全用符號位填充),然后實現mov。 movzx零擴展,byte->word,word->dword(擴展后高位全用0填充),然后實現mov。 ?關于cmp指令
? cmp指令格式:cmp dest, src cmp指令比較dest和src兩個操作數,并通過比較結果設置C/?O/Z標志位。 ?cmp指令大概有以下幾種格式:
cmp eax, ebx ;如果相等,Z標志位置1,否則0. cmp eax, [404000] ;將eax和404000地址處的dword型數據相比較并同上置位。 cmp [404000], eax ;同上。 ?標志位
? 對于這個概念,建議魚油以關注蒼井空老師的熱情去關注它,因為它在破解中起到的作用是至關重要的。 事實上所有的標志位歸并與一個32位的標志位寄存器,也就是說有32個不同的標志位。 ? 每個標志位有兩個屬性:置1或置0,就相當于我們平時說的OK或不OK,OK就買魚C優盤支持小甲魚,不OK就看著小甲魚餓死街頭醬紫啦~ 哈哈,大家可能更加關注的是32個標志位都要記住?那不折騰死人才怪! ? 在逆向中,你真正需要關心的標志位只有三個,也就是cmp指令能修改的那三個:Z/O/C。 Z標志位(0標志),這個標志位是最常用的,運算結果為0時候,Z標志位置1,否則置0。 O標志位(溢出標志),在運行過程中,如操作數超出了機器能表示的范圍則稱為溢出,此時OF位置1,否則置0。 C標志位(進位標志),記錄運算時從最高有效位產生的進位值。例如執行加法指令時,最高有效位有進位時置1,否則置0。 [buy]?獲得所有教學視頻、課件、源代碼等資源打包?[/buy] [Downlink href='http://kuai.xunlei.com/d/LXZAPQEXMXQQ']視頻下載[/Downlink] [Downlink href='http://urlxf.qq.com/?67Rney2']備胎下載[/Downlink]轉載于:https://www.cnblogs.com/LoveFishC/archive/2012/09/06/3846250.html
總結
以上是生活随笔為你收集整理的OD使用教程3(中) - 调试篇03|解密系列的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: awstats+jawstats自动分析
- 下一篇: CSS 常用属性