首页
社区
课程
招聘
[旧帖] [原创]破解总结——看过黑鹰VIP破解教程、天草破解教程的心得 0.00雪花
发表于: 2010-3-3 21:44 23436

[旧帖] [原创]破解总结——看过黑鹰VIP破解教程、天草破解教程的心得 0.00雪花

2010-3-3 21:44
23436
收藏
免费 0
支持
分享
最新回复 (262)
雪    币: 2510
活跃值: (2178)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
51
看到附件,不知道从哪里下?
2010-5-29 09:24
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
52
好东西,支持你啊
2010-5-29 11:20
0
雪    币: 35
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
53
晕啊~~你好不容易转正,又跑回来发贴了啊
2010-5-29 11:24
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
54
论坛币太少 还要用来转正呢  不敢下载
2010-5-29 13:40
0
雪    币: 9
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
55
等我转正!我再来看看!嘿嘿
2010-5-29 18:03
0
雪    币: 44
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
56
             支持↑支持↑支持↑
2010-5-29 22:20
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
57
没有钱啊,等转正在说吧
2010-5-29 23:05
0
雪    币: 235
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
58
呵呵
2010-5-30 07:54
0
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
59
转正了再来下。。。
2010-5-30 08:11
0
雪    币: 235
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
60
谢谢分享!!
2010-6-4 10:38
0
雪    币: 87
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
61
我就不下载了,留点钱买邀请码
2010-6-4 11:29
0
雪    币: 70
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
62
看看是什么总结,希望能学到东西,呵呵
2010-6-4 11:40
0
雪    币: 15
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
63
(*^__^*) 嘻嘻…… 下了!
先拿去学习了楼主!
2010-6-4 13:11
0
雪    币: 41
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
64
这也要下啊,粘出来吧
2010-6-4 13:47
0
雪    币: 3
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
65
等有钱了再下
2010-6-4 21:36
0
雪    币: 94
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
66
为什么都说钱钱  邀请码 是干嘛的
2010-6-6 13:21
0
雪    币: 44
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
67
谢谢分享 啊

不过穷啊
2010-6-6 13:27
0
雪    币: 30
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
68
不是正式会员,等转正了再回来看...
2010-6-6 13:50
0
雪    币: 227
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
69
钱不钱的先不说,分享经验总是要谢谢的,贴出来的人更是要谢谢(共产主义万岁)。
2010-6-11 01:04
0
雪    币: 11
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
70
要看完这些需要很大的耐心啊,lz是好学之人啊
2010-6-11 11:20
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
71
为什么我下载不了,楼主
2010-6-11 11:31
0
雪    币: 37
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
72
没用的不要紧,帖出来给大家分享,一起学习, LZ不要T我!

C类语言破解
1、bp MessageBoxA(W)(断对话框)---Ctrl+N
2、Point-H法
3、bp GetDlgItem/GetWindowTextA(W)/GetWindowTextLengthA(W) (断输入框)
4、字符串法---插件/搜索所有参考文本

Delphi/BC++语言破解
1、DEDE结合PE Explorer找按妞事件
2、Point-H法
3、bp GetDlgItem/GetWindowTextA(W)/GetWindowTextLengthA(W) (断输入框)
4、bp MessageBoxA(W)(断对话框)---Ctrl+N
5、字符串法---插件/搜索所有参考文本
6、如果程序界面标题有[未注册/注册/VIP版/标准版/钻石版] 之类字样,可以通过DEDE查找FormCreate/FormShow,找到关键标志位

VB语言破解
1、VBExplorer查找按钮事件
2、有提示框则 bp rtcMsgBox(断对话框)
3、通过bp __vbaStrCmp/__vbaStrComp/__vbaVarTstEq
4、万能断点法(816C24法)
5、字符串法---插件/搜索所有参考文本

易语言破解
1、借助E-Code Explorer查找按钮事件
2、下消息断点,查看堆栈再返回
3、eCode法--断按钮事件
4、字符串法---插件/搜索所有参考文本
按钮事件固定模式:
0040EC78 837D F4 00 cmp dword ptr ss:[ebp-C],0 ;关键判断
0040EC7C 0F84 3B000000 je dcse.0040ECBD ;关键跳
0040EC82 68 04000080 push 80000004
0040EC87 6A 00 push 0
0040EC89 68 EC904000 push dcse.004090EC
0040EC8E 68 01030080 push 80000301
0040EC93 6A 00 push 0
00 40EC95 68 00000000 push 0
0040EC9A 68 04000080 push 80000004
0040EC9F 6A 00 push 0
0040ECA1 68 F1904000 push dcse.004090F1
0040ECA6 68 03000000 push 3
0040ECAB BB 00030000 mov ebx,300
0040ECB0 E8 92000000 call dcse.0040ED47
0040ECB5 83C4 28 add esp,28
0040ECB8 E9 36000000 jmp dcse.0040ECF3
0040ECBD 68 04000080 push 80000004
0040ECC2 6A 00 push 0
0040ECC4 68 CC904000 push dcse.004090CC
0040ECC9 68 01030080 push 80000301
0040ECCE 6A 00 push 0
0040ECD0 68 00000000 push 0
0040ECD5 68 04000080 push 80000004
0040ECDA 6A 00 push 0
0040ECDC 68 02914000 push dcse.00409102
0040ECE1 68 03000000 push 3
0040ECE6 BB 00030000 mov ebx,300
0040ECEB E8 57000000 call dcse.0040ED47
0040ECF0 83C4 28 add esp,28
0040ECF3 8BE5 mov esp,ebp
0040ECF5 5D pop ebp
0040ECF6 C3 retn

******************************************************************************************************************************************
按钮事件

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
断下后回溯代码即可找到关键点,常用的方法,转存跟踪法

5、未注册就功能使用限制
判断是否注册--->某种功能是否让你使用,如果不能够用,一定会有提示的,或是错误提示或是弹出注册框等,那么从提示入手即可找到解除限制的关键
不完美破解:解除功能限制

6、未注册就日期限制
bp GetLocalTime 获取本地时间
bp GetSystemTime 获取系统时间
bp GetFileTime 获取文件时间
一般下这几个断点比较难分析关键
捷径:查找字符串--找可疑文件--一般以DLL多见
只要不让它读取到这个DLL即可解除限制

7、Demo(演示试用版)--功能残缺
这个和上面的功能限制不一样
功能限制是软件本身就有这个功能,对程序而言,相对应的功能代码也存在
Demo即是没这个功能,空架子一个而已
一句话:破解也无用!

8、网络验证
无法登陆有错误提示者:下消息断点回溯代码,找按钮事件,从头来过,从按钮事件开始跟踪,找网络验证CALL(所需要登陆的地址在这个CALL里面),接下来就是分析返回值或者改登陆地址为本地(127.0.0.1),再后面就需要改某些跳转了
无法登陆自动退出者:下bp ExitProcess断下(一般可以断下)回溯代码,找按钮事件,从来来过,从按钮事件开始跟踪,找网络验证CALL(所需要登陆的地址在这个CALL里面),接下来就是分析返回值或者改登陆地址为本地(127.0.0.1),再后面就需要改某些跳转了

9、狗加密
一般狗加密软件,一启动就会检测所需要的狗文件,若没有狗文件,提示错误
这里我们有两个入手点
1、“一启动就会检测所需要的狗文件”,下bp CreateFileA等断点,断下后,回溯
2、“若没有狗文件,提示错误”,下bp MessageBoxA,断下后,回溯

总结:
从上面的介绍说明可以看出,有这么一个共同点---按钮事件,可以这么说,按钮事件是我们的思路之门
按钮事件可以这样得来:
1、通过下相应断点,回溯代码
2、通过辅助工具快捷的得到(VBExplorer、DEDE)

******************************************************************************************************************************************
重启验证
80%-90%的软件基本都是重启验证类型

1、注册表类型
Bpx RegOpenKeyA(W)
Bpx RegOpenKeyExA(W)
2、ini文件类型(*.reg/*.ini)
Bpx GetPrivateProfileStringA
3、其他文件类型(*.dat/*.lic…)
Bpx CreateFileA(W)
Bpx ReadFile
4、DLL文件操作类型
如果没有什么有效的拦截函数,不妨试一下Bpx CreateFileA(W).余下的就是通过你的经验去判断了(例如:35课)
注意:建议使用Bpx断点,这样,比较快捷、准确。尚若Bpx失效,再尝试bp
方便断点设置的有以下3个断点插件,APIBreak中国版(不带Point-H),APIBreak英文版(带Point-H)、+BP-Olly

******************************************************************************************************************************************
去nag框的方法

1、若是Delphi&BCB程序,可以通过FormCreate法查找到FormCreate,再单步跟踪,找到窗口的调用CALL,一般它的具体形式是call dword ptr ds:[edx+E8]

2、OD载入程序后,单步跟踪,找到窗口的调用CALL
注意看第37课

******************************************************************************************************************************************
两种经典方法

1、Point-H法
此法类似下断点bp GetWindowText(A/W),但是,在某些Point-H断不下来的情况下,bp GetWindowText(A/W)却可以断下来。Point-H能够断下来的,bp GetWindowTextA基本上都可以顺利断下

2、转存跟踪法
到底是byte/word/Dword断点,一般情况下是byte,其他特殊情况大家临场判断

******************************************************************************************************************************************
一些常规断点

拦截窗口:
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字符串

******************************************************************************************************************************************
灰色按钮
有两种情况:通过代码和控件属性

VB语言:
代码:ctrl+b查找 816C24,在JMP下断,然后F2运行程序,把 push ebp 改为 retn,或者把这些代码全NOP掉
控件属性:VBExplorer 辅助工具改属性

Delphi/BC++语言:
代码:通过DEDE找FormCreate,记下地址,改 retn
控件属性:相关辅助工具改属性

易语言
代码:bp EnableWindow,断下后返回,把 push ebp 改为 retn
控件属性:用十六进制工具查找 BOB4C5A5 ,把它后面的 07 改 05
2010-6-15 21:53
0
雪    币: 37
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
73
以后再来看吧!现在没钱啊!
2010-6-15 22:38
0
雪    币: 127
活跃值: (40)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
74
浪费我的kx
2010-6-16 03:08
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
75
支持C+V 顶一个
2010-6-16 05:05
0
游客
登录 | 注册 方可回帖
返回
//