八、API破解 – UNI'S ON AIR资源提取逆向全记录

注意:文章内容仅供学习和交流逆向经验使用,严禁将本文成果用于贩售资源、制作外挂等侵权违法行为。   利用之前文章的方法以及可以无损提取出游戏的Live视频了,不过还有两个问题。   一是只有第一次打开歌曲的时候才会从网络上下载,之后再打开同样的歌曲就直接从本地缓存加载内容,没有网络传输了。因此要想抓到包只能第一次打开歌曲的时候抓取,忘记抓包就只能等下次游戏更新了。   二是歌曲需要一定的等级才能解锁,而要想升级只能花时间玩游戏,我实在没那么多时间呀。游戏突然宣布要更新添加新的歌曲了,然而我之前的 …

六、获取密钥 – UNI'S ON AIR资源提取逆向全记录

  之前的文章中讲了那么多,终于要说到获取密钥了。看了看perfare大佬和Headcrabbed大佬的博客,他们的方法要么是插桩改包,要么是IDA动态调试打断点。这对于手上Android设备仅有一台没有root的Lenovo Z5的我来说太过麻烦了,而且我也不怎么会。主要还是我觉得这破联想手机root起来简直太麻烦了,都没有可以一键root的软件,以后还是买主流Android机型吧。   前面说了在libil2cpp.so以及global-metadata.dat中没有找到任何疑似该密钥的字符 …

五、核心汇编 – UNI'S ON AIR资源提取逆向全记录

  前一篇文章中我确认了游戏数据包中的.usme文件就是CRIWARE的usm视频格式文件。这说明加解密部分并不是游戏开发者自己完成的,而应该是CRIWARE Unity插件中自带的,那么找到对应的密钥应该就可以直接利用2ch帖子中的工具CRID(.usm)分離ツール v1.01进行视频的解密和转换。 0x01 libil2cpp.so   粗略看一下dump.cs可以发现,UNI'S ON AIR中有两种播放视频的组件,一种是UnityEngine自带的VideoPlayer类,另一种就是CR …

四、Unity逆向 – UNI'S ON AIR资源提取逆向全记录

  上篇文章最后说道,如果能从正面开发的过程去分析软件,那逆向的过程会容易很多。我之前已经确认了UNI'S ON AIR这个游戏是由Unity3d开发的,那么了解Unity的源代码和最终编译目标文件的对应关系就很重要了。这个过程中『unity游戏生成与修改so文件教程』这个帖子给了我非常大的帮助,参照这个教程我开始了整个过程中最核心的逆向分析。 0x01 编译过程分析   由于之前有过Cocos的开发经验,因此对于Unity是怎么样一个流程我心里面是有数的,主要一大不同是Cocos采用JavaS …

三、APK分析 – UNI'S ON AIR资源提取逆向全记录

  看到SNS上一堆人都通过各种各样的方法获取了Live视频,我也下决心一定要把这些视频成功提取出来。为此,我仔细读了Headcrabbed大佬的博客『CGSS 核心反向过程实录』,它对我的帮助很大,不过也有一些不完美的地方,在后面的文章中会详细提到。另外基于我在『【ムービー・画像】吸い出そう 5【音声・BGM】』中找到的.usm转换工具,我极怀疑需要做的仅仅只是在软件包中找到这个密钥,然后剩下的直接扔给现成的工具转换就好。说不定这也不是一件难事,那么就先反编译试一试。 0x01 获取软件包   …

一、抓包分析 – UNI'S ON AIR资源提取逆向全记录

  作为我第一次成功逆向的经历,当我看到密钥的那一刻简直激动不已。前前后后花了半个月时间,虽然绕了一大圈弯路最后才发现原来是那么简单,但是却从整个过程中学习到了非常多的东西,毕竟这是自己第一次成功的逆向经历。为了防止时间久了忘记细节,以及给其他有兴趣的人一个参考,于是用几篇文章详细记录下逆向的过程,希望能对后来者有所帮助。 0x01 起因   事情的起因是这样的,欅坂出了一个音乐手游UNI'S ON AIR,里面的游戏背景都是先前未公开的Live片段而且其他地方获取不到。那肯定是要想办法把这些片 …