何为懒? 对于我来说 基本上一个版本如果好好的 我会用到烂为止都不会去更新。 再则只要不影响使用 我不会去优化到极致,除非我走心了。 所以今天的教学就以懒人的方式展示吧。自从习惯了mt,已经很久没用电脑进行反编译了。可是很多时候手机无法胜任,又不想用电脑,所以只好琢磨一些懒人的姿势。 今天要演示的软件是一款看剧app 【阿哥美剧】 这款软件有梆梆加固(网上脱壳教程很多) 这里不演示。 软件有不少广告(去除广告的方式也就那样) 这里也还是不演示。 此软件有会员制,看剧需要开通会员(搜索isvip赋值的事情) 这里依然也不演示。 当上面步骤都处理完成之后,却发现高清影片无法观看,看来仅仅本地赋值vip会员并不能破解高清影片呀。 所以今天要讲解的就是这里 把高清影片给弄出来。 首先先简单说明软件的功能,此app有2种影片模式,480p和1080p(会员),当完成赋值isvip后,480p影片是可以正常播放的,但1080p却显示如下。 从过往的破解经验中可以知道,肯定不是本地破解的问题了,所以猜测了软件有联网验证,当服务器判断为真实vip会员的时候,会返回高清影片数据,当不是真实会员的时候,就无法获取到影片数据而导致软件无法正常播放。 所以这时候就需要进行抓包把数据拦截下来看看,可是如下图所示,数据都被加密了。 从正常的逻辑上来说数据之间的调用食需要先进行解密后才能进行解析。然而我们需要的是解密后的明文已查看数据内容,并不需要加解密的过程。所以只需要把明文打印出来即可。从上图重可以知道加密数据的键名是encrypt_data,所以只需要搜索这键名即可定位到算法部分。 得出结果有3个,经过阅读代码定位到第三个类 这里使用mt的注入日志功能对此类的字符串进行打印。 这里选择播放扑克脸,这时候就可以到日志目录查看明文内容。由于输出日志繁多,我们需要进行搜索关键词进行定位,数据内容里的中文字会以Unicode方式展示,所以需要将扑克脸转成unicode内容以进行定位日志的位置 现在已经找到我们需要的内容了,现在把unicode内容转成中文吧。 那怎么补呢? 我们先来看看影片数据的赋值逻辑。 图中可以看到影片地址是在playpath的列表里,影片链接的键名是path和screen_path 我们先来在dex定位一下吧。就搜索screen_path吧(避免普遍的单词重复影响搜索结果) 可以看到代码是直接获取path的内容。 现在基本分析完毕了,可以进行破解思路整理了。所以这里先把逻辑理一遍。 从以上分析 可以得知 现在可以按分析逻辑去将1080p数据补全了。 很快就得到了好多结果,随便选一个吧 然后把这几条代码复制起来粘贴到path里。 2.480p和1080p的链接不一样的只是画质的数字,但是1080p是无网络返回数据的,所以我们得把480p的数据用到1080p里 就得把480p的地址留起来。 3.接下来就要用到1080p的数据里了,继续看图吧。 好了,完成了,进行测试吧,可以看见正常播放了。 今天的教学到这里,懒人技巧学会了吗? 那剩下得screen_path就让你们自己处理了 |
请登录后查看回复内容