title: 利用xposed逆向某4k视频软件付费服务
date: 2019-09-04 13:39:57
tags: 安卓逆向
什么是Xposed
Xposed是一款特殊的Android应用,通过替换system\bin\下面的的app_process等文件来控制zygote进程,进而实现控制手机上所有的app进程;缺点就是不能hook应用的so中的函数。众所周知的微x模块,自动抢红包等都是基于xposed进行开发的,只能说xposed实在是一款神器。
关于xposed的安装,这里不多做赘述。安装xposed需要root权限,耐心。安装xposed可能导致手机变砖,所以最好先在安卓模拟器上用熟练了,再在手机上玩,多逛逛自己手机型号的手机论坛,里面都有教程。
<!-- more -->
破解需要的工具
1.Android killer 一款封装好的安卓逆向工具,仅支持win,如果你是mac,可以安装虚拟机解决。
2.luyten , 和jd_gui 类似,属于加强版,因为有时候由于java源码过多,导致jd_gui无法打开,报错// INTERNAL ERROR,可以用这个软件解决
3、fdex2 ,脱壳神器,可能最新的加固平台无法脱壳,但是至少市面上的一些腾讯加固还是可以搞定的,使用方法可以自行百度
4.Xposed,神器,今天的主角。
5、dex2jar.bat dex2smali.bat 批量脚本处理工具。将dex文件转化为java源码 或者smali源码
6 、开发者助手。一款辅助我们开发者查看布局的工具,可以查看布局id,页面信息,以及抓包等功能
7、fiddler或者Charles ,抓包要用,一款app能不能破解,首先要看他们接口有没有进行验证,很可惜,这款应用没有接口验证
前期准备工作:
1.安卓模拟器或者一台root的手机,安装xposed框架。安装教程不再赘述,可具体百度自己的手机型号+Xposed安装教程
2.下载fdex2 软件并在xposed软件中激活,如图,记得重启手机
-
下载某4k视频软件并将软件拖入AndroidKiller中,如图
正式破解工作
工欲善其事必先利其器,xposed+fdex2
上图我们可以看到这款app的代码结构,不幸的是,代码我们都看不到源码,是灰色的,原因就是这款app腾讯加固了,我们并不能看到里面真正的源码,但是幸运的是腾讯的加固目前还是可以破解掉的,用到的就是上文提到的fdex2.下载fdex2,在xposed中勾选,重启手机,选中我们的目标app,会提示如下
接下来,我们再点开我们的目标app。等几秒钟之后,就可以再data/data/com.evo.watchbar.tv目录下看到我们需要的dex文件了
这里面通常只有一个dex文件使我们需要的,我们可能需要一一排查,排查的准则就是找最接近包大小的dex文件,这里就不卖关子了,其中 com.evo.watchbar.tv9587700 就是我们需要的dex文件。其他的要么是腾讯加固的dex文件,要么是一些google包啥的。
将com.evo.watchbar.tv9587700.dex 文件拖入我们的d2j-dex2jar.bat 批处理文件上,会自动将dex文件转化为java源码,生成.jar 文件,如图所示
然后用luyten打开该jar文件,java源码就跃然纸上了。不过java源码知识辅助我们理解代码逻辑的,如果我们需要更改代码逻辑是需要懂一些smali语言的,直接更改java代码是不会生效的,关于修改smali代码,可以看我的另一篇文章[记录一次xx应用的伪破解(一)(去广告 增加vip功能)],这期我们就不改smali代码了,用xposed直接hook。
开发者的好帮手:开发者助手
源码有了,要破解的app也有了,接下来就是抽丝剥茧去hook应用了,不过我们不能像无头苍蝇一样乱撞吧?所以这时候我们就用到了另一款app 开发者助手,这个软件并不需要root,当然root了最好,可以获得更好的功能。
打开开发者助手,允许开发者需要的所有权限,然后打开目标app,这个时候,再点击屏幕边缘的这个图标
整个页面的布局层次结构就展露无遗了
再点击界面资源分析,查看我们的播放按钮
啧啧啧,id也拿到了,我们知道,控件的id是唯一的,所以,拿到这个,说明我们离成功近了一大步,剩下的工作就是繁琐的看smali代码分析逻辑了,没有什么技术含量,纯细心和逻辑活。
要想破解一款app,首先要理清楚它的操作逻辑,我们点击付费按钮看一下
可以看到,首先第一步是需要登录的,所以我们的第一步目标有了,hook掉登录功能
如果我们登录了之后,是什么反应呢?
会提示会员免费看或者直接购买,让我花钱购买是不可能的,这辈子都不可能,所以第二部hook目标有了,hook掉他的VIP功能
所以,接下来的主要任务就是在VRMovieDetail里面,进行hook了。
核心逻辑将在第二篇进行讲述