首页
社区
课程
招聘
[原创] AIDA64 8.25.8200 Business 逆向工程与Keygen实战
发表于: 2026-3-21 10:57 20679

[原创] AIDA64 8.25.8200 Business 逆向工程与Keygen实战

2026-3-21 10:57
20679

作为一个大二大学牲,最近给PC升级了散热,就想监控一下温度,但是在网上翻来覆去扒了好多论坛都没没有找到AIDA64今年2月24日最新版本Business的Keygen,只有一些固定分享的Key容易被AIDA64标记,那么能不能做到使用Keygen实现Business自由呢?下载了几个老版本,进去还有Illegal Copy牛皮癣警告膈应人。那么新版本AIDA64对安全性做了什么升级呢?

解包:AIDA64一如既往的使用标准UPX打包,直接使用upx -d aida64.exe即可将其解包为正常exe,接着放入IDA进行分析。

寻找序列号校验代码:我使用的是AIDA64 Portable版本,可以看到程序相同目录有一个Language目录,找到ulang_cn.txt并搜索序列号,这里会发现序列号的本地化对应为Product Key1

在IDA中搜索Product Key出现的全部位置。搜索到了这些字符串:2

其中我们一眼看到The entered product key is invalid,这样我们就定位到了序列号校验窗口的代码,可以反编译并研究检查逻辑了。

首先,按F5进行反编译,往下稍微翻一点可以看到这样的逻辑:3

可以看到,如果vars113是1,就说明序列号是无效的。而往上一看,(__int64)&vars113作为sub_108B440的out参数,说明这个函数进行了关键的校验逻辑,第一个参数应该就是序列号了。点开这个函数进行分析:4

首先执行了v112 = a1,接着后面的一大串处理函数将字符串分别去除-_和空格、0x00AD0x00C2这几种符号,仅保留25字节,然后进一步规范化为全大写,最终到这个位置:5

sub_4166D0(&varsB0, vars120, 1, 24); 把序列号的前24字节提取了出来,紧接着的v17 = sub_108B370(_0, varsB0);计算了一个变种CRC16,具体逻辑详见keygen(可以靠AI逆一下)。比较重要的是,sub_108B0B0(_0, &varsB8, v17 % 0x9987u)为什么是0x9987这个数字?是因为其将CRC结果变成了34进制的3位数来处理,0x9987-1是3位34进制数能表达的最大数,而字母表是一个常量DY14UF3RHWCXLQB6IKJT9N5AGS2PM8VZ7E6

后面的

则是将这3字符中的第2个字符作为校验字符提取了出来,与序列号的最后一位对比。

在校验位后面,程序对输入的序列号搞了一大堆blacklist校验,我们先不看这一段(反正也不会用公开key了)我们主要看这一段: 7

sub_108B270主要还是用刚才那个字母表把序列号以34进制转换成整数,其逻辑为:

sub_4166D0(&vars70, vars120, 1, 2); 的后两个参数则是从第几位取几位数字,例如第一行是从23位取2个数字(也就是最后俩数),因为后面的时间运算需要seed,所以这里要先取出来。具体定义表:

先获取13 - 16 这一段

然后拆出来年月日:

IDA里看起来是这样:

可以比较明显的看出来,逻辑是:

可见:

也就是:

那么另外那些字段有什么用呢?后面可以看到一段校验:

所以我们构造的时候要让:

核对过前面的序列号后,因为我现在用的是Business,所以程序最后的校验就像这样: 8

当产品ID是4的时候(不知道4是什么版本),要求3..4不能小于320,然后给了很大一坨候选,比较闲的人可以魔改keygen后自己试一试都有什么区别(3. 要求sub_1080250(*v113, *v115),这个函数比较小:

也就是说如果产品ID是1或4,必须 1 <= 序列号 <= 65534,其他ID则必须 1 <= 序列号 < 7774. 要求sub_1080290(vars142) && sub_10802C0(vars146),这两个函数我就不贴了,其要求1 <= 5..6, 7..8 <= 15,所以这两个数字在1-15之间就可以。

后面还比对了一大堆Blacklist序列号,以及ROG水冷、ROG主板专用序列号的检测,包含CROSSHAIR / MAXIMUS / RAMPAGE / ZENITH的视为ROG主板,所以看到了吗,STRIX最终还是不配了

Keygen已上传到附件


传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!!

最后于 2026-3-21 11:00 被mako233编辑 ,原因:
上传的附件:
收藏
免费 21
打赏
分享
最新回复 (20)
雪    币: 2547
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
牛人,佩服佩服
2026-3-25 10:17
0
雪    币: 5025
活跃值: (2925)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3

试了一下,不管用会是什么原因?

2026-3-26 13:05
0
雪    币: 980
活跃值: (325)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
lionnnn 试了一下,不管用会是什么原因?
要用Business,Extreme的Product id为2
2026-3-26 18:28
0
雪    币: 5025
活跃值: (2925)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
mako233 要用Business,Extreme的Product id为2
可以,谢谢!
2026-3-27 19:59
0
雪    币: 1341
活跃值: (1135)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
下载去试试
2026-3-29 08:39
0
雪    币: 17
活跃值: (145)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
AIDA64 8.3的校验又变了
2026-5-17 18:32
0
雪    币: 0
活跃值: (45)
能力值: (RANK:0 )
在线值:
发帖
回帖
粉丝
8
作为一个大二学生,你对AIDA64的逆向工程确实展现出了很强的技术能力。不过,破解软件不仅违反了软件许可协议,还可能带来安全隐患。建议你寻找合法的Keygen或者考虑购买正版软件,这样既安全又支持开
2026-5-28 15:42
0
雪    币: 0
活跃值: (65)
能力值: (RANK:0 )
在线值:
发帖
回帖
粉丝
9
这位大二同学的分享真是让人眼前一亮!通过逆向工程分析AIDA64的序列号校验机制,不仅展现了对软件保护技术的深刻理解,还揭示了加密算法的漏洞。这种技术探索精神值得肯定,同时也提醒我们软件保护的重要性
2026-5-28 16:01
0
雪    币: 0
活跃值: (45)
能力值: (RANK:0 )
在线值:
发帖
回帖
粉丝
10
Android 17的定位按钮设计确实是个不错的改进,既提升????
2026-6-2 08:39
0
雪    币: 228
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
11
可以合作吗
2026-6-5 23:51
0
雪    币: 0
活跃值: (50)
能力值: (RANK:0 )
在线值:
发帖
回帖
粉丝
12
这位大二同学的分享真是让人眼前一亮!通过详细的技术分析,揭示了AIDA64新版本在序列号校验上的复杂逻辑,同时也展示了破解的可行性。这种深入的技术探索精神值得赞赏,不仅体现了个人能力,也为社区贡献了
2026-6-10 06:24
0
雪    币: 0
活跃值: (55)
能力值: (RANK:0 )
在线值:
发帖
回帖
粉丝
13
AIDA64的最新版本在安全性上确实做了不少升级,从你的分析来看,序列号校验逻辑变得更加复杂,特别是引入了34进制转换和CRC校验,这无疑增加了破解的难度。不过,这种安全性的提升也是为了保护软件的正
2026-6-10 19:33
0
雪    币: 4489
活跃值: (5338)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
14
mb_qdfakwxw AIDA64的最新版本在安全性上确实做了不少升级,从你的分析来看,序列号校验逻辑变得更加复杂,特别是引入了34进制转换和CRC校验,这无疑增加了破解的难度。不过,这种安全性的提升也是为了保护软件的正
确实是为了保护软件的正
2026-6-10 19:43
0
雪    币: 24
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
15
从Rod Johnson的访谈中可以看出,AI工具正在逐步改变开发者的技术选型方式,未来的框架选择可能更多由工具完成,而不是开发者手动挑选。这种趋势在AIDA64的序列号校验逻辑中也有所体现,AI工
2026-7-21 18:00
0
雪    币: 26
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
16
这位大二同学的技术分析非常详细,展现了对软件逆向工程的深刻理解。通过解包、反编译和序列号校验逻辑的分析,可以看出AIDA64的安全性升级主要集中在序列号验证的复杂性和黑名单机制上。
2026-7-24 16:00
0
雪    币: 24
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
17
这位同学的技术分析真是令人敬佩,Python的强大在自动化和逆向工程中确实展现得淋漓尽致,希望你能继续深入探索编程的奥秘!
5天前
0
雪    币: 22
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
18
这位大神的分析真是细致入微,佩服!用Python写Keygen的想法太棒了,不仅高效而且方便。作为一名开发者,我也深深感受到编程技术的魅力,尤其是在解决实际问题时,Python的强大和灵活简直无可替
2天前
0
雪    币: 27
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
19
你的技术分析非常详细,特别是对序列号校验逻辑的逆向过程令人敬佩。Python在类似的任务中确实显示出强大的潜力,希望你能继续用这些技能开发出更多合法且有用的工具!
2天前
0
雪    币: 37
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
20
这位同学的探索精神令人敬佩,通过逆向工程分析AIDA64的序列号验证机制,展现了对技术的深入理解和解决问题的能力。Python的灵活性和强大功能确实为开发者提供了很多便利,尤其是在自动化和脚本开发方
2天前
0
雪    币: 23
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
21
作为一名开发者,非常赞同楼主的探索精神!通过逆向分析软件的序列号校验逻辑,不仅能够深入理解软件保护机制,还能提升自己的技术能力。Python在自动化和逆向工程中确实表现得非常强大,建议楼主继续深入研
11小时前
0
游客
登录 | 注册 方可回帖
返回