麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 邏輯算法 > 正文

破解圣經(jīng)之------滾瓜爛熟篇(背50遍)

2019-09-10 09:01:55
字體:
供稿:網(wǎng)友
(1)經(jīng)典比較組合,常為注冊(cè)碼出現(xiàn)處(by programhunter)
1
    mov  eax [      ]  這里可以是地址,也可以是其它寄存器
    mov  edx [      ]  同上  通常這兩個(gè)地址就儲(chǔ)存著重要信息
    call 00??????
    test eax eax
    jz(jnz)
2
    mov  eax [      ]  這里可以是地址,也可以是其它寄存器
    mov  edx [      ]  同上  通常這兩個(gè)地址就儲(chǔ)存著重要信息
    call 00??????
    jne(je)
3
  mov eax [  ]
  mov edx [  ]
  cmp eax,edx
  jnz(jz)
或者
begin  mov al [  ]
      mov cl [  ]
      cmp al,cl
      jnz(jz)
      mov al [  +1]
      mov cl [  +1]
      cmp al,cl
      jnz(jz)
      cmp eax ecx (eax為計(jì)數(shù)器)
      jnl begin
      mov al 01
4
    lea edi [    ]
    lea esi [    ]
    repz cmpsd
    jz(jnz)
5
    mov  eax [      ]  這里可以是地址,也可以是其它寄存器
    mov  edx [      ]  同上  通常這兩個(gè)地址就儲(chǔ)存著重要信息
    call 00??????
    setz (setnz) al (bl,cl…)
6
    mov  eax [      ]  這里可以是地址,也可以是其它寄存器
    mov  edx [      ]  同上  通常這兩個(gè)地址就儲(chǔ)存著重要信息
    call 00??????
    test eax eax
    setz (setnz) bl,cl…
7
    call 00??????  ***
    push eax (ebx,ecx…)
    ……
    ……
    call 00??????
    pop eax (ebx,ecx…)
    test eax eax
    jz(jnz)
    這個(gè)形式比較特別,它的關(guān)鍵比較地方不在第二call中,而在第一call中

(2)注冊(cè)碼按字節(jié)依次給出
:0042A159 0FBE03                  movsx eax, byte ptr [ebx]
:0042A15C 50                      push eax            ^^^^^
:0042A15D E8228C0400              call 00472D84
:0042A162 59                      pop ecx
:0042A163 83F84A                  cmp eax, 0000004A ---->J
:0042A166 7559                    jne 0042A1C1
:0042A168 0FBE5301                movsx edx, byte ptr [ebx+01]
:0042A16C 52                      push edx            ^^^^^^^
:0042A16D E8128C0400              call 00472D84
:0042A172 59                      pop ecx
:0042A173 83F853                  cmp eax, 00000053
                                  ^^^^^^^^^^^^^^^^^----> S
:0042A176 7549                    jne 0042A1C1
:0042A178 0FBE4B02                movsx ecx, byte ptr [ebx+02]
:0042A17C 83F924                  cmp ecx, 00000024    ^^^^^^^
                                  ^^^^^^^^^^^^^^^^^----> $
:0042A17F 7540                    jne 0042A1C1
:0042A181 0FBE4303                movsx eax, byte ptr [ebx+03]
:0042A185 83F832                  cmp eax, 00000032  ^^^^^^^^
                                  ^^^^^^^^^^^^^^^^^----> 2
:0042A188 7537                    jne 0042A1C1
:0042A18A 0FBE5304                movsx edx, byte ptr [ebx+04]
:0042A18E 83FA38                  cmp edx, 00000038  ^^^^^^^^
                                  ^^^^^^^^^^^^^^^^^----> 8
:0042A191 752E                    jne 0042A1C1
:0042A193 0FBE4B05                movsx ecx, byte ptr [ebx+05]
:0042A197 83F939                  cmp ecx, 00000039  ^^^^^^^
                                  ^^^^^^^^^^^^^^^^^----> 9
:0042A19A 7525                    jne 0042A1C1
:0042A19C 0FBE4306                movsx eax, byte ptr [ebx+06]
:0042A1A0 83F832                  cmp eax, 00000032  ^^^^^^^^
                                  ^^^^^^^^^^^^^^^^^----> 2
:0042A1A3 751C                    jne 0042A1C1
:0042A1A5 0FBE5307                movsx edx, byte ptr [ebx+07]
:0042A1A9 83FA31                  cmp edx, 00000031  ^^^^^^^^                                                                                                                                                                                                            
                                  ^^^^^^^^^^^^^^^^^
                                                  ----->1
(3)比較位數(shù)
cmp dword ptr[ebp-04],0000000A
jne/jge/jle/je 00xxxx

mov eax, dword ptr [ebp-04]
call 00xxxx
cmp eax, 0000000A <----比較注冊(cè)碼是否為10位
jne 00xxxxx  <----不是,錯(cuò)
(4)VB程序經(jīng)典比較
PUSH      XXX                      //假注冊(cè)碼
PUSH      XXX                      //真注冊(cè)碼
CALL      [MSVBVM60!__vbaStrCmp]
TEST      EAX,EAX
JNZ      00XXXXX
(5)SmartCheck中,注冊(cè)碼常出現(xiàn)處
__vbasrtcmp(String:"zzzzz",String:"yyyyy")returns
__vbaStrVarVal(VARIATN:String"a") returns
__vbaVarTstEq(VARIANT:****, VARIANT:****) returns
(6)依次取兩位比較
:004044D8 8A10    mov dl, byte ptr [eax]
:004044DA 8ACA    mov cl, dl
:004044DC 3A16    cmp dl, byte ptr [esi]
:004044DE 751C    jne 004044FC
:004044E0 84C9    test cl, cl
:004044E2 7414    je 004044F8
:004044E4 8A5001  mov dl, byte ptr [eax+01]
:004044E7 8ACA    mov cl, dl
:004044E9 3A5601  cmp dl, byte ptr [esi+01]
:004044EC 750E    jne 004044FC
:004044EE 83C002  add eax, 00000002 ***
:004044F1 83C602  add esi, 00000002 ***
:004044F4 84C9    test cl, cl
:004044F6 75E0    jne 004044D8
每次程序依次取兩位,放入byte ptr [esi],byte ptr [esi+1],與eax, eax+1比較。如此循環(huán)
(7)小寫轉(zhuǎn)大寫(一時(shí)找不到,自己補(bǔ)充)
(8)大寫轉(zhuǎn)小寫(一時(shí)找不到,自己補(bǔ)充)



剛才看到的補(bǔ)充一下這個(gè)覺得也不錯(cuò)!!
常用斷點(diǎn)(OD中)
攔截窗口:
bp CreateWindow 創(chuàng)建窗口
bp CreateWindowEx(A) 創(chuàng)建窗口
bp ShowWindow 顯示窗口
bp UpdateWindow 更新窗口
bp GetWindowText(A) 獲取窗口文本
攔截消息框:
bp MessageBox(A) 創(chuàng)建消息框
bp MessageBoxExA 創(chuàng)建消息框
bp MessageBoxIndirect(A) 創(chuàng)建定制消息框
bp IsDialogMessageW
攔截警告聲:
bp MessageBeep 發(fā)出系統(tǒng)警告聲(如果沒有聲卡就直接驅(qū)動(dòng)系統(tǒng)喇叭發(fā)聲)
攔截對(duì)話框:
bp DialogBox 創(chuàng)建模態(tài)對(duì)話框
bp DialogBoxParam(A) 創(chuàng)建模態(tài)對(duì)話框
bp DialogBoxIndirect 創(chuàng)建模態(tài)對(duì)話框
bp DialogBoxIndirectParam(A) 創(chuàng)建模態(tài)對(duì)話框
bp CreateDialog 創(chuàng)建非模態(tài)對(duì)話框
bp CreateDialogParam(A) 創(chuàng)建非模態(tài)對(duì)話框
bp CreateDialogIndirect 創(chuàng)建非模態(tài)對(duì)話框
bp CreateDialogIndirectParam(A) 創(chuàng)建非模態(tài)對(duì)話框
bp GetDlgItemText(A) 獲取對(duì)話框文本
bp GetDlgItemInt 獲取對(duì)話框整數(shù)值
攔截剪貼板:
bp GetClipboardData 獲取剪貼板數(shù)據(jù)
攔截注冊(cè)表:
bp RegOpenKey(A) 打開子健
bp RegOpenKeyEx 打開子健
bp RegQueryValue(A) 查找子健
bp RegQueryValueEx 查找子健
bp RegSetValue(A) 設(shè)置子健
bp RegSetValueEx(A) 設(shè)置子健
功能限制攔截?cái)帱c(diǎn):
bp EnableMenuItem 禁止或允許菜單項(xiàng)
bp EnableWindow 禁止或允許窗口
bp send 網(wǎng)絡(luò)訪問斷點(diǎn)
bp recv 返回信息斷點(diǎn)
攔截關(guān)機(jī)重啟:
bp ExitWindowsEx  重啟問題  bp斷在系統(tǒng)領(lǐng)空
bpx ExitWindowsEx
攔截時(shí)間:
bp GetLocalTime 獲取本地時(shí)間
bp GetSystemTime 獲取系統(tǒng)時(shí)間
bp GetFileTime 獲取文件時(shí)間
bp GetTickCount 獲得自系統(tǒng)成功啟動(dòng)以來所經(jīng)歷的毫秒數(shù)
bp GetCurrentTime 獲取當(dāng)前時(shí)間(16位)
bp SetTimer 創(chuàng)建定時(shí)器
bp TimerProc 定時(shí)器超時(shí)回調(diào)函數(shù)
GetDlgItemInt 得指定輸入框整數(shù)值
GetDlgItemText 得指定輸入框輸入字符串
GetDlgItemTextA 得指定輸入框輸入字符串
攔截文件:
bp CreateFileA 創(chuàng)建或打開文件 (32位)
bp OpenFile 打開文件 (32位)
bp ReadFile 讀文件 (32位)
bp WriteFile 寫文件 (32位)
GetModuleFileNameA
GetFileSize
Setfilepointer
fileopen
FindFirstFileA
ReadFile
攔截驅(qū)動(dòng)器:
bp GetDriveTypeA 獲取磁盤驅(qū)動(dòng)器類型
bp GetLogicalDrives 獲取邏輯驅(qū)動(dòng)器符號(hào)
bp GetLogicalDriveStringsA 獲取當(dāng)前所有邏輯驅(qū)動(dòng)器的根驅(qū)動(dòng)器路徑
★★VB程序?qū)S脭帱c(diǎn)★★
文件長度:RtcFileLen
bp __vbaFreeStr 對(duì)付VB程序重啟驗(yàn)證
bp __vbaStrCmp 比較字符串是否相等
bp __vbaStrComp 比較字符串是否相等
bp __vbaVarTstNe 比較變量是否不相等
bp __vbaVarTstEq 比較變量是否相等
bp __vbaStrCopy 復(fù)制字符串
bp __vbaStrMove 移動(dòng)字符串
bp MultiByteToWideChar ANSI字符串轉(zhuǎn)換成Unicode字符串
bp WideCharToMultiByte Unicode字符串轉(zhuǎn)換成ANSI字符串
=============== ================
密碼常用中斷
Hmemcpy (win9x專用)
GetDlgItemTextA
GetDlgItemInt
vb:
getvolumeinformationa  
vbastrcomp (trw)
Bpx __vbaStrComp (記得是兩個(gè) '_')
MSVBVM60!_vbastrcomp|sofice
MSVBVM50! | 
VBAI4STR 
Ctrl+D
bpx msvbvm60!__vbastrcomp do "d *(esp+0c)"(softice)
按幾次F5出冊(cè)碼出來了。
bpx regqueryvalueexa do "d esp->8"(trw) 
vbaVarTstEq 判斷是否注冊(cè)的函數(shù)
(0042932F 66898580FEFFFF mov word ptr [ebp+FFFFFE80], ax
改為0042932F 66898580FEFFFF mov word ptr [ebp+FFFFFE80], bx)
時(shí)間常用中斷
GetSystemTime
GetLocalTime
GetTickCount
vb:
rtcGetPresentDate //取得當(dāng)前日期 
窗常用中斷
Lockmytask (win9x專用)
bp ExitProcess 退出進(jìn)程
DestroyWindow
mouse_event (鼠標(biāo)中斷)
postquitmessage (Cracking足彩xp,很有用^_^)
vb:
_rtcMsgBox 
ini文件內(nèi)容常用中斷
GetPrivateProfileStringA
GetPrivateProfileProfileInt 
key文件:
getprivateprofileint
ReadFile
CreateFileA 
注冊(cè)表常用中斷
RegQueryvalueA
RegQueryvalueExA 
加密中斷
BPIO -h 278 R
BPIO -h 378 R  
其它常用函數(shù)斷點(diǎn)
CreateFileA (讀狗驅(qū)動(dòng)程序),
DeviceIOControl,
FreeEnvironmentStringsA (對(duì)付HASP非常有效).
Prestochangoselector (16-bit HASP's), '7242' 查找字符串 (對(duì)付圣天諾).具體含義參考下面的范例。 
光盤破解中斷
16:
getvolumeinformation
getdrivetype
int 2fh (dos)
32:
GetDriveTypeA
GetFullPathNameA
GetWindowsDirectoryA 
讀磁盤中斷
GETLASTERROR 返回?cái)U(kuò)充出錯(cuò)代碼  
限制中斷
EnableMenuItem 允許、禁止或變灰指定的菜單條目
EnableWindow 允許或禁止鼠標(biāo)和鍵盤控制指定窗口和條目(禁止時(shí)菜單變灰)  
不知道軟盤中斷是什么了?還有其它特殊中斷,不知道其他朋友可否說一下了?
如ockmytask and mouse_event,這些就不是api32函數(shù)?
win9x 與 win2k進(jìn)行破解,以上中斷有部分已經(jīng)不能用了?
不知道在win2k上,以上常用中斷函數(shù)是什么了?
也就是問密碼、時(shí)間、窗口、ini、key、注冊(cè)表、加密狗、光盤、軟盤、限制等!
了解常用的中斷,對(duì)破解分析可以做到事半功倍!
請(qǐng)大家說一下!還有如何破解了某個(gè)軟件時(shí),一重啟就打回原形?
不知道下什么中斷了?可以分為三種情況:
1.比較可能在注冊(cè)表中
2.比較在特殊文件(*.key *.ini *.dat等)
3.比較在程序中,沒有任何錯(cuò)誤提示或者反譯也找不到明顯字符(這個(gè)就是我想問的) 
還有一個(gè)是最難的,就是去掉水印!
也可以三種情況:
A.水印是位圖文件(bitblt,creatBITMAP等位圖函數(shù))
B.水印是明顯字符(反譯分析)
C.水印不是明顯字符(如:This a demo!它只是顯示在另一個(gè)制作文件上,可是*.htm *.exe等)
C.才是最難搞,也是很多人想知道的!包括我在內(nèi)。不知道高手們有何提示了? 
廣告條:
可以分兩種情況:
A.從創(chuàng)建窗口進(jìn)手,可以用到movewindow或者其它窗口函數(shù)!
B.從位圖進(jìn)手,也可以用到bitblt或者其它位圖函數(shù)!
最后可以借助一些現(xiàn)有工具(如:api27,vwindset,freespy之類的工具) 
葡萄雖無樹,藤生棚中秧。
人處凡塵中,豈不惹塵埃? 
小球[CCG]
那要看是在哪作的標(biāo)記,通常是在注冊(cè)表中留下信息!
在softice中就要用bpx regqueryvalueexa do "d esp->8"來中斷看看,
在trw中要用bpx regqueryvalueexa do "d*(esp+8)"來中斷看看。
還有的是在本目錄下留下注冊(cè)信息,常見的有.dat .ini .dll等等,
我是用bpx readfile來中斷的,還有的是在windows目錄下留下注冊(cè)信息。
你可以借助專用的工具幫助你查看,入filemon等!  
vb: 
1、__vbaVarTstNe //比較兩個(gè)變量是否不相等
2、rtcR8ValFromBstr //把字符串轉(zhuǎn)換成浮點(diǎn)數(shù)
3、rtcMsgBox 顯示一信息對(duì)話框
4、rtcBeep //讓揚(yáng)聲器叫喚
5、rtcGetPresentDate //取得當(dāng)前日期  
針對(duì)字串:
__vbaStrComp
__vbaStrCmp
__vbaStrCompVar
__vbaStrLike
__vbaStrTextComp
__vbaStrTextLike
針對(duì)變量:
__vbaVarCompEq
__vbaVarCompLe
__vbaVarCompLt
__vbaVarCompGe
__vbaVarCompGt
__vbaVarCompNe
VB的指針:
THROW  
VB DLL還調(diào)用了oleauto32.dll中的部分函數(shù)。oleauto32.dll是個(gè)通用的proxy/stub DLL,其每個(gè)函數(shù)的原型在<oleauto.h>中定義,并在MSDN中有詳細(xì)描述。這也有助于理解VB DLL中的函數(shù)的作用。  
舉例:  
LEA EAX, [EBP-58]
PUSH EAX
CALL [MSVBVM60!__vbaI4Var]  
執(zhí)行call之前敲dd eax+8,得到的值為3;
執(zhí)行完call之后,eax = 3
從而可知__vbaI4Var的作用是將一個(gè)VARIANT轉(zhuǎn)換為I4(即一個(gè)長整數(shù))。 
__vbaVarTstNe似乎是用來進(jìn)行自校驗(yàn)的,正常情況下返回值為0。
已知適用的軟件有:網(wǎng)絡(luò)三國智能機(jī)器人、音樂賀卡廠。當(dāng)這兩個(gè)軟件被脫后都回出錯(cuò),網(wǎng)絡(luò)三國智能機(jī)器人會(huì)產(chǎn)生非法*作,而音樂賀卡廠會(huì)告訴你是非法拷貝,通過修改__vbaVarTstNe的返回值都可讓它們正常運(yùn)行。
所以當(dāng)您遇到一個(gè)VB軟件,脫后無法正常運(yùn)行,而又找不出其它問題時(shí),可試試攔截這個(gè)函數(shù),說不定會(huì)有用哦。8-) 
API不太知道,也許可以通過BIOS在98平臺(tái)上讀寫扇區(qū),不過在2000/NT下可以通過內(nèi)黑ATAPI,HAL寫扇區(qū)
machoman[CCG]
bpx WRITE_PORT_BUFFER_USHORT
NT/2000下這個(gè)斷點(diǎn),當(dāng)edx=1f0h,時(shí),可以看見EDI地址內(nèi)數(shù)據(jù)為扇區(qū)位置數(shù)據(jù),必須先 在winice.dat 中裝入hal.sys 詳細(xì)內(nèi)容看ATAPI手冊(cè)  
補(bǔ)充篇:
關(guān)于對(duì)VB程序和時(shí)間限制程序的斷點(diǎn)
CrackerABC
先給出修改能正確反編譯VB程序的W32DASM的地址:
======================
offsets 0x16B6C-0x16B6D  
修改機(jī)器碼為: 98 F4
======================  
VB程序的跟蹤斷點(diǎn):  
============
MultiByteToWideChar,
rtcR8ValFromBstr,
WideCharToMultiByte,
__vbaStrCmp
__vbaStrComp
__vbaStrCopy
__vbaStrMove
__vbaVarTstNe
rtcBeep
rtcGetPresentDate (時(shí)間API)
rtcMsgBox
=========  
時(shí)間限制斷點(diǎn):  
================
CompareFileTime
GetLocalTime
GetSystemTime
GetTimeZoneInformation
msvcrt.diffTime()
msvcrt.Time()
================  
一般處理
bpx hmemcpy
bpx MessageBox
bpx MessageBoxExA
bpx MessageBeep
bpx SendMessage 
bpx GetDlgItemText
bpx GetDlgItemInt
bpx GetWindowText
bpx GetWindowWord
bpx GetWindowInt
bpx DialogBoxParamA
bpx CreateWindow
bpx CreateWindowEx
bpx ShowWindow
bpx UpdateWindow 
bmsg xxxx wm_move
bmsg xxxx wm_gettext
bmsg xxxx wm_command
bmsg xxxx wm_activate  
時(shí)間相關(guān)
bpint 21 if ah==2A (DOS)
bpx GetLocalTime
bpx GetFileTime
bpx GetSystemtime  
CD-ROM 或 磁盤相關(guān)
bpint 13 if ah==2 (DOS)
bpint 13 if ah==3 (DOS)
bpint 13 if ah==4 (DOS)
bpx GetFileAttributesA
bpx GetFileSize
bpx GetDriveType
bpx GetLastError
bpx ReadFile
bpio -h (Your CD-ROM Port Address) R  
軟件狗相關(guān)
bpio -h 278 R
bpio -h 378 R  
鍵盤輸入相關(guān)
bpint 16 if ah==0 (DOS)
bpint 21 if ah==0xA (DOS)  
文件訪問相關(guān)
bpint 21 if ah==3dh (DOS)
bpint 31 if ah==3fh (DOS)
bpint 21 if ah==3dh (DOS)
bpx ReadFile
bpx WriteFile
bpx CreateFile
bpx SetFilePointer
bpx GetSystemDirectory  
INI 初始化文件相關(guān)
bpx GetPrivateProfileString
bpx GetPrivateProfileInt
bpx WritePrivateProfileString
bpx WritePrivateProfileInt  
注冊(cè)表相關(guān)
bpx RegCreateKey
bpx RegDeleteKey
bpx RegQueryvalue
bpx RegCloseKey
bpx RegOpenKey  
注冊(cè)標(biāo)志相關(guān)
bpx cs:eip if EAX==0  
內(nèi)存標(biāo)準(zhǔn)相關(guān)
bpmb cs:eip rw if 0x30:0x45AA==0  
顯示相關(guān)
bpx 0x30:0x45AA do "d 0x30:0x44BB"
bpx CS:0x66CC do "? EAX"
查找窗口
FindWindowA
BP SetFilePointer
bpx hmemcpy ;破解萬能斷點(diǎn),攔截內(nèi)存拷貝動(dòng)作(注意:Win9x專用斷點(diǎn))
bpx Lockmytask ;當(dāng)你用其它斷點(diǎn)都無效時(shí)可以試一下,這個(gè)斷點(diǎn)攔截按鍵的動(dòng)作(Win9x專用)
實(shí)在找不到斷點(diǎn)可以試下面的方法:
bmsg handle wm_gettext ;攔截注冊(cè)碼(handle為對(duì)應(yīng)窗口的句柄)
bmsg handle wm_command ;攔截OK按鈕(handle為對(duì)應(yīng)窗口的句柄)
攔截窗口:
bpx CreateWindow ;創(chuàng)建窗口
bpx CreateWindowEx(A/W) ;創(chuàng)建窗口
bpx ShowWindow ;顯示窗口
bpx UpdateWindow ;更新窗口
bpx GetWindowText(A/W) ;獲取窗口文本
攔截消息框:
bpx MessageBox(A/W) ;創(chuàng)建消息框
bpx MessageBoxExA(W) ;創(chuàng)建消息框
bpx MessageBoxIndirect(A/W) ;創(chuàng)建定制消息框
攔截警告聲:
bpx MessageBeep ;發(fā)出系統(tǒng)警告聲(如果沒有聲卡就直接驅(qū)動(dòng)系統(tǒng)喇叭發(fā)聲)
攔截對(duì)話框:
bpx DialogBox ;創(chuàng)建模態(tài)對(duì)話框
bpx DialogBoxParam(A/W) ;創(chuàng)建模態(tài)對(duì)話框
bpx DialogBoxIndirect ;創(chuàng)建模態(tài)對(duì)話框
bpx DialogBoxIndirectParam(A/W) ;創(chuàng)建模態(tài)對(duì)話框
bpx CreateDialog ;創(chuàng)建非模態(tài)對(duì)話框
bpx CreateDialogParam(A/W) ;創(chuàng)建非模態(tài)對(duì)話框
bpx CreateDialogIndirect ;創(chuàng)建非模態(tài)對(duì)話框
bpx CreateDialogIndirectParam(A/W) ;創(chuàng)建非模態(tài)對(duì)話框
bpx GetDlgItemText(A/W) ;獲取對(duì)話框文本
bpx GetDlgItemInt ;獲取對(duì)話框整數(shù)值
攔截剪貼板:
bpx GetClipboardData ;獲取剪貼板數(shù)據(jù)
攔截注冊(cè)表:
bpx RegOpenKey(A/W) ;打開子健 ( 例:bpx RegOpenKey(A) if *(esp->8)=='****' )
bpx RegOpenKeyExA(W) ;打開子健 ( 例:bpx RegOpenKeyEx if *(esp->8)=='****' )
bpx RegQueryValue(A/W) ;查找子健 ( 例:bpx RegQueryValue(A) if *(esp->8)=='****' )
bpx RegQueryValueEx(A/W) ;查找子健 ( 例:bpx RegQueryValueEx if *(esp->8)=='****' )
bpx RegSetValue(A/W) ;設(shè)置子健 ( 例:bpx RegSetValue(A) if *(esp->8)=='****' )
bpx RegSetValueEx(A/W) ;設(shè)置子健 ( 例:bpx RegSetValueEx(A) if *(esp->8)=='****' )
注意:'****'為指定子鍵名的前4個(gè)字符,如子鍵為'Regcode',則'****'= 'Regc'
功能限制攔截?cái)帱c(diǎn):
bpx EnableMenuItem ;禁止或允許菜單項(xiàng)
bpx EnableWindow ;禁止或允許窗口
bmsg hMenu wm_command ;攔截菜單按鍵事件,其中hMenu為菜單句柄
bpx K32Thk1632Prolog ;配合bmsg hMenu wm_command使用,可以通過這個(gè)斷點(diǎn)進(jìn)入菜單處理程序
應(yīng)用示例:
CALL [KERNEL32!K32Thk1632Prolog]
CALL [......] <-- 由此跟蹤進(jìn)入菜單處理程序
CALL [KERNEL32!K32Thk1632Epilog]
攔截時(shí)間:
bpx GetLocalTime ;獲取本地時(shí)間
bpx GetSystemTime ;獲取系統(tǒng)時(shí)間
bpx GetFileTime ;獲取文件時(shí)間
bpx GetTickCount ;獲得自系統(tǒng)成功啟動(dòng)以來所經(jīng)歷的毫秒數(shù)
bpx GetCurrentTime ;獲取當(dāng)前時(shí)間(16位)
bpx SetTimer ;創(chuàng)建定時(shí)器
bpx TimerProc ;定時(shí)器超時(shí)回調(diào)函數(shù)
攔截文件:
bpx CreateFileA(W) ;創(chuàng)建或打開文件 (32位)
bpx OpenFile ;打開文件 (32位)
bpx ReadFile ;讀文件 (32位)
bpx WriteFile ;寫文件 (32位)
bpx _lcreat ;創(chuàng)建或打開文件 (16位)
bpx _lopen ;打開文件 (16位)
bpx _lread ;讀文件 (16位)
bpx _lwrite ;寫文件 (16位)
bpx _hread ;讀文件 (16位)
bpx _hwrite ;寫文件 (16位)
攔截驅(qū)動(dòng)器:
bpx GetDrivetype(A/W) ;獲取磁盤驅(qū)動(dòng)器類型
bpx GetLogicalDrives ;獲取邏輯驅(qū)動(dòng)器符號(hào)
bpx GetLogicalDriveStringsA(W) ;獲取當(dāng)前所有邏輯驅(qū)動(dòng)器的根驅(qū)動(dòng)器路徑
攔截狗:
bpio -h 378(或278、3BC) R ;378、278、3BC是并行打印端口
bpio -h 3F8(或2F8、3E8、2E8) R ;3F8、2F8、3E8、2E8是串行端口
VB程序?qū)S脭帱c(diǎn):
bpx msvbvm60!rtcMsgBox
bpx msvbvm60!__vbaStrCmp
bpx msvbvm60!__vbaStrComp
bpx msvbvm60!__vbaStrCompVar
bpx msvbvm60!__vbaStrTextCmp
bpx msvbvm60!__vbaFileOpen
bpx msvbvm60!__vbaInputFile
bpx msvbvm60!__vbaFileSeek
bpx msvbvm60!__vbaWriteFile
bpx msvbvm60!__vbaFileClose
bpx msvbvm60!rtcFileAttributes
bpx msvbvm60!rtcFileDateTime
bpx msvbvm60!rtcFileLen
bpx msvbvm60!rtcFileLength
bpx msvbvm60!__vbaVarInt
bpx msvbvm60!__vbaVarCmpGe
bpx msvbvm60!__vbaVarCmpGt
bpx msvbvm60!__vbaVarCmpLe
bpx msvbvm60!__vbaVarCmpLt
bpx msvbvm60!__vbaVarCmpNe
bpx msvbvm60!__vbaVarTextCmpEq
bpx msvbvm60!__vbaVarTextCmpGe
bpx msvbvm60!__vbaVarTextCmpGt
bpx msvbvm60!__vbaVarTextCmpLe
bpx msvbvm60!__vbaVarTextCmpLt
bpx msvbvm60!__vbaVarTextCmpNe
bpx msvbvm60!__vbaVarTextTstEq
bpx msvbvm60!__vbaVarTextTstGe
bpx msvbvm60!__vbaVarTextTstGt
bpx msvbvm60!__vbaVarTextTstLe
bpx msvbvm60!__vbaVarTextTstLt
bpx msvbvm60!__vbaVarTextTstNe
bpx msvbvm60!__vbaVarTstEq
bpx msvbvm60!__vbaVarTstGe
bpx msvbvm60!__vbaVarTstGt
bpx msvbvm60!__vbaVarTstLe
bpx msvbvm60!__vbaVarTstLt
bpx msvbvm60!__vbaVarTstNe
注意:VB程序仍然可以使用普通API函數(shù),只要函數(shù)“最終”CALL了這個(gè)函數(shù)
上面的斷點(diǎn)對(duì)應(yīng)VB6程序,如果是VB5程序則將msvbvm60改成msvbvm50即可
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 日本黄色a视频 | 黄色大片网| 久久久裸体视频 | 亚洲午夜免费 | 日韩区在线 | 国产va在线观看 | 黑人一级片视频 | 一级毛片真人免费播放视频 | 天堂成人一区二区三区 | 中文字幕一区二区三区久久 | 欧美精品欧美极品欧美激情 | 久久一本日日摸夜夜添 | 日日操操 | 毛片午夜 | 国内精品久久久久久久久久久久 | 色阁阁69婷婷 | 欧美精品一区二区三区在线播放 | 色妇视频 | 成年免费在线视频 | 久久免费视频5 | 黄色大片免费网站 | 日本在线视 | 美女扒开腿让男生桶爽网站 | 国产精品午夜性视频 | 草草视频免费观看 | 精品一区二区三区网站 | 黄色三级网站 | 成人mm视频在线观看 | 成人免费一区二区三区 | 欧美一级毛片免费观看视频 | 久久国产一二三 | 亚洲人成电影在线 | 91网站在线观看视频 | 黄色特级片黄色特级片 | 久久综合久久美利坚合众国 | 日本欧美一区二区三区在线观看 | 欧美日韩精品一区二区三区不卡 | 91小视频在线观看免费版高清 | 国产做爰全免费的视频黑人 | 中文字幕免费在线观看视频 | 黄色影院在线 |