破解教程 第七课 w32dasm破解实例(二)

来源:互联网 发布:42u网络机柜 编辑:程序博客网 时间:2024/05/22 16:04

***************************
一  破解对象:墙纸定时换1.0
下载 http://soft.linksun.com/fpx/lesson7.zip

(也可到站点http://www.esoftware.com.cn搜一下,找到1.0版很容易)


1.看软件的说明书
2.运行此软件,试着输入你的姓名和任意注册码去注册,没有出现错误提示信息.啊,好难!!
3.用language或fi侦测wallpaper_change.exe,发现没有加壳
4.pw32dasmgold反汇编
5.串式参考中找到错误提示信息(没有)或可能是正确的提示信息

"孷A"
"疒@"
"您的试用期已过!本软件将在5分钟后关闭,请及时"
"您的试用期已过!本软件将在5分钟后关闭,请及时?
"您已经注册,感谢使用无超软件工作室的产品!" ***********
"寍C"
"豾A"
"墙纸定时换"
"佤G"
"呉t;Pdt婮奍:HHu婡LB 脨SVW兡鴭駦<$ゥ嬝塖`"
"汹@"
"勗C"
"磘@"
"瑿"
"嫄?"
"枳???"
"枳???"


"您已经注册,感谢使用无超软件工作室的产品!"怀疑可能是正确的提示信息
光条停在此处时,双击鼠标左键,反复双击,发现有两处调用,0047BC51,0047B7E0
分析:0047B7E0数小,经过的早,估计是程序启动时判断你是否注册
0047BC51数大,经过的晚,估计是注册对话框之类你输入注册码,程序看你输的对不对.
于是你就发现改0047BC51不对.因为程序在启动时有判断,无论你
在这个地方怎样捣鬼,程序一开始的判断就会判你的死刑
所以改0047B7E0
在pw32dasmgold主窗口发现下面的(######所标的地方)

6.分析
:0047B7C6 8B55E4 mov edx, dword ptr [ebp-1C]
:0047B7C9 8B45F4 mov eax, dword ptr [ebp-0C]
:0047B7CC E81787F8FF call 00403EE8 (关键call)
:0047B7D1 0F858C000000 jne 0047B863 ******跳向错误处(关键跳转)
:0047B7D7 8B45FC mov eax, dword ptr [ebp-04]
:0047B7DA 8B8094030000 mov eax, dword ptr [eax+00000394]

* Possible StringData Ref from Code Obj ->"您已经注册,感谢使用无超软件工作室的产品!" #######
|
:0047B7E0 BAACB84700 mov edx, 0047B8AC
:0047B7E5 E89642FBFF call 0042FA80
:0047B7EA 8B45FC mov eax, dword ptr [ebp-04]
:0047B7ED 8B8098030000 mov eax, dword ptr [eax+00000398]
:0047B7F3 33D2 xor edx, edx
:0047B7F5 E86E41FBFF call 0042F968
:0047B7FA B201 mov dl, 01
:0047B7FC A1C49F4700 mov eax, dword ptr [00479FC4]
:0047B801 E8BEE8FFFF call 0047A0C4
:0047B806 8BD8 mov ebx, eax
:0047B808 BA02000080 mov edx, 80000002
:0047B80D 8BC3 mov eax, ebx
:0047B80F E850E9FFFF call 0047A164

######所标的地方向上找第一个跳转,找到
:0047B7D1 0F858C000000 jne 0047B863
程序之所以没有来到注册成功的地方主要就是因为这个跳转,
跳到了错误的地方
47B7D1处的跳转为关键跳转,它上面call的为关键call

7.绿色光条停在关键跳转,即
:0047B7D1 0F858C000000 jne 0047B863
在pw32dasmgold主窗口底部找到关键跳转
的偏移地址(实际修改地址)
@:0047B7D1@:Offset 0007ABD1h h表示十六进制
实际修改地址是7ABD1

8.用ultraedit打开wallpaper_change.exe,ctrl-G,键入0x7ABD1 0x表示十六进制
0F858C000000改为0F848C000000(其实只是把5改为4,其余的不动)
另存为wallpaper_change1.exe
修改原理:
输入的注册码不对时跳到出错的地方,正确时来到对的地方
修改后: 输入的注册码不对时来到对的地方,正确时跳到出错的地方

9.运行wallpaper_change1.exe,随便输入注册码注册成功,破解完成

二  破解瑞星杀毒软件2001版

非常棒的国产精品杀毒软件,从瑞星网站下载最新版,

目前为2001版,安装时需瑞星密钥盘。

图形版ravcpic.exe 字符版ravcchar.exe

下面以图形版为例。

1。用winzip等解压缩软件将ravcpic.exe 展到一个目录下

2。它的加密加在SETUP.DLL中,我们研究SETUP.DLL,根据我们学过的侦测壳和脱壳

将其中的SETUP.DLL(属性为隐含)的UPX1.03壳给脱了。

脱壳可用UPX1.06,参数-D即可(UPX SETUP.DLL -D)

3。用w32dasm黄金版打开SETUP.DLL==》串式参考

"请插入瑞星A号盘,如果该提示仍出现请与经销商联?

反复双击,发现共四处,我们只看最早的一处

:10001916 85C0 test eax, eax

:10001918 7407 je 10001921 (74改75)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

* Referenced by a (U)nconditional or (C)onditional Jump at Address:

|:10001947(C)

|

:1000191A B801000000 mov eax, 00000001

:1000191F 5E pop esi

:10001920 C3 ret

* Referenced by a (U)nconditional or (C)onditional Jump at Address:

|:10001918(C)   解释:说明由10001918行跳来,在此双击鼠标右键,可来到10001918行(很常用,重要)

| ^^^^^^^^^^^

:10001921 A180CD0010 mov eax, dword ptr [1000CD80]

* Reference To: USER32.MessageBoxA, Ord:0000h

|

:10001926 8B356C910010 mov esi, dword ptr [1000916C]

:1000192C 6A31 push 00000031

* Possible StringData Ref from Data Obj ->"提示"

|

:1000192E 6884B20010 push 1000B284

* Possible StringData Ref from Data Obj ->"请插入瑞星A号盘,如果该提示仍出现请与经销商联?

->"怠?

|

:10001933 6850B20010 push 1000B250

修改原理

修改前,无钥匙盘出错,有钥匙盘继续安装

修改后,有钥匙盘出错,无钥匙盘继续安装

4。根据前面讲的用ultraedit将74改为75,保存

运行目录下的安装主程序setup.exe,哇塞,省掉一百多大洋!

5。请保存修改后的setup.dll,可将瑞星2001图形版毙掉(难得瑞星三天两头的升级)

6。字符版可参考1~5,原理同

三  瑞星2002个人防火墙1.1版破解教程

原版从瑞星网站下载,需要ID号 我主页首页有
目前为1.1版,安装时需瑞星密钥盘。
文件名称rfw.exe
破解工具:w32dasm黄金版
1。用winzip或winrar等解压缩软件将rfw.exe展到一个目录下
2。研究目录下的setup.exe
3。用w32dasm黄金版打开setup.exe ==》串式参考"Please insert the Rising 'A' floppy. Please contact


String Resource ID=00109: "For ensuring the installation to succeed, please close the L"
String Resource ID=00111: "Unable to find Notes.ini file!"
String Resource ID=00112: "Setup program will create shortcut model on your desktop, wh"
String Resource ID=00113: "You are not "Administrator", install maybe fail.
you'd bet"
String Resource ID=00116: "You have installed Rising Personal Firewall[version:%s], now"
String Resource ID=00117: "You are installing version lower than[%s] the one you used ["
String Resource ID=00119: "
/setup path:
%s
program group name:
%s

Disk free sp"
String Resource ID=00120: "For ensuring the installation to succeed, please close Lotus"
String Resource ID=00121: "Would you like install Rising Anti-virus software?"
String Resource ID=00122: "Please insert the Rising 'A' floppy. Please contact dealer i" ************
String Resource ID=00123: "After long years technology tracking on network attacking me"
String Resource ID=61440: "S"
String Resource ID=61446: ""
String Resource ID=61472: "?0?醥"
String Resource ID=61473: "政gL
/勍/"
String Resource ID=61474: "?
String Resource ID=61475: "匵
?"


只有一处

:0040C6AC 50 push eax
:0040C6AD 8BCF mov ecx, edi
:0040C6AF E81CEDFFFF call 0040B3D0
:0040C6B4 33DB xor ebx, ebx
:0040C6B6 83CDFF or ebp, FFFFFFFF
:0040C6B9 85C0 test eax, eax
:0040C6BB EB7D jmp 0040C73A 这是修改后的,74还是75=>EB,跳过检测钥匙盘*********

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040C738(C)
|
:0040C6BD A1C0C24300 mov eax, dword ptr [0043C2C0]
:0040C6C2 89442410 mov dword ptr [esp+10], eax
:0040C6C6 899C24F0060000 mov dword ptr [esp+000006F0], ebx
:0040C6CD 89442414 mov dword ptr [esp+14], eax

* Possible Reference to String Resource ID=00122: "Please insert the Rising 'A' floppy. Please contact dealer i"
|

:0040C6D1 6A7A push 0000007A
:0040C6D3 8D4C2414 lea ecx, dword ptr [esp+14]
:0040C6D7 C68424F406000001 mov byte ptr [esp+000006F4], 01
:0040C6DF E8F4B00100 call 004277D8

* Possible Reference to String Resource ID=00008: "Setup tips"
|
:0040C6E4 6A08 push 00000008
:0040C6E6 8D4C2418 lea ecx, dword ptr [esp+18]
:0040C6EA E8E9B00100 call 004277D8
:0040C6EF 8B4C2414 mov ecx, dword ptr [esp+14]
:0040C6F3 8B542410 mov edx, dword ptr [esp+10]

4。运行目录下的安装主程序setup.exe,哇塞,原来很温柔,小家伙蛮可爱的

作业
1.破解墙纸定时换软件的最新版本
2.从我的竹叶下载风飘雪的破解日记,破解日记上和瑞星在一起的另外两篇,上面的软件不知还能
不能下载到,若能,请学着破一下

 
原创粉丝点击