深圳幻海软件技术有限公司 欢迎您!

手把手教你进行JS逆向并去除App开屏广告

2023-02-28

前言Hi,大家好,我是码农星期八,今天来搞点关于逆向相关的,如何去除app的开屏广告。搞逆向还是需要有一点Java和安卓的基础的,但是真没基础也没事,看热闹不闲事大,搞!本次测试的app是火柴人突击格斗.apk。网盘下载地址:复制链接:https://pan.baidu.com/s/1pAs-_DL

前言

Hi,大家好,我是码农星期八,今天来搞点关于逆向相关的,如何去除app的开屏广告。

搞逆向还是需要有一点Java和安卓的基础的,但是真没基础也没事,看热闹不闲事大,搞!

本次测试的app是火柴人突击格斗.apk。

网盘下载地址:

链接:https://pan.baidu.com/s/1pAs-_DLCNpmUSn4z2-c_xg 
提取码:mf2b
  • 1.
  • 2.

安装完毕后,打开游戏会先蹦出来一个广告!

哎,app熟悉的操作,这搞的,那就开始搞吧!!!

用到的工具

AndroidKiller、雷电模拟器。

知识补充

了解安卓开发的知道,AndroidManifest文件是配置文件。

像什么activity,广播,服务,权限等,都需要在这里面配置。

下面也标识出来了,主启动activity的特征是啥。

注:一个apk只能有一个主启动activity!

破解思路

1.app拖入AndroidKiller进行反编译

2.修改AndroidManifest.xml文件

通过知识补充我们知道,AndroidManifest里面配置了主启动activity是什么特征。

那我们来看一下这个火柴人app的主activity吧!

通过查看,可以发现主activity是com.mosads.adslib.Splash.MosSplashActivity,那该怎么证明呢?

可以通过cmd命令adb shell dumpsys window | findstr mCurrentFocus命令查看当前的activity验证。

但是这个app不太好验证,开屏广告蹦的有点快!

。。。

可以换个思路,看看广告之后是哪个activity,然后将它设置为主activity。

通过命令可以发现,主activity是org.cocos2dx.lua.AppActivity。

然后我们在AndroidManifest.xml中发现,它还真存在,但是它并不是主activity。

然后我们将他修改一下,将它设置成主activity,将原来的删除,进行Ctrl+s。

3.回编译

将原来的app卸载掉,安装回编译后的app,你就会发现,好了,广告没了!!!

人间正道

可能这时候你一看,wc,这也不难啊,基本会安卓的都能看懂,不就是利用的安卓的AndroidManifest.xml配置文件原理吗?

我行我也上,然后逮着其他大厂app一波操作,然后。。。反编译失败,哈哈哈!

这是因为一些app可能加壳了或者做了其他操作,所以导致反编译失败,不用担心,随着水平升级,都会解决的!

总结

根据我的猜测,如果能反编译并且回编译成功,80%的app都是可以通过修改AndroidManifest.xml文件来实现app开屏去广告的,并且操作不算太难!