GiliSoft Video Editor 10.2.0 竟被一招制服!
本帖最后由 wanao2008 于 2020-11-6 20:08 编辑GiliSoftVideo Editor 应该算是精品软件了,网上的破.解版一抓一大把。但是关于它的破.解文章却很少。
本论坛有一篇,16年的文章,写的不是很细,感觉只是破.解的主界面,里面的其它功能模块并未破.解。
https://www.52hb.com/forum.php?mod=viewthread&tid=26281&highlight=GiliSoft%2BVideo
其实GiliSoft Video Editor 有很多版本,为什么我选的是10.2?因为我找练手软件时碰巧下的是这个版本。
哦对了,下载该软件时,也会看到很多关于它的信息,如:
破.解事项:需要屏蔽网络验证
或者在 C:\Windows\System32\Drivers\etc 的 hosts 文件中添加下两行网址。
127.0.0.1 www.gilisoft.com
127.0.0.1 gilisoft.com
然后输入注册码:
E-mail:wcxu21@126.com
注册码:34567-98532-21851-48641-84675-19651
E-mail:wcxu21@126.com
注册码:34567-98532-21851-48641-84675-17995
E-mail:wcxu21@126.com
注册码:34567-98532-21851-48641-84675-23593
E-mail:wcxu21@126.com
注册码:34567-98532-21851-48641-84675-03734
当然你也会下载到注册机,但,你会破.解吗?
毕竟那是人家破.解好的,我们想学技术,谁来告诉我们?
补充一下:软件无壳,delphi程序,
注册码共有6段,每段5个数字,第3段必须为21851,十六进制为“555B”
先说说这个软件吧,软件启动时打开的是一个框架(也可叫平台),并非真正的工作软件,
真正的工作软件其实都是独立的程序(exe文件),
也就是说,你如果破.解了软件的启动界面,并不意味着你破.解了整个软件。
举例说明一下:
在最初研究这个软件时,我找到了两个常量,可以使软件变成正式版,这两个常量分别是:
第一个常量地址,可以在OD里右键查找所有常量找到。
这个地址我跟踪了好几遍,才知道它和后面的一个Switch有关,必须=3才能是注册版。
它的来源CALL也很有意思,大家可以自己跟一下试试,找一找“家庭版”的值试试。
(各位看官先别急,后面我会将分析方法和流程说一下)
修改方法如下:
004DBECE A1 40B64E00 mov eax,dword ptr ds:
004DBED3 E8 74D3FCFF call videoedi.004A924C
改为:
004DBECE B8 01000000 mov eax,0x3
004DBED3 90 nop
004DBED4 90 nop
004DBED5 90 nop
004DBED6 90 nop
004DBED7 90 nop
第二个常量地址为:这个地址必须=1。
修改方法如下:
004DBF02|.1BC0 sbb eax,eax
004DBF04|.8983 0C040000 mov dword ptr ds:,eax
改为:
004DBF02 B0 01 mov al,0x1
保存后打开软件,主界面成为了正式版,如图:
就连关于也能正常显示:
但是,当随意打开模块使用时,却发现,还是试用版:
这种逆向根本不算成功!
下面分享一下我的逆向过程,
一、用暂停法找算法CALL
(2016年的文章用的是断点法,我换一下方法吧,毕竟多一种方法多一条路)
OD载入软件,F9运行,出现注册对话框后,
输入邮箱,随意,一定要是邮箱的格式:wanao@yahoo.com
输入序列号,开始不知道可以随意输入,等后面跟踪时会出现很多类似序列号的字符串,复制一个用就行了,
我就复制了一个:20931-34575-21851-01466-79950-27093
点击“激活”后会弹出错误提示,
这时点击暂停(F12),让软件暂停,
然来按“K”查看调用堆栈,如图:
找到程序地址,双击就进入到程序代码处,
向上一直找,找什么?找函数头,非常的远,要有耐心哦!
向上找的过程中就会看到类似注册码的字符串:
继续向上,终于找到函数头:
下断后,按F9,让程序运行起来,确定后,继续点“激活”按钮进行注册。
这时会在注册函数的头部断下,F8向下跟踪,
这时要多注意观察“寄存器”,“堆栈”,“信息栏”这些关键信息处,
必有所发现。
我就发现了一些外部调用CALL:
F7跟进去看看,
有没有眼前一亮的感觉,这么多的可疑信息,原来,都是模块调用。
这里共涉及了两个动态链接库:magicskin.dll和Verify.dll
Verify,查证, 检验, 证实,难到这个是专门用于校验序列号的?
先不管了,继续向下跟,一路F8,先看一下流程,
当走到这个关键跳时,引起了我的注意,看图:
是MagicSkin.MS_Regx这个函数的返回值决定的下面的跳,
因为我的是假码,所以肯定跳了。
改为不跳试试:
竟然成功了,看来注册CALL里只要NOP这个关键跳就算成功了。
点击确定,软件也成了正式版,看下图:
点一下“关于”看看:
哪有关于啊?又是要注册,看来根本就没成功吗。
就在这些找到的可疑处修改了一天也不得法。感觉脑袋都有些混沌了。
让脑袋清醒一下,换个思路试试,
要不看看软件启动都走了哪些流程?
**** Hidden Message *****
重启试试,竟然破.解成功了!
打开其它模块,也全都是注册版了。
真是没想到,只修改了一处就将这么好的软件破.解了。
突然想到版本问题,经验证本方法同样适用新版本,看下图:
而且,逆向过程也一模一样。
对了,请尊重作者、尊重版权,大家练练手就行了。
xiexie!!!!!!!!!!!!!!!!!!!!!!!!! 感谢分享 学习学习,谢谢 我是来学习方法的,谢谢分享教程 学习学习,谢谢 谢谢分享逆向教程! 学习一下,谢谢分享 看看挺牛逼的了 感谢分享,学习学习