亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 邏輯算法 > 正文

(看雪教程) 第3章 第2節 SoftICE與TRW2000操作入門

2019-09-10 09:02:08
字體:
來源:轉載
供稿:網友

由于TRW2000命令和操作完全兼容SoftICE,因此如不特殊說明,在本文對SoftICE的敘說都適合TRW2000。
  SoftICE的所有操作都發生在一個可以隨時可激活的調試窗口中,在這個窗口中可以視Windows應用程序和系統的運行。
一、 調試窗口簡介
  我們假設你的SoftICE己經正常運行,此時在Windows里按"Ctrl+D"鍵就可以呼出SoftICE的調試窗口,當需要返回到Windows系統時,再按"Ctrl+D"鍵,也可使用X命令或按F5鍵。激活的調試窗口如圖2.14所示,分為寄存器窗口、數據窗口、代碼窗口、浮點窗口和命令窗口等部分。
如是在TRW2000環境下,激活是按"CTRL+N",和SoftICE不同的是TRW2000中沒有浮點窗口,不過有一個堆棧窗口。

(圖一)SoftICE或TRW2000調試截圖

1、寄存器窗口
  在這里可以觀察到各種寄存器的當前值,如數據寄存器EAX、EBX、ECX、EDX和控制寄存器(EIP和PSW)等,有一點要注意了,由于我們是在Windows平臺下,所以看到的都是80386寄存器集,其與16位寄存器差別在前多了一字符"E",意為16位寄存器擴展。
2、數據窗口
  在數據窗口顯示指定內存處中的數據,以十六進制和ASCII同時顯示,這可以說是我們的眼睛,因此有必要了解一下各部分的含義。


(圖二)

①號位置的0030:這是段選擇器。
  在Windows的保護模式下CS、DS、ES、SS、FS和GS不叫段寄存器,叫段選擇器。在保護模式中,內存分為了好多的段,在TRW200下用GDT就可以看到段的編號、類型、開始物理地址、大小、屬性。讓我們看看編號0030是什么東西:


(圖三)

  這個段是32位數據類型,長度為4G ,我們還可以看到很多的段,它們有可能會指向同一個物理地址,但它們的類型,屬性可能不同。如一些段指向的地址是不可讀寫的,但另外一個段指向的同一物理地址是可讀寫的!如果我們通過不可寫的那段的編號放到段選擇器,然后進行讀寫操作,肯定死掉了。 但換了另外一個段對同一個地方讀寫那就沒問題!保護模式的內存管理挺有趣的,感興趣的不妨看看這方面的書,當然作為初學者只需稍微了解就可。
②號位置00000000:此處表示內存的虛擬地址。
③號位置的值是當前內存的數據,以十六進制表示。
④號位置的值是"③"處值的另一種表示方法:ASCII碼。
3、代碼窗口
  此處顯示的是當前程序的代碼,因為不管是什么程序,最終在CPU執行時都是以機器語言方式,而匯編語言和機器語言是一一對應的,因此SoftICE為了方便我們理解,把所視的代碼以匯編代碼形式顯示在我們面前。例如:


(圖四)


①段選擇器;
②虛擬地址;
③機器碼:這就是CPU執行的機器代碼,此處是以十六進制表示。你可用Code on/off打開或關閉這項的顯示。
④匯編指令:和機器碼對應的程序代碼。
4、堆棧窗口
  這個是TRW2000特有的,通過它很方便視堆棧的狀況。
5、命令窗口
  這是各種命令執行的地方,在屏幕底部的動作狀態行顯示執行命令的各種提示,以及可提供指令語法幫助。
6、程序領空
  所謂領空,實際上是指:在某一時刻,CPU 的 CS:IP(EIP) 所指向的某一段代碼的所有者所在的區域。此例中SoftICE所停下來時光標所指的那一句代碼是屬于KERNEL32.DLL的,因此就叫KERNEL32.DLL領空,在圖2.14中,可看到的領空名是KERNEL32!.text,那我怎么知道它就是KERNEL32.DLL文件呢?這個主要是經驗,KERNEL32.DLL是Windows系統文件,在SoftICE里顯示領空名時不顯示擴展名,只是顯示前一部份。

二、SoftICE常用命令簡介

由于SoftICE命令操作較多,在此就把幾個常用的命令介紹一下,其它詳細說明請參考附錄的"SoftICE手冊"。
1、 G命令
語法:G [=start-address] [break-address]
作用:執行程序,后面如果加地址,則執行到該地址為止。
注意: TRW2000 中G命令與SoftICE稍有不同,SoftICE中G命令必須是在當前段中,這時IP(EIP)為指定值才中斷;而TRW2000則不管段址如何,只要IP(EIP)是指定的值便停下,TRW2000這個特性大大方便我們的操作。
2、P命令
語法: P [ret]
作用:單步執行程序。
只執行P時,相當于按下F10鍵。在匯編模式中,當遇到 CALL、INT、LOOP、REP指令時,P將不跟蹤進去,直到這些指令執行完畢,控制才返回SoftICE,換句話說,P命令是"跨"過這些指令的。
P RET 命令相當于快捷鍵 F12。SoftICE將一直單步執行直到它找到一條返回語句(RET、RETF),也就是說讓SoftICE一直執行代碼,直到出現 RET (XXXX) 命令,再跳出來攔截,這時,當前 IP(EIP) 會是停在 RET (XXXX) 后的某一條語句上,通常是在某一個CALL XXXXXXXX 后面。由于我們通常用SoftICE在某些底層的Windows函數上設置斷點,所以 F12 是很管用的。因為程序的作者用的是高級語言,Windows又是提倡"透明",不希望程序員知道底層的操作,而只提供給他們高層的接口,而相當多的高級函數調用某個一定的底層函數,所以當你在底層函數上下斷點,再用F12,就可以知道他用的是什么函數了。
3、T命令
語法:T [=start-address] [count]
start-address:執行起始地址;
count:指定SoftICE將單步跟蹤多少次才停止。
作用:單步跟蹤。
T命令相當于功能鍵F8,如沒指定起始地址,將從CS:IP(EIP)指向的指令開始執行,此時當遇到 CALL、LOOP等指令時,T將跟蹤進去。
注意: F8和F10功能鍵的主要差別就在這,遇到 CALL、LOOP等指令時,F10是路過,而F8是跟進去。
4、BPX命令
語法:BPX [address] [IF expression] [DO "command1;command2;..."]
address :斷點所在的線性地址;
IF expression:條件表達式,只有條件為"真"時,SoftICE才在斷點處彈出;
Do command:當SoftICE彈出時,自動執行的一些命令。
作用:在可執行語句上設置(或清除)斷點。
BPX 用來在指令處下斷點,程序一旦執行到此,SoftICE就會彈出。當光標在代碼窗口中時,直接打入BPX就會在光標所在語句處設斷點,再打BPX 就取消。BPX的快捷鍵是 F9,當光標在代碼窗口中時,按F9就是設定(取消)。
BPX 也可用函數名來作地址參數:格式為"BPX 函數名"。
這個函數名可以是任意一個API函數、虛擬機指令、DLL文件的引出函數等等,功能強勁。例:
:bpx messageboxa(不用區分大小寫)//只要程序調用了此函數,SoftICE將中斷;
:bpx GetWindowTexta if EAX==8 // 當調用GetWindowTexta函數時EAX=8,SoftICE將中斷;
:BPX GetWindowTexta do "d EAX"http:// 當 GetWindowTexta被中斷,自動顯示EAX的值。
注意: TRW2000與SoftICE條件格式有點不同,如在SoftICE下的是:bpx loadlibrarya do "dd esp->4",而相同的用法在TRW2000中是:bpx loadlibrarya do "dd *(esp+4)" 。另外SoftICE中用鼠標雙擊指令行可設斷,而TRW2000中不行,只能按F9.
5、BPM命令
語法:BPM[size] address [條件表達式] DO[執行的命令]
size:內存單元大小,B為字節(默認);W 為字;D 為雙字;
verb:所進行的操作,R為讀;W為寫;RW為讀寫(默認);X 為執行。
作用:設置內存訪問斷點。
注意: BPM用了DR3-DR0寄存器,所以最多只能設四個斷點。
6、BMSG命令
語法:BMSG window-handle [條件表達式] DO[執行的命令]
window-handle:消息發向的窗口句柄,即消息名
作用:在Windows的消息上下斷點。
Windows本身是由消息驅動的 所以跟蹤一個消息會得到相當底層的答案。如:
我們執行記事本程序(Notepad),然后Ctrl+D激活SoftICE輸入:
   :bmsg wm_char
   :g
然后回到Notepad中,隨便按一個鍵,SoftICE就激活了;原因在于我們在按鍵消息上設置了斷點(退出SoftICE別忘下命令"BC *"清除剛才下的斷點)。
7、BL命令
語法:BL
作用:顯示當前所設的斷點
注意: SoftICE會把所有斷點按從0開始的編號列出,而TRW2000是從1開始編號列出。
8、BC命令
語法:BC list | *
list:可以清除指定編號的斷點多個時中間用空格或逗號隔開。
* :清除所有的斷點。
作用:清除一個或多個斷點
9、BD命令
語法: BD list | *
list:可以是單個,也可以是一系列斷點,中間用空格或逗號隔開。
* :禁止所有的斷點
作用:使一個或多個斷點失效。
10、BE命令
語法:BE list | *
作用:使一個或多個斷點恢復有效。
用來恢復前次用 BD 命令使之失效的斷點。 (每當新定義斷點或編輯斷點時系統自動將其置為有效)
11、BPE命令
語法:BPE index_number(斷點索引號)
作用:編輯一個已存在的斷點。
12、R命令
語法:R 寄存器名
作用:顯示或更改寄存器的內容。
其可更改所有的寄存器的值。此命令較常用的一個功能是更改狀態寄存器(PSW )的值,格式:R FL 標志位。比如當前 Z標志位(零位)為置位狀態,執行"r fl z"之后會被清除;如果C標志位為清除狀態,那么"r fl c"將使之置位。
注意: 利用此命令很方便在一些跳轉指令上改變方向。
13、A命令
語法:A [地址]
作用:進入小匯編狀態,可直接寫入匯編代碼。
如不加地址值,直接在當前CS:IP(EIP)處匯編。用SoftICE內置的匯編器在內存中寫入匯編代碼。匯編器支持標準的80x86指令集,包括386、486、Pentium、Pentium-Pro、MMX協處理器,新版的SoftICE還支持AMD的3D Now!、PII、PIII的特有指令集。
14、D命令
語法:D[size] [address [l length]]
size:B 字節;W 字;D 雙字; S 短實型;L 長實型;T 10b長實型
作用:顯示某內存區域的內容。
15、S命令
語法:S [-cu][address L length data-list]
address:搜索的起始地址
length :搜索的長度(字節長)
data-lis:可以是一系列字節,也可以是字符串,字符串可以用單引號,也
可以用雙引號括住.
-c :使查找區分大小寫
-u :查找Unicode 編碼的字符串.
作用:在內存中搜尋特定數據,如果找到數據,那將在數據窗口中顯示出來,如果在找到后,你還要繼續查找,使用不帶參數的S命令。由于S命令忽略不在內存中的頁面,因此你可以使用32位平面地址數據段描述符30h在整個4GB(0~FFFFFFFFh )空間查找。如:
s 30:0 l FFFFFFFF "78787878" //在此令在內存中查找字串"78787878"位置。
注意: TRW2000中S命令的字串應是單引號(而SoftICE皆可)。如:s 30:0 l FFFFFFFF '78787878'.
16、E命令
語法:E[size] [address [data-list]]
作用: 修改內存單元
17、U命令
語法:U [address [l length]] | [symbol-name]
address :段:偏移量或選擇符:偏移量
symbol-name:將從指定的函數開始反匯編
length :反匯編的長度(字節)
作用: 反匯編指令
你可以利用此命令抓取匯編代碼,運行LOADER32后,將歷史緩沖區(history buffer)調大些(默認為256,不能放足夠多的緩沖數據)。然后切換到SoftICE調試畫面下,來到你要抓取的地方,反匯編這些代碼,如:U CS:EIP L 1000 ,立即按Ctrl+D返回到Windows環境,再次來到symbol loader程序,選擇"File/Save SoftICE History As…"。
注意: 在TRW2000下可以直接反匯編代碼輸出到一個文件:
u 401000402000 >路徑/myfile。
18、FAULTS命令
語法:FAULTS [on | off]
作用:打開或關閉錯誤跟蹤功能
由于SoftICE做為一個DEBUGGER,FAULTS 默認為ON,所以一旦CPU有非法指令,SoftICE就會不停地彈出。
19、?命令
語法:? 表達式
作用:計算一個表達式的值
一個非常高級的計算器,另外由于可以顯示ASCII所以可以很方便地在各種數制之間察看。
20、.命令
語法: .
作用:在代碼窗口中定位當前指令
當你在代碼窗口中上下瀏覽時,有可能走得很遠,那么這時一個"."命令會讓你在下一瞬間回到SoftICE當前所在的CS:EIP處。
21、EXP命令
語法: EXP [函數名]
作用: 顯示DLL中的出口函數
函數名可以指定出其前幾個字符 可以用?來做替代不定字符,這樣你就可查找相關函數及其是哪個DLL文件了。這對于你在Win2K系統上非常實用,Win2K系統的KERNEL32.DLL中許多函數形式和Windows 9x可能不同,用此命令你就可找到正確的函數名了。
22、PMODULE命令(TRW2000特有命令)
作用:'pret'(相當于按<F12>) 直至CS:EIP位于模塊中,但比F12更實用,其可以快速回到你的當前程序領空,不用按多次F12了
23、SUSPEND命令(TRW2000特有命令)
作用: 暫停當前的線程,并退出 TRW2000,按熱鍵返回,此命令相當方便。
24、ver blue命令(TRW2000特有命令)
如你的TRW2000背景顏色很暗,可通過此命令來調整背景

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97在线日本国产| 中文字幕国产精品| 理论片在线不卡免费观看| 91在线免费视频| 久久免费成人精品视频| 日韩69视频在线观看| 美日韩丰满少妇在线观看| 国产精品自拍偷拍| 国产精品久久久久福利| 国产一区二区三区视频免费| 欧美日韩电影在线观看| 91精品综合视频| 国产成人精品综合| 国产成人精品a视频一区www| 自拍偷拍亚洲区| 麻豆国产精品va在线观看不卡| 一区二区成人精品| 欧美综合一区第一页| 亚洲一区制服诱惑| 国产视频在线观看一区二区| 国产精品高潮呻吟久久av黑人| 亚洲色图25p| 久久99精品视频一区97| 国产精品欧美激情在线播放| xxxx欧美18另类的高清| 2019亚洲日韩新视频| 国产精品久久久久久久av电影| 亚洲视频自拍偷拍| 欧美精品成人91久久久久久久| 欧美激情一区二区三区在线视频观看| 欧美最顶级丰满的aⅴ艳星| 亚洲欧美日韩另类| 国产精品视频公开费视频| 国产99视频在线观看| 亚洲欧美第一页| 亚洲精品美女在线| 欧美色视频日本高清在线观看| 日韩高清电影免费观看完整| 国产精品欧美一区二区| 中文字幕日韩有码| 欧美黑人视频一区| 亚洲护士老师的毛茸茸最新章节| 岛国av在线不卡| 久久91亚洲人成电影网站| 亚洲精品成人免费| 中文字幕精品影院| 午夜剧场成人观在线视频免费观看| 亚洲成人激情在线观看| 国产精品免费福利| 久久久久日韩精品久久久男男| 欧美视频在线看| 欧美激情中文字幕乱码免费| 92福利视频午夜1000合集在线观看| 亚洲一区二区国产| 91免费看片网站| 欧美精品激情在线观看| 欧美极品在线播放| 91精品免费看| 激情久久av一区av二区av三区| 欧美电影免费观看| 国产偷国产偷亚洲清高网站| 国产在线日韩在线| 日韩动漫免费观看电视剧高清| 亚洲人成啪啪网站| 日韩精品中文字幕久久臀| 一区二区三区视频在线| 久久香蕉国产线看观看网| 国外视频精品毛片| 国产不卡av在线免费观看| 在线播放精品一区二区三区| 精品国产自在精品国产浪潮| 日韩电影中文 亚洲精品乱码| 久久人91精品久久久久久不卡| 欧美电影免费观看| 成人h片在线播放免费网站| 国产在线拍偷自揄拍精品| 国产精品三级美女白浆呻吟| 国产一区二区三区在线视频| 亚洲精品久久久久中文字幕二区| 亚洲精品一区二区网址| 亚洲跨种族黑人xxx| 亚洲人成电影在线播放| 日本久久久久久久| 国产日韩欧美电影在线观看| 亚洲电影在线看| 亚洲免费视频在线观看| 日韩av在线高清| 久久影院在线观看| 久久乐国产精品| 91在线视频九色| 精品国产乱码久久久久久虫虫漫画| 欧美激情国产精品| 国产伦精品免费视频| 欧美成人精品影院| 欧美日韩亚洲一区二| 亚洲综合国产精品| 国产精品久久久久高潮| 成人黄色av网站| 国产成人aa精品一区在线播放| 日韩中文字幕国产| 亚洲最大激情中文字幕| 国产欧美日韩精品在线观看| 日韩欧美成人网| 亚洲精品美女视频| 国产欧美精品在线| 亚洲影院污污.| 亚洲欧美综合区自拍另类| 91深夜福利视频| 成人97在线观看视频| 一本大道亚洲视频| 国产午夜精品全部视频播放| 欧美成人免费全部观看天天性色| 亚洲香蕉成人av网站在线观看| 在线视频亚洲欧美| 亚洲精品一二区| 久久久成人精品视频| 亚洲精品福利视频| 亚洲国产成人精品久久久国产成人一区| 国产精品久久久久久中文字| 国产网站欧美日韩免费精品在线观看| 亚洲国产精品电影| 国产成人精品综合| 日韩成人av在线| 亚洲xxx视频| 亚洲黄色有码视频| 国产精品久久电影观看| 国产成人精品久久| 国产欧美日韩视频| 亚洲欧美日韩国产精品| www亚洲精品| 伊人伊成久久人综合网站| 欧美一级淫片播放口| 中文字幕日韩精品有码视频| 91精品国产综合久久香蕉| 亚洲天堂免费视频| 按摩亚洲人久久| 福利一区福利二区微拍刺激| 欧美激情xxxx性bbbb| 这里只有精品丝袜| 欧美激情在线有限公司| 九九热99久久久国产盗摄| 91免费视频网站| 国产亚洲精品久久久优势| 亚洲精品久久久久久久久| 久久久久久久久国产| 日本欧美中文字幕| 亚洲一区999| 亚洲精品一区二区三区婷婷月| 久久韩国免费视频| 亚洲无av在线中文字幕| 欧美综合在线观看| 欧美成人精品在线| 精品国产精品三级精品av网址| 欧美成人免费视频| 色婷婷亚洲mv天堂mv在影片| 日韩极品精品视频免费观看| 久久久999国产| 亚洲精品国产综合久久| 九九久久久久99精品| 日本韩国欧美精品大片卡二| 精品久久香蕉国产线看观看亚洲| 91久久精品国产91性色| 久久精品国产一区二区三区| 欧美黑人一级爽快片淫片高清|