Android 插件化插件化技术弊端 ( 恶意插件化程序的解决方向 | 常用的插件化虚拟引擎 )
Posted 韩曙亮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 插件化插件化技术弊端 ( 恶意插件化程序的解决方向 | 常用的插件化虚拟引擎 )相关的知识,希望对你有一定的参考价值。
一、插件化技术弊端
在之前的 android 应用中 , 部分黑客将应用破解 , 植入自己的恶意代码 , 然后进行重打包 , 再上传到应用市场或其它传播渠道 ;
插件化技术出现之后 , 由于可以使用 宿主软件 自动加载 APK 插件文件 , 任何 APK 安装包都可以在不安装的情况下运行 , 这样黑客自己开发一个宿主程序 , 封装一个第三方 APK 文件 , 完全可以冒充这个被封装的 APK 插件应用 , 在宿主程序中 , 直接写入恶意代码 , 这个比重打包方便很多 , 因此插件化技术被大范围地恶意使用 ;
该操作还可以批量操作 , 使用自动化脚本 , 一晚上甚至可以封装数量巨大的恶意应用 ;
目前的 Android 生态中 , 存在着大量的该类使用插件化技术进行 ;
据统计 , 应用市场中 , 插件化应用中 , 恶意插件化应用 是 正常使用插件化技术应用的 数倍 ;
针对上述问题 , 需要使用一些技术识别 恶意 插件化应用 , 并删除此类应用 ;
二、恶意插件化程序的解决方向
首先 , 要先识别出使用了插件化技术的应用 ;
插件化应用有相同的特点 : 使用了 插件化 技术 的应用 , 都有相同的特点 , 当前的插件化基本都是基于 Hook 的插件化技术 , 这样可以零侵入代码 , 开发的插件 APK 与普通 APK 相同 ;
基本都是 启动 Activity 前 , 先启动 插桩的 Activity , 骗过 AMS , 然后回到 ActivityThread 之前 , 在将真正的插件 Activity 启动起来 , 这样就实现了不安装 APK 文件 ,
( 这里的 Activity 也可以是其它组件 )
然后 , 判断一个插件化应用是良性应用 , 还是恶性应用 ;
找出恶意插件化应用的特点 , 这类恶意插件化应用 , 一般不经过用户同意秘密加载插件 ( 感觉有些大厂的插件化也是偷摸加载的 , 插件化对用户透明 ) , 分析出恶意插件的非法加载插件的指纹特征 , 与正常使用插件化技术的应用进行区分 ;
检测恶意插件化应用 : https://github.com/whucs303/VAHunt
三、常用的插件化虚拟引擎
常用的插件化虚拟引擎 :
- VirtualApp : https://github.com/asLody/VirtualApp
- DroidPlugin : https://github.com/DroidPluginTeam/DroidPlugin
参考文献 : VAHunt: Warding Off New Repackaged Android Malware
in App-Virtualization’s Clothing
以上是关于Android 插件化插件化技术弊端 ( 恶意插件化程序的解决方向 | 常用的插件化虚拟引擎 )的主要内容,如果未能解决你的问题,请参考以下文章
Android 插件化多开原理 | 使用插件化技术的恶意应用 | 插件化的其它风险 | 应用开发推荐方案
Android 插件化基于插件化引擎的“恶意应用“与“良性应用“区别 | 恶意插件化应用特征
Android 插件化使用插件化引擎对应用进行重打包的恶意软件特征 ( 检测困难 | 成本低 | 恶意插件可更换 | 容易传播 )
Android 插件化恶意软件判定规则 | 恶意软件的范围定义
Android 插件化基于插件化的恶意软件的加载策略分析 ( 自定义路径加载插件 | 系统路径加载插件 | 用户同意后加载插件 | 隐藏恶意插件 )