某课抓包视频 安卓手机:黄鸟+某课app+VirtualXposed虚拟框架

情景:女友买的学习视频将在一个月后到期(到期后下载在本地也无法看),让我帮忙把视频下载下来,之前在钉钉抓过m3u8文件下载过视频切片合成后是一个完整视频,以为这次的任务非常简单~

然鹅,查看一下app信息
某课抓包视频 安卓手机:黄鸟+某课app+VirtualXposed虚拟框架_第1张图片

已经加固了,暂时不考虑脱壳编译

于是开始抓包,我的安卓手机没有root,在抓取某课app时由于 检测到代理导致某课app里面没网络,之前在玩安卓逆向的时候偶然发现

部分APP可以放在容器中,通过抓取容器获得运行APP的抓包数据
也就是用把 某课 安装在 VirtualXposed 里面,黄鸟抓取VirtualXposed

VirtualXposed链接:点我

注意:这个方法只适用部分app,有的安装后会闪退

抓包部分截图:
某课抓包视频 安卓手机:黄鸟+某课app+VirtualXposed虚拟框架_第2张图片
某课抓包视频 安卓手机:黄鸟+某课app+VirtualXposed虚拟框架_第3张图片

上面是抓到的m3u8信息,根据之前的到这一步应该是成功了,密钥和视频切片ts文件应该就可以合成完整视频

但是访问红色部分的key却是显示404,视频切片能下载但是无法解密
某课抓包视频 安卓手机:黄鸟+某课app+VirtualXposed虚拟框架_第4张图片
看到了一篇关于key被访问了一次就删除的博客,不得不让我猜想,是不是app客户端访问后拿下密钥文件,在app前端将下载的资源文件进行解析然后播放,既然访问了一次,我拿到的抓包数据也就是已经被访问过的了,在这里我已经将app的缓存目录看了下,乱码很多不知道密钥文件放在哪里,所以我将整个流程用python写下来了

某课抓包视频 安卓手机:黄鸟+某课app+VirtualXposed虚拟框架_第5张图片
现在写到 登录->获取用户信息及token->获取所有课程->某个课程课程->视频id 编码
今晚就到这里,明天再看,目前发现拿到m3u8的链接由

https://库课api/userid/x/video_id.m3u8
x位置不确定,后面的did不用携带也可以

真实地址:https://hls.videocc.net/9b52ce99c4/d/9b52ce99c4df4d856f4b770a2e8112ad_2.m3u8?did=1638152451432X1376979

明天会上代码以及接口,如果对于我的个人见解有更好的意见、看法,或者新思路请评论一起交流,以上

你可能感兴趣的:(笔记,python,软件框架,测试工具,android,其他)