首页
社区
课程
招聘
[求助] 偷代码的asprotect脱壳后无法运行,怎么修复?
2012-12-3 14:08 20428

[求助] 偷代码的asprotect脱壳后无法运行,怎么修复?

2012-12-3 14:08
20428
用PEID查看得到

然后用了v大的脚本脱

最后修复的时候有3个指针无效,剪掉后无法运行。


请问应该怎样修复呢?

软件地址:http://www.forextester.com/files/ForexTesterSetupEng29.exe

[培训]科锐软件逆向50期预科班报名即将截止,速来!!! 50期正式班报名火爆招生中!!!

上传的附件:
收藏
免费 0
打赏
分享
最新回复 (20)
雪    币: 51
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
HuErr 2012-12-3 14:26
2
0
找到偷的地方喽。
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
versace 2012-12-4 13:31
3
0
麻烦知道原因的大牛指点下啊
雪    币: 180
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
红警车 2012-12-10 15:41
4
0
大牛们怎么不帮助解决一下啊,想学习一下
雪    币: 2350
活跃值: (1292)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
zenix 1 2013-2-17 19:25
5
0
楼上几位,是不是同一个人用不同马甲啊?

昨晚下载了,今天白天有空就看一下。

加的壳是 ASProtect SKE 2.4 build 11.20
那三个指针是 SDK 用的, 分别是。


char* __stdcall GetHardwareID();
BOOL __stdcall CheckKeyAndDecrypt( char* Key, char* Name, BOOL SaveKey );
BOOL __stdcall CheckKey( char* Key, char* Name, PMODE_STATUS mode_status );


上传的附件:
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
yingyue 2013-2-17 22:11
6
0
大 Z 牛  
雪    币: 255
活跃值: (247)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
釜森 2013-8-4 07:56
7
0
[QUOTE=zenix;1143644]楼上几位,是不是同一个人用不同马甲啊?

昨晚下载了,今天白天有空就看一下。

加的壳是 ASProtect SKE 2.4 build 11.20
那三个指针是 SDK 用的, 分别是。

[/QUOTE]

我也下了一个,版本现在是2.96了。用脚本脱可行吗?如何修复能说详细点吗?哪怕指明一个方向也好,让大家都学习一下。
雪    币: 255
活跃值: (247)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
釜森 2013-8-5 15:03
8
0
搞了一、二天,仍是一头雾水。由于自己太菜,根本无法脱壳和修复。或许自己以小人之心,5楼的牛人真的搞定了吗?我用内存patch方法也获得了这样的效果(如图),但重启程序时过不了验证。不知有一套可用的key(包括硬件号、注册名和注册码),能否搞得定??有兴趣的朋友,提供一套试一试?
上传的附件:
雪    币: 2350
活跃值: (1292)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
zenix 1 2013-8-6 09:32
9
0
那三个指针是 ASProtectSDK 的这三个 API, 不能直接剪掉。
GetHardwareID
CheckKeyAndDecrypt
CheckKey

你需要修复它们,不然程序会出错。

这个以前就讨论过了,你可以到这里看看。
http://bbs.pediy.com/showpost.php?p=1158313&postcount=36

刚才下载最新版测试了一下,注册密钥没变过。
上传的附件:
雪    币: 255
活跃值: (247)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
釜森 2013-8-6 17:49
10
0
感谢大牛的指导!我还是没有搞成功.由于有代码偷窃,手工脱壳我不会.我的方法有2:一是用脚本脱;二是用DecomAS 脱壳机.主要是后期修复把我难住了,一直不得要领.用脚本脱,三个GetHardwareID、CheckKeyAndDecrypt、CheckKey 是自动修复的.用DecomAS 脱壳机脱,本来加载aspr_api.dll可以的,但我还是选择了手工修改返回值的方法.
     修复后的脱壳文件在地址:007A2B68和007A2B88两处过不去,修改后可以过了,加上在0072D495处修改写入的标志数为1,程序终于可以启动了...但是如下图.测试模式不能用!!!程序不全!!(任意格式正确的注册码均能注册成功)
后继续分析发现是code加载错误!!真是...555
   大牛能再指教一下吗?
上传的附件:
雪    币: 2350
活跃值: (1292)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
zenix 1 2013-8-7 10:16
11
0
你需要先输入一个合法的注册码,
可以用我帖子里面提供的,
或是别人的,
正版的,
过期的,
被拉黑的,
都可以。

要不然,你脱壳以后,正版那一部分的功能,有可能代码根本就没有解密。
如果你直接修改标志位,正版那一部分的功能,解密出来的代码是错误的。
其它的 DEMO 版的功能,不受影响。
雪    币: 255
活跃值: (247)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
釜森 2013-8-7 16:13
12
0
也许是自己太笨了?!这个家伙我还没有搞定.其实我的思路基本上是与大牛指导的相同.原打算搞一套可用的KEY,通过修改硬件号后,完成所谓的"注册",再脱壳...
      我在其官网上的注册演示中搞了一套(不知是否被拉黑或过期).另外,加上你贴子上的一套(据你试没有被拉黑),但我输入后,在注册界面都无法过验证...最后只好通过修改返回值的方法在注册界面过了验证(程序没有重启前),注册码到是被程序保存了.
      我修改硬件号的方法有2:一是在OD中直接改;二是用内存pacth自动改.但两种方法都在注册界面都无法过验证,通过修改返回值的方法没有"真正"完成"注册",所以脱壳后出现如你说的哪样,程序不全
     如何把合法的key输入就成了关键,大牛能指导一下吗?或许是我的脱壳工具不行,我用是"Aspr2.XX_unpacker_v1.13SC"脚本和DecomAS1.7脱壳机
   不好意思,这是我在你贴子附图上读来的key,不知是否有错?
Zenix Yang
B914524B-FDA1
JTFGNE-ZZUCT-GN9LJ-E4FZ4-AMPYN-7XWVA-U9X86-QT9PQ-PEHMK-NVT5Q-3F5UZ
上传的附件:
雪    币: 2350
活跃值: (1292)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
zenix 1 2013-8-13 16:09
13
0
用修改返回值的方法,填我提供的注册码,然后脱壳就可以了。

不脱壳的话,
就用修改返回值的方法,加上固定硬件号,以及我提供的注册码。

最近工作繁忙,我较少上网。
雪    币: 255
活跃值: (247)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
釜森 2013-8-14 14:39
14
0
      按照我的基本思路和大牛的指点,现在带壳替换硬件ID成功,用正式的key注册完成.不知怎的,你贴子提供的key无效,当然官网上的也无效,我是从另外的地方弄到的正式key.
     目前我仍不能解决正常脱壳(一直不得要领),只好做成内存补丁LPK(在杀软下需设置信任和白名单).由于该ASProtect程序有VM和代码偷窃,我用手工无法脱,是用的脚本和工具,可能是方法不当吧!三个API即:GetHardwareID、CheckKeyAndDecrypt、CheckKey 在脱壳前后,我都修改过返回值,程序都出错.大牛有空指点一下,我的QQ:1197446392
    哦!顺便说一下,我对炒股和外汇一点也不懂,搞这东西纯粹是为了学习.
雪    币: 2350
活跃值: (1292)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
zenix 1 2013-8-16 15:07
15
0
用你的 LPK, 保持软件在注册状态。
然后,脱壳,修复。
就可以了。

以实用性来说,只要能注册成功,功能一切正常,我觉得没脱壳的必要。
雪    币: 255
活跃值: (247)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
釜森 2013-8-21 09:13
16
0
      谢谢大牛的指点!经过进一步的完善,现在我的LPK已经比较稳定了.通过修改返回值,已经打掉了CheckKeyAndDecrypt对用户名和硬件号的验证.现在的patch已经在目标程序段内了.况且,可以用自己的硬件号和用户名注册,只要注册码是有效的就行了(有效的注册码有N多,只要没有被拉黑就行).这次你贴子上的注册码可用了,这说明大牛原来的key并不是一套完整的key(注册名、硬件号及注册码完全对应).
     但是要脱壳仍然不行.正如大牛所说,以实用性来说,只要能注册成功,功能一切正常,不脱壳也完全可以.但对于一个cracker来说,也希望能把她的衣服脱掉才好呀!!
雪    币: 2350
活跃值: (1292)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
zenix 1 2013-8-21 11:05
17
0
我的 Key 是自己捏造的,使用跟原版相同的加密常数,但是公钥和私钥都是自己乱编的。

在已注册的模式下脱壳以后,修复那几个 SDK 的 API, 功能就一切正常了。
雪    币: 255
活跃值: (247)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
釜森 2013-8-21 15:59
18
0
    根据我的理解:修复或打掉哪几个SDK的API,就是给出关键而正确的返回值.这个目标程序无论注册与否,正常运行第一个过的API是GetHardwareID.我在带壳的情况下,通过修改返回值已经过了这个API.自通过正式key实现真正注册后,在已注册的模式下用多个脚本和DecomAS1.7脱壳N次,并试着用带壳模式下过该API的方法修改返回值,均不成功!!
   另外,根据我的初步分析,生成的脱壳文件,好像与是否在注册模式下无关(通过文件比较发现的)!!究竟问题出在哪儿,大牛能再点拔一下吗??? 该API除了返回硬件号外,还有什么??
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
zxbzzm 2017-12-25 17:31
19
0
我试了一下,还破不了,能麻烦指导一下,谢谢!1
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
zxbzzm 2017-12-28 09:46
20
0
没有进展
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wosildj 2018-3-31 11:36
21
0
007A2B68和007A2B88两处是怎么改的呢?还有那3个无效API是怎么修复的,求教!
游客
登录 | 注册 方可回帖
返回