水木杉 发表于 2020-12-5 14:35

破解一款学习软件的快进功能

    近日参加一个培训,被要求8号前刷完100课时的在线课程,第一次看不能快进,还会有摄像头抓怕你进行人脸识别,识别通过才能继续观看。看完一次后再去看就能拖动进度条了,于是我就想试试破解他的快进限制功能(不然刷要刷不完了。。。)。
    1、用MT管理器查看发现没加固,nice!



    2、用MT的Activity记录功能找到视频界面的Activity



    3、用dex2jar将classes.dex反编译,并用jd-gui.exe查看,(我用AndroidKiller反编译失败了,不知道是不是配置有问题)发现有一个VideoDkDone和一个VideoDkUnDone,很显然一个是看完一遍的,一个是没看完一遍的,这样只要把两个相互对比就会轻松很多。

   
    4、对比之下,我找到了initView函数的不同,VideoDkUnDone里面缺少控制视频播放的代码,于是我将VideoDkDone中的initView替换过去,结果出错了。
         

    5、再仔细找了下,我在VideoDkUnDone中发现了setVideo这个函数,原来是把播放控制放在这里了,里面有一个setCanChangePosition(这名字起的真直观)和setGestureEnable设置为true就可以快进了。
         

    6、现在能够向右滑动快进,但是一次快进的不多,而且还是不能直接拖动进度条,随后我看到了skipPositionWhenPlay这个函数似乎与改变观看进度有关,于是我将后面那个1000的参数换成了10000,使用后发现这个函数是读取你的历史观看时间,然后跳到那个时间,我给他增大10倍后每次重新进去就会把我原来的观看时间扩大10倍,所以只要进出两次就能耍完这个视频了,直接跳过他中间的人脸识别了。就是不知道他后台是怎么记录的,会不会给查出来。。。



whsdaks 发表于 2020-12-5 21:06

三滑稽甲苯 发表于 2020-12-5 17:48
chrome电脑上可以直接拖进度条,还有专门的油猴脚本
使用kiwi browser可以实现在手机上安装油猴脚本

你说的我都懂,问题是青年大学习是微信公众号里的啊,怎么到浏览器播放...

xmjzxy 发表于 2020-12-5 15:45

我也是一个不爱学习的人

kerlin11231 发表于 2020-12-5 16:05

学习一下,希望以后自己能破Q年大学习………………

DPlus 发表于 2020-12-5 15:01

希望出一个“q年大学习”的快进功能

Dlan 发表于 2020-12-5 15:11

不错不错

wangkun293 发表于 2020-12-5 15:13

不错不错

kraist 发表于 2020-12-5 15:30

6666.。。

roczyl 发表于 2020-12-5 15:35

真不错,分析一下传送的数据就更好了。

First丶云心 发表于 2020-12-5 15:51

此花亭 发表于 2020-12-5 15:53

谢谢大佬的教程
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 破解一款学习软件的快进功能