首页
社区
课程
招聘
[旧帖] [分享]某淘宝第三方软件暴破过程 0.00雪花
发表于: 2009-12-30 01:22 1942

[旧帖] [分享]某淘宝第三方软件暴破过程 0.00雪花

2009-12-30 01:22
1942
  大家好!这是我第一次写破文,这个软件也是我第一个破解的软件,现拿出来与大家分享一下。

  先说明一下,这是一个付费软件,在一些淘宝卖家中还是相当有一些人用的,作者开发个软件也不容易,所以我在这里不上软件界面图,必要的地方用文字描述,我会尽量表示得清楚一些。毕竟破文提供的是破解的思路,跟软件界面关系不是很大。

现在开始:
  1.当然是先脱壳,用PEiD查壳,发现是UPX 0.89.6 - 1.02 / 1.05 - 2.90 (Delphi) stub的壳,还是比较常见的,有很多自动脱壳的软件,这里就不用手脱了。我是用PEiD中Unpacker for UPX 2插件脱的壳,得到unpacked.exe文件。



  2.先运行软件,试注册一下,发现这款软件是用机器码加在线验证注册码的方式注册的,随便输个注册码注册,提示“非法授权码”。用OllyDBG打开unpacked.exe,查找ASCII,在找到的字符串中并没有找到该字符串,这应该是在网络验证时,从作者网站上返回的错误代码。

  先暂时不管,再找找看软件中有没有别的未注册提示信息,发现软件标题上显示“未注册”,任务栏中也有显示“您的电脑未注册”字样,查找同样没找到该字串。

  3.重新运行软件,发现软件一开始就会先检测该软件是否已注册,然后在标题和任务栏给出提示,我想这里一定有一段判断语句,如果没注册软件有提示且主要功能不能使用,如已注册则软件正常运行。

  4.既然未注册的地方无从下手,于是转变思路,从已注册的地方入手,查找到软件标题显示已注册的地方,向上找发现关键跳转0054B51F(见图),这里我们是要让后面的代码执行,于是把这个语句改为NOP,跳转无效,试运行,软件标题显示“已注册”。



  接下来试一下软件的功能,发现按下功能按钮后还是提示“该软件未注册,请联系作者”,正常功能不能使用,于是再查找该字符串,向上找发现关键跳转00549482(见图),这里与上面那段代码不同,我们是不让此后的代码执行,于是把jnz改为jmp,强行跳转。



  5.复制到可执行文件-》所有修改,生成新的exe文件,试运行,一切功能正常,破解成功!

破解心得:
  1.该软件的破解过程并不是从注册对话框入手,也没有去跟踪注册码的算法,和一般介绍的破解方法有点区别,原理就是跳过所有遇到未注册限制的地方,这应该就是所说的暴力破解吧。

  2.判断哪里是关键跳转有个比较快的方法,就是看跳转语句是否完全跳过相应的提示信息,在OD中跳转到哪里都有箭头指示的,请看上面两个图中的绿色箭头。

  3.我觉得破文不光是要介绍破解的过程,最主要还是要写出Cracker的思路,是怎么一步一步找到关键点的,这是一个思考的过程,写出来有助于引导新手的思想。

  以上是我的一点分析,请各位大侠多多指正。



      这属于OllyDBG的应用,在代码区点右键-》超级字符串查寻-》查找ASCII(超级字符串查寻功能是OD的一个插件),会出现一个新的窗口,这里就显示着被反编译软件的所有字符串,可以用查找功能找到你要的字符串,如“该软件未注册,请联系作者”等等,双击找到的字符串就可以转到相应的代码区了,上面那两个截图就是这么来的。



  超级字符串查寻插件英文名字叫Ultra String Reference,看雪里是有的,为了大家方便,在这里再发一个吧
  下载后放到OD的Plugin文件夹里就可以了
ustrref.rar

PS:大家不用去猜这是什么软件了,这里只是分析破解思路和方法,不提供此软件。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (15)
雪    币: 191
活跃值: (17)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
老大,给我你那个未破解的软件,以及工具,我练练~~~~~ minaaisj@163.com
2009-12-30 01:50
0
雪    币: 85
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
传上来吧
~~~~~~~~
2009-12-30 11:18
0
雪    币: 21
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
到底是什么软件呢?
2009-12-30 11:20
0
雪    币: 72
活跃值: (52)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
传上来看看 。
2009-12-30 15:54
0
雪    币: 66
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
在未注册寻找突破口时没找到然后转换思路,在已注册找,但是楼主是如何找到第一张截图那里的代码的?寻找关键字串“已注册”?不太清楚,菜鸟问题,希望楼主解答,谢谢。
2009-12-30 16:08
0
雪    币: 66
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
恩,谢谢楼主解答。不过没有那个软件试手还真是感觉不太好啊,不过理解楼主,呵呵。
2009-12-31 10:21
0
雪    币: 36
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
很厉害啊,我们菜鸟级别的人得抓紧啊
2009-12-31 11:28
0
雪    币: 391
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
唉,没人气啊
2010-1-3 11:56
0
雪    币: 263
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
写得很好呀。楼主加油!
2010-1-3 18:46
0
雪    币: 391
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
11
之前的图片外链失效了,更新成论坛附件,欢迎各位指正
2010-1-7 15:16
0
雪    币: 243
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
这属于OllyDBG的应用,在代码区点右键-》超级字符串查寻-》查找ASCII(超级字符串查寻功能是OD的一个插件),会出现一个新的窗口,这里就显示着被反编译软件的所有字符串,可以用查找功能找到你要的字符串,如“该软件未注册,请联系作者”等等,双击找到的字符串就可以转到相应的代码区了,上面那两个截图就是这么来的。
该插件的名字叫什么?强烈建议lz提供该插件
2010-1-9 19:51
0
雪    币: 90
活跃值: (91)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
这个才叫教程啊  适合新手 感谢楼主分享
2010-1-9 22:49
0
雪    币: 391
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
14
多谢关注,插件已上传
2010-1-9 23:59
0
雪    币: 39
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
不错的教程呀,学习了。。
有软件来练手更好了
2010-1-10 16:58
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
学习了,感谢楼主分享!
2010-1-10 21:28
0
游客
登录 | 注册 方可回帖
返回
//