吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 25081|回复: 328
上一主题 下一主题
收起左侧

[Android 原创] 《安卓逆向这档事》四、恭喜你获得广告&弹窗静默卡

    [复制链接]
跳转到指定楼层
楼主
正己 发表于 2022-11-1 17:42 回帖奖励
本帖最后由 正己 于 2023-10-10 18:47 编辑



一、课程目标


1.了解安卓四大组件、Activity生命周期
2.弹窗定位、去更新
3.广告分析与布局优化

二、工具


1.教程Demo(更新)
2.MT管理器/NP管理器
3.算法助手
4.雷电模拟器
5.开发助手

三、课程内容


1.广告类型

启动广告     弹窗&更新广告   横幅广告

2.安卓四大组件

组件 描述
Activity(活动) 在应用中的一个Activity可以用来表示一个界面,意思可以理解为“活动”,即一个活动开始,代表 Activity组件启动,活动结束,代表一个Activity的生命周期结束。一个Android应用必须通过Activity来运行和启动,Activity的生命周期交给系统统一管理。
Service(服务) Service它可以在后台执行长时间运行操作而没有用户界面的应用组件,不依赖任何用户界面,例如后台播放音乐,后台下载文件等。
Broadcast Receiver(广播接收器) 一个用于接收广播信息,并做出对应处理的组件。比如我们常见的系统广播:通知时区改变、电量低、用户改变了语言选项等。
Content Provider(内容提供者) 作为应用程序之间唯一的共享数据的途径,Content Provider主要的功能就是存储并检索数据以及向其他应用程序提供访问数据的接口。Android内置的许多数据都是使用Content Provider形式,供开发者调用的(如视频,音频,图片,通讯录等)

1.activity的切换

        <!---声明实现应用部分可视化界面的 Activity,必须使用 AndroidManifest 中的 <activity> 元素表示所有 Activity。系统不会识别和运行任何未进行声明的Activity。----->
        <activity  
            android:label="@string/app_name"  
            android:name="com.zj.wuaipojie.ui.MainActivity"  
            android:exported="true">  <!--当前Activity是否可以被另一个Application的组件启动:true允许被启动;false不允许被启动-->
            <!---指明这个activity可以以什么样的意图(intent)启动--->
            <intent-filter>  
                <!--表示activity作为一个什么动作启动,android.intent.action.MAIN表示作为主activity启动--->
                <action  
                    android:name="android.intent.action.MAIN" />  
                <!--这是action元素的额外类别信息,android.intent.category.LAUNCHER表示这个activity为当前应用程序优先级最高的Activity-->
                <category  
                    android:name="android.intent.category.LAUNCHER" />  
            </intent-filter>  
        </activity>  
        <activity  
            android:name="com.zj.wuaipojie.ui.ChallengeFirst" />
        <activity  
            android:name="com.zj.wuaipojie.ui.ChallengeFifth"  
            android:exported="true" />  
        <activity  
            android:name="com.zj.wuaipojie.ui.ChallengeFourth"  
            android:exported="true" />  
        <activity  
            android:name="com.zj.wuaipojie.ui.ChallengeThird"  
            android:exported="false" />  
        <activity  
            android:name="com.zj.wuaipojie.ui.ChallengeSecond"  
            android:exported="false" />  
        <activity  
            android:name="com.zj.wuaipojie.ui.AdActivity" />  

启动广告流程:
启动Activity->广告Activity->主页Activity

修改方法:
1.修改加载时间
2.Acitivity切换定位,修改Intent的Activity类名

        switch (position) {  
            case 0:  
                Intent intent = new Intent();  
                intent.setClass(it.getContext(), ChallengeFirst.class);  
                it.getContext().startActivity(intent);  
                return;  
            case 1:  
                Intent intent2 = new Intent();  
                intent2.setClass(it.getContext(), ChallengeSecond.class);  
                it.getContext().startActivity(intent2);  
                return;  
            case 2:  
                Intent intent3 = new Intent();  //new一个Intent,
                intent3.setClass(it.getContext(), AdActivity.class);  //传入要切换的Acitivity的类名
                it.getContext().startActivity(intent3);  //启动对应的Activity
                return;  
            case 3:  
                Intent intent4 = new Intent();  
                intent4.setClass(it.getContext(), ChallengeFourth.class);  
                it.getContext().startActivity(intent4);  
                return; 
            default:  
                return;  
        }

3.Activity生命周期

函数名称 描述
onCreate() 一个Activity启动后第一个被调用的函数,常用来在此方法中进行Activity的一些初始化操作。例如创建View,绑定数据,注册监听,加载参数等。
onStart() 当Activity显示在屏幕上时,此方法被调用但此时还无法进行与用户的交互操作。
onResume() 这个方法在onStart()之后调用,也就是在Activity准备好与用户进行交互的时候调用,此时的Activity一定位于Activity栈顶,处于运行状态。
onPause() 这个方法是在系统准备去启动或者恢复另外一个Activity的时候调用,通常在这个方法中执行一些释放资源的方法,以及保存一些关键数据。
onStop() 这个方法是在Activity完全不可见的时候调用的。
onDestroy() 这个方法在Activity销毁之前调用,之后Activity的状态为销毁状态。
onRestart() 当Activity从停止stop状态恢进入start状态时调用状态。

4.弹窗定位&堆栈分析

修改方法:
1.修改xml中的versiocode
2.Hook弹窗(推荐算法助手开启弹窗定位)
3.修改dex弹窗代码
4.抓包修改响应体(也可以路由器拦截)

5.布局优化

1.开发者助手抓布局
2.MT管理器xml搜索定位
3.修改xml代码

android:visibility="gone"

四、课后小作业


定位并去除作业demo首页中的弹窗
https://wwl.lanzoub.com/iVKJk0f0pi7g

作业反馈贴

五、答疑


待更新

六、视频及课件地址


百度云
阿里云
哔哩哔哩
PS:解压密码都是52pj,阿里云由于不能分享压缩包,所以下载exe文件,双击自解压

七、其他章节


《安卓逆向这档事》一、模拟器环境搭建
《安卓逆向这档事》二、初识APK文件结构、双开、汉化、基础修改
《安卓逆向这档事》三、初识smail,vip终结者

免费评分

参与人数 119威望 +1 吾爱币 +132 热心值 +106 收起 理由
lei5167 + 1 + 1 我很赞同!
G2ra1t + 1 + 1 谢谢@Thanks!
shengjiaohao + 1 + 1 我很赞同!
L10086 + 1 鼓励转贴优秀软件安全工具和文档!
tfqnzr + 1 很有帮助
mailnorth2154 + 1 + 1 我很赞同!
宅友 + 1 + 1 我很赞同!
liufenyun + 1 + 1 用心讨论,共获提升!
JustMoveForward + 1 谢谢@Thanks!
junjia215 + 1 + 1 用心讨论,共获提升!
miracle007 + 1 + 1 我很赞同!
NUAAMisaya + 1 用心讨论,共获提升!
zxhyliu + 1 + 1 我很赞同!
KentChen0126 + 1 + 1 教程很详细,跟着就能学会。
wch0532 + 1 + 1 谢谢@Thanks!
Golive180 + 1 + 1 我很赞同!
x-t + 1 + 1 我很赞同!
fox2320069 + 1 谢谢@Thanks!
sam喵喵 + 1 谢谢@Thanks!
hbzjhg + 1 我很赞同!
nimo + 1 + 1 谢谢@Thanks!
wuaihaizhan9527 + 1 + 1 谢谢@Thanks!
ltyz_feng + 1 + 1 谢谢@Thanks!
Xiaoshi541 + 1 收藏
a529 + 1 + 1 我很赞同!
mdeche101644 + 1 + 1 谢谢@Thanks!
VictoryK + 1 谢谢@Thanks!
talent136168 + 1 谢谢@Thanks!
jolin7714 + 1 + 1 谢谢@Thanks!
抱歉、 + 1 用心讨论,共获提升!
1qaz + 1 + 1 谢谢@Thanks!
nv2365 + 1 + 1 谢谢@Thanks!
SecuritySky + 1 + 1 谢谢@Thanks!
xspapdc + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
ruse + 1 我很赞同!
莫奇 + 1 + 1 太强了
flywin + 1 + 1 谢谢@Thanks!
jayfox + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
keit + 1 + 1 用心讨论,共获提升!
dadao815 + 1 + 1 用心讨论,共获提升!
Creams + 1 + 1 我很赞同!
不知者小白 + 1 + 1 谢谢@Thanks!
笙若 + 1 + 1 谢谢@Thanks!
615869600 + 1 + 1 我很赞同!
傻傻的小鸟 + 1 + 1 谢谢@Thanks!
vigour + 1 用心讨论,共获提升!
随风潜入夜者 + 1 我很赞同!
李佑辰 + 1 无法点击开始游戏
mhaitao + 1 + 1 我很赞同!
小菜鸟一枚 + 1 + 1 用心讨论,共获提升!
打不过就加入 + 1 + 1 谢谢@Thanks!
再见babay + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
SakuraYaaa + 1 + 1 谢谢@Thanks!
月天尊 + 1 + 1 谢谢@Thanks!
HUAJIEN + 1 + 1 谢谢@Thanks!
x289717013 + 1 + 1 热心回复!
crizquan + 1 + 1 用心讨论,共获提升!
小傲宇 + 1 + 1 谢谢@Thanks!
lowdie + 1 + 1 谢谢@Thanks!
allspark + 1 + 1 用心讨论,共获提升!
zwt168168168 + 1 谢谢@Thanks!
love008 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
sky0077 + 1 + 1 谢谢@Thanks!
jafck + 1 + 1 感谢楼主教程,连续观摩并操作了第三节第四节,总算是赶上了。
ldx129 + 1 + 1 我很赞同!
文鑫孤影130 + 1 + 1 谢谢@Thanks!
QueenRell + 3 + 1 用心讨论,共获提升!
lin2lin3lin5 + 1 + 1 我很赞同!
星辰丿 + 1 + 1 用心讨论,共获提升!
wm19881005 + 1 + 1 谢谢@Thanks!
AngMer + 1 + 1 学到了 学到了
dongyi945 + 1 + 1 谢谢@Thanks!
takklong + 1 + 1 我很赞同!
aromazhz + 1 谢谢@Thanks!
shagua + 1 + 1 一直在看大佬的教程,感谢!
yinianbingyan + 1 用心讨论,共获提升!
溜玩音乐 + 3 + 1 谢谢@Thanks!
yuanyxh + 1 + 1 热心回复!
zhangxu888 + 1 + 1 用心讨论,共获提升!
senlonly + 1 + 1 谢谢@Thanks!
haler.zhang + 1 + 1 热心回复!
寒狼 + 1 正常需要这个~把那些第三方视频app去掉广告。
zhyerh + 1 + 1 谢谢@Thanks!
kaixianxian + 1 + 1 谢谢@Thanks!
愚无尽 + 2 + 1 支持原创!
qact + 1 + 1 我很赞同!
juyiangel + 1 我很赞同!
luochunyan + 1 + 1 谢谢@Thanks!
CC520CC + 1 + 1 谢谢@Thanks!
疾风冲刺 + 1 + 1 用心讨论,共获提升!
object86 + 1 + 1 我很赞同!
weixu + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
wogeshange + 2 + 1 我很赞同!
momosys + 1 + 1 谢谢@Thanks!
双眼皮的微笑 + 2 + 1 必须支持,那么忙还更新 谢谢。
moonking8008 + 1 + 1 用心讨论,共获提升!
kosmos4134 + 1 + 1 谢谢@Thanks!
zw0476sky + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
lgc81034 + 1 谢谢@Thanks!
Schwarz + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

推荐
 楼主| 正己 发表于 2022-11-1 17:43 |楼主
前几天去社区当了好几天志愿者,不得不咕

免费评分

参与人数 2吾爱币 +2 热心值 +2 收起 理由
莫奇 + 1 + 1 用心讨论,共获提升!
凭吊理想 + 1 + 1 谢谢@Thanks!

查看全部评分

推荐
weixu 发表于 2022-11-4 16:50
本帖最后由 weixu 于 2022-11-4 16:53 编辑

作业:定位并去除作业demo首页中的弹窗。



使用开发助手以及开发者助手不能够抓取有效ID,所以根据图文提示搜索对应的文字,如“提示”,”定位这个弹窗并去除哦”,”前往论坛”。发现都可以搜索定位到。


进入代码发现有三个地方使用了show方法。
37行   invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;->show()Landroid/app/AlertDialog
77行   invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;->show()Landroid/app/AlertDialog;
117行  invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;->show()Landroid/app/AlertDialog;

使用NP管理器进行java分析,注释掉第117行show方法可以去掉这个弹窗。



顺利进到demo主页。

免费评分

参与人数 5吾爱币 +8 热心值 +4 收起 理由
冰冷的难过 + 1 + 1 用心讨论,共获提升!
zlyxt + 1 牛哇
莫奇 + 1 + 1 我很赞同!
trash + 1 + 1 原来这么简单我在搜索方法里搞了半天
正己 + 4 + 1 我很赞同!

查看全部评分

推荐
 楼主| 正己 发表于 2022-11-5 22:02 |楼主
传闻中的喜哥哥 发表于 2022-11-5 17:48
适合小白的教程  期待下节课讲一下某通vpm 据说是服务器了

不会讲这种东西,国内还讲这个,不要命了?

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
x-t + 1 + 1 我很赞同!

查看全部评分

推荐
 楼主| 正己 发表于 2022-11-13 08:40 |楼主
KHA 发表于 2022-11-13 03:45
在教学demo成功之后试了个软件,它是先弹个logo,然后弹广告再进入主界面,看记录有四个,主界面和logo都是 ...

他这个你可以用算法助手定位一下弹窗,另外这个是flutter开发的,很麻烦,我一般遇到都是垃圾桶
推荐
 楼主| 正己 发表于 2022-11-1 21:25 |楼主
pentest686 发表于 2022-11-1 19:22
算法助手有大佬分享下吗

课件里就有啊
推荐
吨吨吨吨 发表于 2022-11-1 17:45
正己 发表于 2022-11-1 17:43
前几天去社区当了好几天志愿者,不得不咕

感谢大佬,百忙之中出教程
推荐
oliverhzn 发表于 2022-11-13 15:01
已经一个多星期过去了,别鸽我们了
推荐
psk107520 发表于 2022-11-3 14:42
时间:2022-11-03 14:36:33

类名:android.app.AlertDialog

日志名称:Dialog弹窗


弹窗内容:提示

定位这个弹窗并去除哦

前往论坛



返回结果类型:void
返回结果值:void

调用堆栈:
        at LSPHooker_.show(Unknown Source:8)
        at android.app.AlertDialog$Builder.show(AlertDialog.java:1125)
        at np.&#1423;.&#1921;(Unknown Source:38)
        at com.zj.wuaipojie.ui.MainActivity.onCreate(Unknown Source:0)
        at android.app.Activity.performCreate(Activity.java:7144)
        at android.app.Activity.performCreate(Activity.java:7135)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1271)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2934)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3089)
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
        at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1819)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6730)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:860)


算法助手搞到这么多,不知道是哪个
第三行的那个onCreate方法,搜索打开看看也不像,能否给点思路,大佬

点评

就是在那个onCreate方法里,有一个弹窗的调用,注意看代码  详情 回复 发表于 2022-11-3 17:52
4#
bevirus 发表于 2022-11-1 17:43
感谢大佬分享,学习一下
5#
吨吨吨吨 发表于 2022-11-1 17:44
这次我是第一?
6#
凉白开9527 发表于 2022-11-1 17:50
学习了学习了  大佬
7#
lewin8 发表于 2022-11-1 17:58
终于更新了,占位置啦~~~
8#
marxJR 发表于 2022-11-1 17:59
学习了!!
9#
aazsjcl 发表于 2022-11-1 18:07
感谢大佬  支持一下
10#
hackweige 发表于 2022-11-1 18:19
学到东西,感谢大佬分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-4-29 02:02

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表