酷狗9.1.0音乐外链key算法逆向1
本帖最后由 全国统考第一 于 2018-12-2 08:17 编辑最近在写一个仿酷狗的项目,获取mp3文件的外链地址是最核心的部分(得到key之后就可以下载和试听所有的收费音乐哦),可是key字段被加密了。接下来我们来看看怎么逆向key算法吧
用android killer反编译酷狗app
以前的key算法是md5(hash+"kgcloudv2"),但是现在用这个算法发现是错误的。我们可以继续搜索"kgcloudv2"
发现了4个搜索结果,点击第一个查看
这里翻译成java代码就是new ba().a(hash+"kgcloudv2"),跟进去ba看看
发现这只是个普通的md5算法
那么问题来了,这不就是以前的算法吗,并没有用啊
别急,我们继续查看其它的"kgcloudv2"搜索结果,发现只有第二个函数的构造后面多了几个内容
细心的朋友可能发现了,这里多了v1,v4,v6,这个很可能就是新的key算法,我们到上面看看这3个东西到底是什么
v1就是定义的常量0x3ed,十进制是1500
v6是com/kugou/common/userinfo/entity/c里的变量a,跟进去发现就是0
v4调用了com/kugou/common/utils/br.j(context)
j中调用了l(context),然后把l(context)返回的结果作为参数调用com/kugou/common/utils/bq.k(string)
l中调用了com/kugou/android/support/dexfail/d.d(context),跟进发现这是一个获取设备id和网络地址的函数,因此推断key算法和设备码有关
(楼主改变了虚拟机的设备id,然后重新抓包同一首歌曲,发现key果然发生了变化)
再来看k(string)函数
这个就是最后的算法了,里面没有再调用其他函数,只要计算这个算法就能得到key
到此,key算法的逆向分析已经完成,由于时间有限,下次有空我再写一个key算法的代码实现 大馒头123 发表于 2018-12-2 06:16
酷狗MP3还是可以破解的 但是MV一直的个复杂的破解工程啊
mv没有试过,应该都是一个原理吧,获取到key就行了 厉害୧(๑•̀◡•́๑)૭ 大佬 哈哈哈,沙发偶坐了! 好厉害( _) 酷狗MP3还是可以破解的 但是MV一直的个复杂的破解工程啊 下载看看 小白还是一脸懵逼的 看不懂膜拜大神吧 高深高深学习中 厉害了,赞一个 学习了,我也去搞搞,谢谢分享!