关于破解的六种语言比较及常见思路
3384 点击·0 回帖
![]() | ![]() | |
![]() | VB MASM32 VC BCB 易语言 Delphi VB破解 1、VBExplorer查找按钮事件 2、有提示框则bp rtcMsgBox 3、通过bp __vbaStrCmp/__vbaStrComp/__vbaVarTstEq bp __vbaStrCmp bp __vbaStrComp 4、万能断点法(816C24法) 注册验证程序可以用这个断点下断,一般离程序访问注册表很近: bp __vbaStrToAnsi 5.F12堆栈调用 总结: VB程序破解的关键跳转,一般与其它语言的不同,没有JPM XXXXXXX 一般以 JE/JNE XXXXXXXXX 跳转记录一般不会很远(虽然是短距离跳转,但是关键就在这里,可以设置大量的信息) 。如果发现False/True 可能是关键点 VB: XXXXXXX JE/JNE XXXXX 设置信息 设置信息 Delphi BC++ 易语言 VC++ 汇编: XXXXXXX JE/JNE XXXXX 设置信息 设置信息 XXXXXXX JMP XXXXX 设置信息 设置信息 VC++ 汇编(有的 一段,一段的): XXXXXXX JE/JNE XXXXX 设置信息 设置信息 retn push xx 设置信息 设置信息 retn push xx 设置信息 设置信息 retn 易语言 易语言破解思路: 1. 信息框法 bp MessageBoxA(断对话框) 2.字符串法 查看易语言文本信息: bp GetProcessHeap F9运行4次,取消断点 执行ALT+F9 用户代码 F8单步走 或者在区段为".data"/".ecode"下断,运行 3.窗口标题法 bp SetWindowTextA 4.F12堆栈调用 0040C0CB=易语言.0040C0CB (ASCII "shaonanshaonvluntan") 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) BC++破解 1、DEDE、PE Explorer作为强有力的辅助工具找按妞事件 2、Point-H法 3、bp GetDlgItem/GetDlgItemTextA(断输入框) | |
![]() | ![]() |