惜颜 发表于 2019-11-19 02:20

SublimeText3 插件 DoxyDoxygen分析

本帖最后由 惜颜 于 2019-11-19 02:22 编辑

双十一买的SN750到了重做WTG,安装SublimeText3的插件
唯独DoxyDoxygen这一个要收费 (其实不注册也可以正常使用,但有时弹窗就不爽了)

找到安装路径Sublime Text 3\Installed Packages

解包DoxyDoxygen.sublime-package,发现第一级目录下只有一个Doxy.py文件



打开搜索license可以发现一个has_license调用,但是找不到定义的位置


再找下一级目录doxy_libs
发现全是pyc字节码,用uncompyle6全部反编译
这里不得不说Win环境下运行uncompyle6 -o . *.pyc无法找到文件
还好用Win10的linux子系统解决了这个问题

Ctrl+Shift+F文件搜索

可以找到定义的位置

尝试修改为直接返回True,然后打包替换,不过失败了,应该是有验证的


懒得找,直接看计算部分

关键点

set_license->_is_valid_key(self, key)->chksum(key[:-2]) % 256 == int(key[-2:], 16)

Copy计算部分代码直接穷举


运行得到
C1000000004E, 与上次间隔78
C1000000014F, 与上次间隔257
C10000000250, 与上次间隔257
C10000000351, 与上次间隔257
C10000000452, 与上次间隔257
C10000000553, 与上次间隔257
C10000000654, 与上次间隔257
C10000000755, 与上次间隔257
C10000000856, 与上次间隔257
C10000000957, 与上次间隔257
C10000000A5F, 与上次间隔264
C10000000B60, 与上次间隔257
C10000000C61, 与上次间隔257
C10000000D62, 与上次间隔257
C10000000E63, 与上次间隔257
C10000000F64, 与上次间隔257
C1000000106D, 与上次间隔265
C1000000116E, 与上次间隔257
C1000000126F, 与上次间隔257
C10000001370, 与上次间隔257
共计算 4977 次

随便找一个输入直接注册成功


没什么难度,因为有个对256取余,间隔257不难理解;
唯一不解的是为什么有的会多好几次计算

第一次玩python,献丑了:lol

ixsec 发表于 2019-11-19 10:02

楼主厉害 666
已经把源码放出来了~~
{:1_918:}大佬勿怪~~
https://www.52pojie.cn/thread-1058163-1-1.html

惜颜 发表于 2019-11-19 09:58

MatthewLee 发表于 2019-11-19 09:11
学习了Python初学者前来观摩但是有点看不懂啊。。。。

也是第一次搞,那个KeyGen边百度边写出来的:lol

VanRitzOwen 发表于 2019-11-19 04:01

可以呀,很不错的一次经历

rose520rain 发表于 2019-11-19 06:11

好厉害,看好你哦!

春雨忆江南 发表于 2019-11-19 06:24

厉害厉害

WiterLii 发表于 2019-11-19 07:23

爱琢磨才会赢

supnet 发表于 2019-11-19 07:49

谢谢分享

bdrdc 发表于 2019-11-19 07:59

这个不错,好好研究研究.......

setycyas 发表于 2019-11-19 08:21

我太弱了,原来python也有反编译的...

单曲循环lee 发表于 2019-11-19 08:53

SN750好评

yyjpcx 发表于 2019-11-19 08:55

期待楼主的动画   应该很精彩
页: [1] 2 3
查看完整版本: SublimeText3 插件 DoxyDoxygen分析