前两天历经千辛万苦,终于完成了某酷的ckey逆向,在此做个学习记录,以免后期再次忘干净,哈哈。
1.定位生成ckey的函数
根据阅读其他博主博文和跟踪堆栈,ckey为localStorage里面YK_PLAYER_CKEY的值,该值每次刷新就会变化,如下图:
![]()
接下来,通过搜索发现YK_PLAYER_CKEY值为setLocalKey函数内部,通过调用getUab函数生成,通过跟踪getUab函数,最终确定为e(1, o)生成,通过控制台调用结果如下图:

将整个js文件复制下来,放在本地。
2.本地生成ckey
这一步卡了我一天时间,通过搜索其他博主博文(没有具体的,都是各看一点,比较有参考意义的链接:Windows下Node.js安装Canvas插件-优快云博客)+AI搜索确定:
2.1.首先要下载并配置GTK2至系统环境变量(最好放C盘根目录下,名字就叫GTK,不然后面配置很麻烦),GTK3里面缺文件,npm安装canvas时会报错,2不缺,需要的可以自行下载,链接取自引用博文,如下:
http://ftp.gnome.org/pub/GNOME/binaries/win64/gtk+/2.22/gtk+-bundle_2.22.1-20101229_win64.zip
http://ftp.gnome.org/pub/GNOME/binaries/win64/gtk+/2.22/gtk+-bundle_2.22.1-20101229_win64.zip2.2.其次安装nodejs v20.19.4(LTS),老版本兼容性好,需要的可以自行下载,链接如下(默认都是x64,需要x86自行搜索下载。):https://nodejs.org/dist/v20.19.4/node-v20.19.4-x64.msi
https://nodejs.org/dist/v20.19.4/node-v20.19.4-x64.msi2.3.安装完成后输入以下命令安装windows-build-tools(我是自行安装,没有成功截图):
npm install --global --production windows-build-tools
如果提示失败,则输入以下地址自行下载安装:
https://aka.ms/vs/17/release/vs_BuildTools.exe
https://aka.ms/vs/17/release/vs_BuildTools.exe安装完成后勾选(这里已经安装完了,所以没有勾选):

2.4.windows-build-tools安装完成后,开始安装node-gyp,并配置GTK,命令如下:
npm install -g node-gyp
node-gyp rebuild --GTK_Root=C:\GTK
安装node-gyp,忘记是哪篇博文说的了,canvas需要C编译,而nodejs通过node-gyp可辅助编译C。
2.5.以上配置完毕后,就可以通过以下命令安装jsdom和canvas了:
npm install jsdom canvas
安装期间如果python没报错就可以,报错就需要更换2.7.5版本,老版本兼容性好,需要的可以自行下载,链接如下(默认都是x64,需要x86自行搜索下载。):https://www.python.org/ftp/python/2.7.5/python-2.7.5.amd64.msi
https://www.python.org/ftp/python/2.7.5/python-2.7.5.amd64.msi2.6.最后一步,补环境,这个我是通过AI补的,没啥好说的,然后就是通过nodejs生成ckey了,如下图:

3.解析的话也没啥好说的,把ckey带入就好了,如下图:

好了,就这么多,有疑问的小伙伴可以留言探讨。
90

被折叠的 条评论
为什么被折叠?



