首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >HijackActivity android activity界面劫持

HijackActivity android activity界面劫持

作者头像
tea9
发布于 2022-09-08 04:17:49
发布于 2022-09-08 04:17:49
1.2K00
代码可运行
举报
文章被收录于专栏:tea9的博客tea9的博客
运行总次数:0
代码可运行

activity劫持 HackAndroid

我写了一个项目写的不太好 https://github.com/tea9/HijackActivity 使用: 修改HijackingService.java文件,mSadStories.put(“com.xx.xx”, AlipayStoryActivity.class); 修改com.xx.xx为你要劫持应用的包名。 需要在android4.4设备上使用生效。 先启动HijackActivity然后在启动劫持的app

界面劫持的原理: 开启一个服务定时去检索app,如果是被劫持的app就启动一个钓鱼界面,优化就是启动一个广播在开机启动时就启动HijackActivity进行劫持,更优化的是隐藏app的图标,这样就在手机启动就会进行劫持的一个服务,且用户几乎无感。

防范: 这是系统漏洞,目前的防护就是app切换了给用户进行提示提醒用户。建议app最低支持版本到android5.0.

隐藏app图标参考代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<activity android:name=".LaunchActivity">
     <intent-filter>
           <action android:name="android.intent.action.MAIN" />
           <data android:host="LaunchActivity" android:scheme="xx.xx.xx" tools:ignore="AppLinkUrlError"/>
           <category android:name="android.intent.category.LAUNCHER" />
     </intent-filter>
</activity>

在manifest的入口activity里面intent-filter中设置元素。 注:必须添加tools:ignore=”AppLinkUrlError”,否则会出错,host值为自定义,scheme值为包名

dada配置参考:http://www.cnblogs.com/shenhao/p/5947284.html

通过另一个APP隐式启动

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Intent intent = new Intent();
ComponentName cn = new ComponentName("xx.xx.xx", "xx.xx.xx.LaunchActivity");
intent.setComponent(cn);
Uri uri = Uri.parse("xx.xx.xx.LaunchActivity");
intent.setData(uri);
startActivity(intent);

Android之Activity界面劫持反劫持 安卓Activity劫持与反劫持 Android-隐藏app图标以及隐式启动

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
027android初级篇之Intent相关介绍
在Android中提供了Intent机制来协助Android应用间,组件间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。
上善若水.夏
2018/09/28
4870
Android Studio 深入研究 之 ✨ -基础知识学习历程(进阶)
恩呢,这就是5.0给我们提供的新的方法,要用它,先要在配置文件中为我们的Activity设置一个属性:
呆呆敲代码的小Y
2021/08/12
4960
Android 必知必会 - 使用 Intent 打开第三方应用及验证可用性
一个普通的应用默认会有一个入口 Activity,它在 AndroidManifest.xml 中一般这样写:
他叫自己MR.张
2019/07/01
4.6K0
【安卓安全】Intent 攻击面(上)
Activity 是应用程序的主要入口,针对其攻击首先需要知道哪些 Activity 是可以交互的,可以通过查看 AndroidManifest.xml 文件找到带有 android:exported="true" 属性的 <activity>
yichen
2025/06/30
690
【安卓安全】Intent 攻击面(上)
8-25 Android 学习ing
1>intent.setClass(this,OtherActivity.class)
2018/09/03
4800
App相互唤醒的几种方式
下文皆使用Client表示操作的App,Server表示需要被唤起的远端App,Server的包名为“com.jxx.server”
Android技术干货分享
2019/03/27
2.1K1
App相互唤醒的几种方式
【Android】Android基础--显式Intent和隐式Intent
当我们用一个显式 Intent 去启动组件时,Android 会根据 Intent 对象所提供的 component name 直接找到要启动的组件,当我们用一个隐式的 Intent 去启动组件时,Android 系统就无法直接知道要启动的组件名称了。
人不走空
2024/07/13
5450
手撸Router——解决跨模块下的页面跳转
正是由于将项目模块化拆分,各模块之间没有任何依赖关系,也互相不可见,那么从A模块的a界面跳转到B模块的b界面该怎么办呢?
蜻蜓队长
2018/08/03
1.5K0
手撸Router——解决跨模块下的页面跳转
Android 在本地应用 启动抖音(进入主页)
上才艺 我用的是mumu模拟器,每次打开抖音的时候 都会提示你版本的问题,大家可以忽略.
全栈程序员站长
2021/04/07
2.2K0
重识Activity——生命周期详解
1. 单个Activity生命周期 *  显示状态——onCreate()、onStart()、onResume() * 隐藏状态——onPause():部分可见、onStop():隐藏,黑屏状态 * 销毁——onDestroy() 2. 多个Activity生命周期交互 * 第一个Activity启动——依次调用onCreate()、onStart()、onResume () * 第二个Activity启动——第一个activity调用onPause (),第二个activity调用onCreate ()、onStart()、onResume(),第一个Activity调用onStop() * 再次返回第一个activity—— 第二个Activity调用onPause ()、第一个Activity调用onRestart():不用再onCreate()、onStart()、onResume ();此时第二个Activity调用onStop()、onDestroy(),此时第二个Activity生命周期结束 3. Activity生命周期交互设计思想 * 例子:当处在音乐播放页面时,此时来电,音乐activity调用onPause (),重写该方法暂停音乐,否则会影响通话; * 另一方面,音乐activity调用onPause ()后,紧接着调用onStop(),电话结束后,再次回到音乐播放页面就是黑屏了 4. 横竖屏切换 * 切换时相当于创建了一个新的Activity,原有的activity生命周期结束 * 切换时,可以通过onSaveInstanceState 方法中Bundle对象保存切换前activity信息,然后在onCreate()的Bundle对象获取 5. Activity生命周期的应用 * onPause ()——添加暂停该页面的其他操作 * onResume ()——当返回页面时,添加恢复原有页面的操作 * onDestroy()——结束该页面时,释放该页面其他操作的资源 6. 启动Activity * 直接启动 *  * 只通过Intent——Intent intent=new Intent(one.this, two.class); * 辅以Component——Intent intent=new Intent();ComponentName component=new ComponentName(one.this, two.class);  intent.setComponent(component );startActivity(intent); * 匿名启动 *  * 在AndroidManifest中对应的activity添加<intent-filter>——》<action android :name=“1”>——》intent.setAction("1");——》startActivity(intent); * 启动系统常见Activity *  * 启动浏览器——intent.setAction(Intent.ACTION_VIEW);Uri url=Uri.parse("http://www.imooc.com"); intent.setData(url);startActivity(intent); * 启动相册——intent.setAction(Intent.ACTION_GET_CONTENT);intent.setType(“image/*”);startActivity(intent); * 发送短信——intent.setAction(Intent.ACTION_SEND);intent.setType(“text/plain”);intent.putExtra(Intent.EXTRA_TEXT,"hello !");startActivity(intent); * 打开电话——intent.setAction(Intent.ACTION_VIEW );Uri url=Uri.parse("tel:123456"); intent.setData(url); startActivity(intent); * 其它页面可以通过Android文档查看Intent
城市中的游牧民族
2019/02/21
4640
Android技能树 — Activity小结
这次是讲Activity的相关内容。还是老样子,先上脑图,然后具体一块块详细说明。
青蛙要fly
2018/08/29
5430
Android技能树 — Activity小结
Intent的七大属性, ComponentName、  Action 、 Category 、 Data  、Type、  Extra  、Flags。
Action作为标识符,代表一个Intent,当一个Activity需要外部协助处理时,就会发出一个Intent,如果一个程序能完成相应功能,只要在intent-filter加上这个这个intent就可以了。 Data保存需要传递的数据格式,比如:tel:// Extras保存需要传递的额外数据。 Category表示Intent的种类,从android上启动Activity有多种方式,比如 程序列表、桌面图标、点击Home激活的桌面等等,Category则用来标识这些Activity的图标会出现在哪些启动的上下文环境里。
zhangjiqun
2024/12/16
2430
Android开发学习笔记(一)按钮的点击相应
参考学习视频:Android安卓开发30小时从零搞定百度地图(2020安卓开发全套教程)
zstar
2022/06/14
6000
Android拾萃- Activity的生命周期和启动模式
概述 Activity 作为与用户交互的一个窗口,是使用非常频繁的一个基本组件。Android系统是通过Activity栈来管理Activity的,而Activity则是通过哦生命周期来进行自己的创建
我就是马云飞
2018/02/05
1.7K0
Android拾萃- Activity的生命周期和启动模式
7.Activity
创建新的activity(活动) 新创建的activity,必须在清单文件中做配置,否则系统找不到,在显示时会直接报错 <activity android:name="com.itheima.createactivity.SecondActivity"></activity> 只要有以下代码,那么就是入口activity,就会生成快捷图标,写几个就会出现几个程序快捷方式 一个应用程序可以在桌面创建多个快捷图标。 activity的名称、图标可以和应用程序的名称、图标不相同 <intent-filt
六月的雨
2018/05/14
1.4K0
Android点将台:外交官[-Intent-]
张风捷特烈
2024/01/30
2340
Android点将台:外交官[-Intent-]
Android Intent漏洞
显式Intent通过提供目标应用的包名称或完全限定的组件类名来指定哪个应用程序将满足意向。
tea9
2023/08/24
8020
Intent详解
    Intent,中文名为意图,简单说也就是传递消息。Intent是各个组件之间信息沟通的桥梁。
Twcat_tree
2022/11/30
8270
Android开发笔记(四十)组件通讯工具Intent
Intent用于处理Android各组件之间的通讯。Intent完成的工作主要有三部分: 1、Intent需标明本次通讯请求是从哪里来,到哪里去,要怎么走; 2、发起方携带上本次通讯需要的数据内容,接收方则对收到的Intent数据进行解包; 3、如发起方要求判断接收方的处理结果,Intent还需负责传回应答的数据内容; Intent由以下部分组成: Component : 组件,用于指定Intent的来源与目的 Action : 用于指定Intent的动作 Data(即Uri) :  用于指定动作要操纵的数据路径 Category : 用于指定动作的类别 Type : 数据类型,用于指定Data类型的定义 Extras : 扩展信息,用于指定装载的参数信息 Flags : 标志位,用于指定Intent的运行模式(也叫启动标志)。详细说明见上一节的《Android开发笔记(三十九)Activity的生命周期》。
aqi00
2019/01/18
7820
activity组件导出实验
原因在于导出activity,任何软件都可以调用它,包括攻击者编写的软件,可能产生恶意调用,应用会产生拒绝服务等问题。
tea9
2022/07/16
1.3K0
activity组件导出实验
相关推荐
027android初级篇之Intent相关介绍
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档