手把手教你進行JS逆向并去除App開屏廣告
前言
Hi,大家好,我是碼農星期八,今天來搞點關于逆向相關的,如何去除app的開屏廣告。
搞逆向還是需要有一點Java和安卓的基礎的,但是真沒基礎也沒事,看熱鬧不閑事大,搞!
本次測試的app是火柴人突擊格斗.apk。
網盤下載地址:
鏈接:https://pan.baidu.com/s/1pAs-_DLCNpmUSn4z2-c_xg
提取碼:mf2b
安裝完畢后,打開游戲會先蹦出來一個廣告!
哎,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開屏去廣告的,并且操作不算太難!