雷锋网(公众号:雷锋网)消息,6 月 28 日,安天发布了一份《VirtualAPP技术应用及安全分析报告》。

VirtualApp(简称:VA)是一款运行于Android系统的沙盒引擎框架产品,可以理解为轻量级的“Android虚拟机”。VA具有免安装、多开、内外隔离及对于目标App完全控制的能力。VA从表现形式上属于动态加载,但是从技术本质上来说是通过增加VAMS对启动Intent进行修改,拦截和代理Android系统消息,并且通过自定义的ClassLoader加载和构造未在VA的AndroidManifest.xml中声明的组件,以达到对目标App的控制效果。

在应用运行时通过动态加载消息代理技术,作为一项在Android系统上已经可以成熟使用的手段,除了在VA虚拟引擎框架中,目前也广泛应用在热更新、应用加壳和应用动态保护等功能中。正常使用VA虚拟引擎技术一般是为了实现轻量级版本快速迭代、功能更新、bug修复和特定安全防护,但是恶意和流氓应用使用该技术一般是为了逃避安全检测,延长生命周期,获取更大的利益。

无论是动态加载的插件化技术,还是基于VA的虚拟化引擎技术,从安全属性上而言,都在一定程度上挑战了Android系统的安全要求,谷歌和苹果对上架应用都有对应的规定——禁止使用动态加载功能。虽然如此,仍然有大量开发者对VA技术有需求,例如Android平台上的双开应用,以及Windows平台上的Hook机制和多款成熟虚拟机软件,都被用来满足开发者的应用开发需求。安天认为,这种技术本身也是具有两面性的,需要客观看待。

VA技术目前也有用于正常用途的,比如部分游戏爱好者拥有多个账号,部分白领由于工作原因需要对于个人社交软件和工作用户社交软件进行隔离,这一类的需求一直很旺盛。

但是VA实际上也会给运行在VA中的App带来不可忽视的安全风险,即App的运行环境完全被VA控制,安卓的沙盒隔离机制被突破,并导致不必要的攻击入口和风险面暴露。

VA技术动态加载可以在运行时动态加载,并解释和执行包含在JAR或APK文件内的DEX文件。外部动态加载DEX文件的安全风险源于:Anroid4.1之前的系统版本容许Android应用动态加载存储在外部目录中的DEX文件,同时这些文件也可以被其他应用任意读写,所以不能够保护应用免遭恶意代码的注入;所加载的DEX文件易被恶意应用替换或者注入代码,如果没有对外部所加载的DEX文件做完整性校验,应用将会被恶意代码注入,那么攻击者编写的任意恶意代码将会被自动执行,从而进一步实施欺诈、获取账号密码或其他恶意行为。

点击《VirtualAPP技术应用及安全分析报告》,可获得报告全文。

雷锋网版权文章,未经授权禁止转载。详情见转载须知


安天发布VirtualAPP技术应用及安全分析报告-中国科技新闻网

https://www.leiphone.com/news/201906/kqtXc4CyykMdk8AL.html