android插件化多开原理|使用插件化技术的恶意应用|插件化的其它风险|应用开发推荐方案

韩曙亮 韩曙亮     2023-01-09     197

关键词:





一、多开原理



插件化的优点就是可以实现应用的多开 , 利用该多开虚拟化引擎 , 用户可以同时登录多个 新浪微博 ;

其原理是 被多开 的应用 , 不需要安装 , 被多开的应用运行在虚拟化引擎中 , 即 宿主应用 , 被多开的应用就是 插件应用 ;

虚拟化引擎 + 应用 A 与 直接运行的应用 A , 二者之间肯定是不冲突的 ;





二、使用插件化技术的恶意应用



恶意应用 目前广泛使用 插件化技术 , 将 恶意行为 封装到插件中 , 如 盗取用户数据 ; 该恶意的插件 APK 被加密后放在应用的资源文件 , 或从网络上下载 , 对应用静态分析 , 很难识别出该应用是恶意应用 ;

PluginPhantom 的恶意插件是加密的 , HummingBad 的 恶意插件 是从网络上下载的 , 静态分析无法识别出恶意插件 ;

反病毒扫描程序 和 重打包检测程序 , 都无法检测出使用了插件化技术之后的恶意软件 ;

HummingBad 使用了 DroidPlugin 虚拟化引擎 , 进行广告欺诈 ;

使用 虚拟化引擎 ( 插件化 ) 对 APK 应用进行重打包 : 开发一个宿主软件 , 将 APK 文件当做插件加载运行 , 宿主软件植入恶意代码 , 或者使用 插件方式 植入恶意代码 , 这样在不修改 APK 文件的前提下 , 就完成了对 APK 应用的重打包操作 , 达到了目的 ;





三、插件化的其它风险



权限升级 : 宿主应用 与 插件应用 UID 相同 , 宿主应用中会定义一百多权限 , 此时如果恶意应用获取了这些权限 , 肯定会带来不可预知的风险 ; 如 泄露隐私 ;

网络钓鱼 : 用户在插件 APK 的操作 , 以及输入的数据 , 宿主应用都可以获取到 , 如果输入账号 , 密码 , 则直接就被钓鱼了 ;





四、应用开发推荐方案



作为应用程序开发者 , 可以采用一些手段 , 避免自己的应用运行在 虚拟化引擎 中 , 防止用户权益受损 ;
如果 应用 运行在插件化引擎中 , 可以通过一些特征进行判断 , 参考 【Android 插件化】使用 PluginKiller 帮助应用开发者规避发布的 APK 安装包被作为插件的风险 ( 验证应用是否运行在插件化引擎中 )

android插件化vahunt引入|vahunt原理|vahunt识别插件化引擎(代码片段)

文章目录一、VAHunt引入二、VAHunt原理三、识别插件化引擎一、VAHunt引入从应用开发者角度出发,保护自己开发的应用不被恶意开发者使用插件化虚拟引擎二次打包,并植入恶意代码插件,避免自己的应用运行在插件化引擎中,是很有... 查看详情

android插件化基于插件化引擎的“恶意应用“与“良性应用“区别|恶意插件化应用特征(代码片段)

...特征一、基于插件化引擎的恶意应用与良性应用区别在【Android插件化】VAHunt引入|VAHunt原理|VAHunt识别插件化引擎和【Android插件化】VAHunt检测插件化引擎的具体细节博客中,简单介绍了如何检测插件化引擎;下一步就需要在检测出插... 查看详情

android插件化使用插件化引擎对应用进行重打包的恶意软件特征(检测困难|成本低|恶意插件可更换|容易传播)

文章目录一、检测困难二、成本低三、恶意插件可更换四、容易传播一、检测困难恶意软件开发者,开发一个插件化宿主软件,将APK安装包直接以插件形式运行,同时还会将恶意代码放在另外一个插件中;上述使用插件化重打包的恶... 查看详情

android插件化恶意软件判定规则|恶意软件的范围定义

...规则二、恶意软件的范围定义一、恶意软件判定规则在【Android插件化】基于插件化的恶意软件的加载策略分析(自定义路径加载插件|系统路径加载插件|用户同意后加载插件|隐藏恶意插件)博客中介绍了444种插件加载运行策略;在VA... 查看详情

android插件化基于插件化的恶意软件的加载策略分析(自定义路径加载插件|系统路径加载插件|用户同意后加载插件|隐藏恶意插件)(代码片段)

...要获取该插件APK文件路径,可以在Assets资源目录,也可以在Android内置存储或SD卡存储控件中;恶意插件,解密或从网络上下载后,也需要存放在一个文件目录中;常见的自定义路径如下:分析上述API调用,搜索APK文件,并判断该文件是否是使... 查看详情

android插件化hook插件化框架(hook插件化原理|插件包管理)(代码片段)

Android插件化系列文章目录【Android插件化】插件化简介(组件化与插件化)【Android插件化】插件化原理(JVM内存数据|类加载流程)【Android插件化】插件化原理(类加载器)【Android插件化】“插桩式“插件化框架(原理与实现思路)【Android... 查看详情

android插件化静态分析应用apk安装包是否使用了插件化引擎(虚拟化引擎运行特点|恶意软件特点)

...恶意软件特点一、插件引擎运行特点宿主应用中,首先在AndroidManifest.xml中,定义了若干占坑的“桩”组件,这些组件的作用是为了欺骗ActivityManagerService准备的,如果给AMS传入没有在清单文件中注册过得组件,直接就报错了;启动插件应... 查看详情

android插件化hook插件化框架(使用hook方式替换插件activity的mresources成员变量)(代码片段)

Android插件化系列文章目录【Android插件化】插件化简介(组件化与插件化)【Android插件化】插件化原理(JVM内存数据|类加载流程)【Android插件化】插件化原理(类加载器)【Android插件化】“插桩式“插件化框架(原理与实现思路)【Android... 查看详情

android插件化现有的针对插件化恶意应用的解决方案|插件化应用开发推荐方案

...、SafetyNetAttestationAPISafetyNetAttestationAPI是Google推出的,针对Android应用被滥用的API,可以有效避免Android应用运行在root后的手机,虚拟机,hook调试环境中,这样进一步降低了软件被逆向的风险;SafetyNet 查看详情

android插件化使用pluginkiller帮助应用开发者规避发布的apk安装包被作为插件的风险(验证应用是否运行在插件化引擎中)(代码片段)

...者规避APK安装包被作为插件二、检测插件化环境1、检查AndroidManifest.xml清单文件2、检查运行时信息3、检查生成的目录4、检查组件前言在上一篇博客【Android插件化】插件化技术弊端(恶意插件化程序的解决方向|常用的插件化虚拟... 查看详情

android插件化hook插件化框架(hookactivity启动流程|主线程创建activity实例之前使用插件activity类替换占位的组件)(代码片段)

Android插件化系列文章目录【Android插件化】插件化简介(组件化与插件化)【Android插件化】插件化原理(JVM内存数据|类加载流程)【Android插件化】插件化原理(类加载器)【Android插件化】“插桩式“插件化框架(原理与实现思路)【Android... 查看详情

android插件化hook插件化框架(加载插件包资源)(代码片段)

Android插件化系列文章目录【Android插件化】插件化简介(组件化与插件化)【Android插件化】插件化原理(JVM内存数据|类加载流程)【Android插件化】插件化原理(类加载器)【Android插件化】“插桩式“插件化框架(原理与实现思路)【Android... 查看详情

android插件化hook插件化框架(hookactivity启动流程|ams启动前使用动态代理替换掉插件activity类)(代码片段)

Android插件化系列文章目录【Android插件化】插件化简介(组件化与插件化)【Android插件化】插件化原理(JVM内存数据|类加载流程)【Android插件化】插件化原理(类加载器)【Android插件化】“插桩式“插件化框架(原理与实现思路)【Android... 查看详情

android插件化hook插件化框架(反射工具类|反射常用操作整理)(代码片段)

Android插件化系列文章目录【Android插件化】插件化简介(组件化与插件化)【Android插件化】插件化原理(JVM内存数据|类加载流程)【Android插件化】插件化原理(类加载器)【Android插件化】“插桩式“插件化框架(原理与实现思路)【Android... 查看详情

android插件化hook插件化框架(hookactivity启动流程|hook点分析)(代码片段)

Android插件化系列文章目录【Android插件化】插件化简介(组件化与插件化)【Android插件化】插件化原理(JVM内存数据|类加载流程)【Android插件化】插件化原理(类加载器)【Android插件化】“插桩式“插件化框架(原理与实现思路)【Android... 查看详情

android插件化hook插件化框架(通过反射获取“插件包“中的element[]dexelements)(代码片段)

Android插件化系列文章目录【Android插件化】插件化简介(组件化与插件化)【Android插件化】插件化原理(JVM内存数据|类加载流程)【Android插件化】插件化原理(类加载器)【Android插件化】“插桩式“插件化框架(原理与实现思路)【Android... 查看详情

android插件化hook插件化框架(hookactivity启动流程|反射获取iactivitymanager对象)(代码片段)

Android插件化系列文章目录【Android插件化】插件化简介(组件化与插件化)【Android插件化】插件化原理(JVM内存数据|类加载流程)【Android插件化】插件化原理(类加载器)【Android插件化】“插桩式“插件化框架(原理与实现思路)【Android... 查看详情

如何将android程序做成插件化的形式?详解插件化实现原理(代码片段)

...实现难点四大组件的插件化实现一、发展历史2012年:AndroidDynamicLoader给予Fragment实现了插件化框架,可以动态加载插件中的Fragment实现页面的切换。2013年:阿里技术沙龙上,伯奎做了Atlas插件化框架的分享,说... 查看详情