大神论坛

找回密码
快速注册
查看: 782 | 回复: 0

[原创] .NET逆向关于aspose.cell 23.10 逆向破解之去暗桩 附更改后的IL

主题

帖子

0

积分

初入江湖

UID
605
积分
0
精华
威望
0 点
违规
大神币
68 枚
注册时间
2023-09-16 15:14
发表于 2023-11-04 11:05
本帖最后由 残剑丶 于 2023-11-04 11:05 编辑

1.用DNSPY打开dll
2.在aspose里找到类 \u0006\u0018 然后查找  ;; 到虚拟机的核心位置

3.点击跳转值的那个变量,到定义的地方,他下面的是他的返回值存储的变量.

这4个变量是需要观察的关键点.

4.可以把这几个关键变量改个名字方便看 ,分别是totalLength,jumpto,currentPos,returnValue;

5.在while的地方下断,按F5运行, 会看见totalLength发生改变

6.如果你有过期的注册码, 当totallength==0x4db时,是在检验注册码
如果你点击this.\u000E();到方法的最后处下断,然后一直F5,你会看见currentpos和returnvalue一直在改变
当currentpos==0x39c时,他开始取注册信息中的过期时间
当currentpos==0x431时,他开始年月日逐一比较
当currentpos==0x3DF时,如果过期他会跳0x46b, 没过期跳0x484
于是关键就是在这个位置让他跳484
有过期码的时候,就这样了.

7.当totallength==0x18C时,是在判断是否正版

当currentpos==0x17C时,他开始判断正版.是正版jumpto==null,不是的时候跳0x184
于是关键就是这里不能让它跳.
没注册码时就这样了

8.暗桩
当totallength==0xE5时说明进入到暗桩判断.
不一定每次都进,随机进入的
当currentpos==0xd9时,观察returnValue,如果是1,则暗桩生效,生成的文件错误.,0则不生效
于是关键就是在此处把 retuelValue的1改成0

9,更改后这段代码是这样的


下方隐藏内容为本帖所有文件或源码下载链接:

游客你好,如果您要查看本帖隐藏链接需要登录才能查看, 请先登录

返回顶部