学这个起因是这样:我是小宽带公司的,经常有用户报故障说电视直播看不了,看着卡,然后每次都去抓包,找到IP调路由,麻烦死了.就想能不能去程序中拿到播放源,就挺方便.
于是按照 吾爱破解安卓逆向0基础入门教程学习,还特没耐心那种,2倍速,逮半截就开跑
学习经历大概是这样:
第一天看动态调试,搞不定,去看模拟器安装.然后继续动态调试. (软件名:看看TV)
第二天继续和动态较劲, 最后的结论-----模拟器跑不动,电脑换了好多台,不调试什么问题没有,一调试速度至少慢几百倍,本来1秒该出画面的,拉个屎出来都等不到画面
第三天,第四天jadx,挺好用,可惜基础太差,找到了解密的类和方法,找不到秘钥.
第五天,静态不动了,充电学习第二课,于是知道了有算法助手....
然后...真爽....我早干嘛去了...
HOOK 加密算法,搞定...
处于学习心态 HOOK 我之前找到的解密类,又搞定次...
HOOK真好
结论:HOOK是安卓的尽头...
然后到了今天要解决的app
image.png (36.92 KB, 下载次数: 0)
下载附件
2024-9-27 17:16 上传
开始不知道什么是加固,jadx看了个寂寞
在52里找到了BlackDex,没用.. 脱壳不是小白该干的事
先抓包,电视源的文件很好拿,http://file.91kds.cn/jm/listall-1725022260.zip 加了密的
要解密,肯定会操作文件,我能拿到解密后的文件也是好的啊,于是点了算法助手自带的文件监控,发现他先解压存储到文件,再删除那几个文件
image.png (247.49 KB, 下载次数: 0)
下载附件
2024-9-27 17:27 上传
方法名挺清楚的,然后我就试这HOOK com.kaixinhd.player.activity.StartActivity.initListData ,并且选上拦截执行
拦截后跑目录下找文件,果然在,搞定!
可是不完美,没拿到密码
然后hook com.kaixinhd.player.activity.StartActivity.unzipSource 发现参数只是路径
观察文件读写日志,发现并没有对listall-1725022260.zip 有读操作,只有删,
那么去hook 打开文件试试, 翻了半天找到了java.io.File.
image.png (81.84 KB, 下载次数: 0)
下载附件
2024-9-27 17:38 上传
image.png (268.82 KB, 下载次数: 0)
下载附件
2024-9-27 17:37 上传
果然找到了解密的方法
最后
image.png (236.35 KB, 下载次数: 0)
下载附件
2024-9-27 17:39 上传
hook真好用
插一句:我开始不知道自定义HOOK的参数是可以填*HOOK所有重载的,猜了半天参数类型和个数也是蠢到家了...
纯新手的体验,适合0基础的看看