Android APK 去广告
本篇博客目的
本篇内容针对于和我一样是Android逆向未入门初学者;若有建议或者博客中有错误的地方请留下你的评论。
能获得的知识内容:抓包、代码关键处定位
首先来了解去广告的原理:定位到程序加载广告链接的地方,修改smali代码让链接地址返回空,然后进行重打包安装。其中最主要的地方就是要找到代码的关键位置。
关键位置的寻找
- 首先想到广告是一个链接地址,那么久自然的想到要抓包分析
- 再根据抓包的结果搜索关键字段,迅速定位到关键代码
- 修改关键代码、重打包、安装、验证去除广告
开始抓包分析
-
安装Charles抓包软件,把测试机的网络代理设置为电脑的IP(注意:测试机和电脑必须在同一个网段下)。
-
安装破解程序点击视频播放,在Charles中可看到抓包信息。
分析发现http://de.as.****.com网址比较可疑,我们把这个网址重定向到另一个地方,在Charles中选中网址——>右键——>MapLocal——>LocalPath选择一个Txt文件(选择什么都可以)。
重新点击视频你会发现广告去除了。好,现在我们去修改Smali源码,给它永久去广告。
3.打开AndroidKill,把APK文件拖入反编译。搜索关键字http://de.as.****.com然后替换为空就ok啦!!!
通过MapLocation确定是fives.l.**.com这个广告网址。
但是接下来在Androidkill中并没有搜索到这个广告地址关键字那接下来怎么办呢?
看看有没有其它关键字或者直接分析Smali代码了。不卖关子了,点击抓包地址前面的“+”,这里有一个关键字的地方"livemsg";
这是用Jeb打开,搜索"livemsg"....
看这里它进行了网址的重组,难怪搜不到了。我们来想一下这里是不是可以清空,之后程序得不了完整的地址广告就去除了呢?尝试一下。
(哭)然后是我们太天真,不行还是有广告,说明它在别的地方也有网址拼凑。接着往下分析......
确定就在这个地方了,这样大大减小了分析要分析的地方,接着往下走......
最后经过分析这儿while循环中的add()方法是拼凑网址的地方,那么让程序不运行add(),那么APP返回的网址就为空了,达到了我们的目的。那么来尝试一下。
编译——>签名——>安装——>广告去除成功。
/////撒花////撒花//////