拦截窗口:
bp CreateWindow 创建窗口
bp CreateWindowEx(A) 创建窗口
bp ShowWindow 显示窗口
bp UpdateWindow 更新窗口
bp GetWindowText(A) 获取窗口文本
拦截消息框:
bp MessageBox(A) 创建消息框
bp MessageBoxExA 创建消息框
bp MessageBoxIndirect(A) 创建定制消息框
拦截警告声:
bp MessageBeep 发出系统警告声(如果没有声卡就直接驱动系统喇叭发声)
拦截对话框:
bp DialogBox 创建模态对话框
bp DialogBoxParam(A) 创建模态对话框
bp DialogBoxIndirect 创建模态对话框
bp DialogBoxIndirectParam(A) 创建模态对话框
bp CreateDialog 创建非模态对话框
bp CreateDialogParam(A) 创建非模态对话框
bp CreateDialogIndirect 创建非模态对话框
bp CreateDialogIndirectParam(A) 创建非模态对话框
bp GetDlgItemText(A) 获取对话框文本
bp GetDlgItemInt 获取对话框整数值
拦截剪贴板:
bp GetClipboardData 获取剪贴板数据
拦截注册表:
bp RegOpenKey(A) 打开子健
bp RegOpenKeyEx 打开子健
bp RegQueryValue(A) 查找子健
bp RegQueryValueEx 查找子健
bp RegSetValue(A) 设置子健
bp RegSetValueEx(A) 设置子健
功能限制拦截断点:
bp EnableMenuItem 禁止或允许菜单项
bp EnableWindow 禁止或允许窗口
拦截时间:
bp GetLocalTime 获取本地时间
bp GetSystemTime 获取系统时间
bp GetFileTime 获取文件时间
bp GetTickCount 获得自系统成功启动以来所经历的毫秒数
bp GetCurrentTime 获取当前时间(16位)
bp SetTimer 创建定时器
bp TimerProc 定时器超时回调函数
拦截文件:
bp CreateFileA 创建或打开文件 (32位)
bp OpenFile 打开文件 (32位)
bp ReadFile 读文件 (32位)
bp WriteFile 写文件 (32位)
bp GetPrivateProfileStringA (ini文件)
拦截驱动器:
bp GetDriveTypeA 获取磁盘驱动器类型
bp GetLogicalDrives 获取逻辑驱动器符号
bp GetLogicalDriveStringsA 获取当前所有逻辑驱动器的根驱动器路径
★★VB程序专用断点★★
bp __vbaStrCmp 比较字符串是否相等
bp __vbaStrComp 比较字符串是否相等
bp __vbaVarTstNe 比较变量是否不相等
bp __vbaVarTstEq 比较变量是否相等
bp __vbaStrCopy 复制字符串
bp __vbaStrMove 移动字符串
bp MultiByteToWideChar ANSI字符串转换成Unicode字符串
bp WideCharToMultiByte Unicode字符串转换成ANSI字符串
解自校验
bpx CreateFileA
bpx GetFileSize
bpx SetFilePointer
bpx ExitProcess
F12堆栈调用 破解思路
C类
Point-H法
bp GetDlgItem(断输入框)
bp MessageBoxA(断对话框)
字符串法
F12堆栈调用
B、D类
DEDE、PE Explorer作为强有力的辅助工具
关键还是找按妞事件
Point-H法
bp GetDlgItem(断输入框)
bp MessageBoxA(断对话框)
字符串法
F12堆栈调用
V类
VBExplorer、GetVBRes、SmatCheck作为强有力的辅助工具
关键还是找按妞事件
bp rtcMsgBox(断对话框)
*********************************
如果是重启验证就使用最开始的那些断点
1、有注册错误/正确提示
bp MessageBoxA
bp rtcMsgBox
如果事先找不到按钮事件,可以通过下消息断点,返回后回溯即可找到按钮事件起始位置
2、无任何提示
bp GetDlgItem
可以通过bp GetDlgItem获取按钮事件代码
3、未注册一启动或者关闭就跳出个注册框或者提示框
bp RegOpenKey(A)
bp CreateFileA
bp GetPrivateProfileStringA
文件: reg/ini/dll/其他
至于保存到什么文件,可以使用以下方法
1、查找字符串,看是否有可疑文件名或者注册表键名
2、猜。。。下断点观察
3、按钮事件跟踪
4、未注册一启动或者关闭就打开网页链接
bp ShellExecuteA
类似的组合
Cmp/test/其他判断
Je/jne/jne/jz XXXXXXXX
软件启动--->判断是否注册--->是否Open
断下后回溯代码即可找到关键点,常用的方法,转存跟踪法
拦截窗口:
bp CreateWindow 创建窗口
bp CreateWindowEx(A/W) 创建窗口
bp ShowWindow 显示窗口
bp UpdateWindow 更新窗口
bp GetWindowText(A/W) 获取窗口文本
拦截消息框:
bp MessageBox(A/W) 创建消息框
bp MessageBoxExA 创建消息框
bp MessageBoxIndirect(A/W) 创建定制消息框
拦截警告声:
bp MessageBeep 发出系统警告声(如果没有声卡就直接驱动系统喇叭发声)
拦截对话框:
bp DialogBox 创建模态对话框
bp DialogBoxParam(A/W) 创建模态对话框
bp DialogBoxIndirect 创建模态对话框
bp DialogBoxIndirectParam(A/W) 创建模态对话框
bp CreateDialog 创建非模态对话框
bp CreateDialogParam(A) 创建非模态对话框
bp CreateDialogIndirect 创建非模态对话框
bp CreateDialogIndirectParam(A/W) 创建非模态对话框
bp GetDlgItemText(A) 获取对话框文本
bp GetDlgItemInt 获取对话框整数值
拦截剪贴板:
bp GetClipboardData 获取剪贴板数据
拦截注册表:
bp RegOpenKey(A/W) 打开子健
bp RegOpenKeyEx(A/W) 打开子健
bp RegQueryValue(A/W) 查找子健
bp RegSetValue(A/W) 设置子健
bp RegSetValueEx(A/W) 设置子健
功能限制拦截断点:
bp EnableMenuItem 禁止或允许菜单项
bp EnableWindow 禁止或允许窗口
拦截时间:
bp GetLocalTime 获取本地时间
bp GetSystemTime 获取系统时间
bp GetFileTime 获取文件时间
bp GetTickCount 获得自系统成功启动以来所经历的毫秒数
bp GetCurrentTime 获取当前时间(16位)
bp SetTimer 创建定时器
bp TimerProc 定时器超时回调函数
拦截文件:
bp CreateFileA 创建或打开文件 (32位)
bp OpenFile 打开文件 (32位)
bp ReadFile 读文件 (32位)
bp WriteFile 写文件 (32位)
bp GetPrivateProfileStringA (ini文件)
拦截驱动器:
bp GetDriveTypeA 获取磁盘驱动器类型
bp GetLogicalDrives 获取逻辑驱动器符号
bp GetLogicalDriveStringsA 获取当前所有逻辑驱动器的根驱动器路径
★★VB程序专用断点★★
bp __vbaStrCmp 比较字符串是否相等
bp __vbaStrComp 比较字符串是否相等
bp __vbaVarTstNe 比较变量是否不相等
bp __vbaVarTstEq 比较变量是否相等
bp __vbaStrCopy 复制字符串
bp __vbaStrMove 移动字符串
bp MultiByteToWideChar ANSI字符串转换成Unicode字符串
bp WideCharToMultiByte Unicode字符串转换成ANSI字符串
DELPHI破解:
1、DEDE、PE Explorer ResScope作为强有力的辅助工具找按妞事件
2、Point-H法
3、bp GetDlgItem/GetDlgItemTextA(断输入框)
4、bp MessageBoxA(W)(断对话框)---Ctrl+N
5、字符串法---插件/搜索所有参考文本
6、如果程序界面标题有[未注册/注册/VIP版/标准版/钻石版] 之类字样的
可以通过查找FormCreate/FormShow----DEDE,找到关键标志位!
来判断程序怎么样的判断是否注册或者用户类型
7. 窗口标题法 bp SetWindowTextA
8.F12堆栈调用
注册表:
bpx RegCreateKeyExA 对于Delphi程序程序来说,用这个断点比较合适
bp RegCreateKeyExA 对于加了壳的程序
注册码:Rc1-420+用户名(不能为整数,)+C00L
C+破解
C类
Point-H法
bp GetDlgItem(断按下按钮)
bp MessageBoxA(断对话框)
字符串法
F12堆栈调用
窗口标题法 bp SetWindowTextA
★★C+程序专用断点★★
bp lstrcmpA (KERNEL32.lstrcmpA) 比较用法
bp _mbscmp //比较
C类程序的经典断点:
bp GetWindowTextA(断按下按钮) //也是适用于其它语言
bp GetWindowTextLengthA(断按下按钮) //也是适用于其它语言
bp GetDlgItem(断按下按钮) //也是适用于其它语言
bp GetDlgItemTextA
ds:[004021C8]=77C01881 (msvcrt._mbscmp)