移动虚拟化技术与Android安全 - 艾奇伟 目前主要的移动安全威胁 应用安全威胁 ・ 金融支付威胁 ・ 企业业务威胁 ・ 个人应用威胁 - 游戏。。。 ・ 个人隐私 数据安全威胁 ・ 个人隐私数据 ・ 企业业务数据 移动安全的两大隐患 应用对 应用的 攻击 应用对 数据的 攻击 终端侧主要的安全解决方法 隔离 隔离 隔离 应用 系统 数据 虚拟化技术是终端侧实现隔离的基础技术 Android 虚拟化类型 Hypervisor (双系统) App Wrapper Framework Virtualization (应用打包) (框架虚拟化) 这一刀切在哪里 App Wrapper Framework Virtualization Hypervisor Hypervisor ¨ 技术方案 -基于CPU和内核的准虚拟 化(Paravirtualization) -主要工作集中在Host Kernel, Guest Kerne l和HAL ¨ 优点 -应用、框架、库存Runtime基本不受影响 -性能和体验良好 -VM之间高度隔离 ¨ 缺点 -开发量大 -与硬件高度相关,需针对硬件移植 -VM之间资源共享困难 -对硬件资源要求高 App Wrapper l 技术方案 -针对Android App的安全封装 -为App提供或替换API,提供互相隔离的 服务 l 优点 -对操作系统要求低 -无特殊硬件要求 -轻量 l 缺点 -安全性差,存在大量共用的服务和资源 -App需改造或重新打包,对App兼容性差 ,对资源有很多限制 Framework Virtualization l 技术方案 -利用LXC,namespace等内核技术创 造多个互相隔离的进程环 境(namespace) -在隔离的环境分别运行服务和APP -改造HAL和服务以公用硬件资源和实 现必要的namespace间通讯 l 优点 -对APP兼容性高,不需要移植 -应用隔离和资源共用可以调整 -对硬件无特殊要求 l 缺点 -针对不同硬件和Android发行版仍有 一些移植的工作量 -HAL的资源共享和调度还有一定的工 作需要做 Hypervisor vs Framework Virtualization Xen(有硬件辅助),Hypervisor kvm(有硬件辅助),Hypervisor Lxc(原生linux), Framework Virtualization 硬件辅助的Hypervisor模式 ARM X86 VMM Y Y vIRQ (后期加上) Y Y vMMU(后期加上) Y Y vIOMMU(后期加上) Y Y 硬件辅助的Hypervisor模式 VMM VIRTUAL MACHINE MONITOR VIRO VIRTUAL INTERRUPT REQUEST VMMU VIRTUAL MEMORY MANAGEMENT VIOMMU VIRTUAL IO MMU 硬件辅助下Hypervisor的实现原理 15/7/13 硬件辅助下Hypervisor的实现原理 15/7/13 Hypervisor性能测试 Bare Metal A Bare Metal B Bare Metal Avg KVM A KVM B KVM Avg KVM to Bare Metal相对 裸机 Xen A Xen B Xen Avg Xen to Bare Metal C-‐Ray 35.32 35.38 35.35 35.64 35.68 35.66 0.87% 36.13 36.13 36.13 2.16% POV-‐Ray 230.05 229.99 230.02 232.74 232.14 232.44 1.04% 236.33 235.45 235.89 2.49% Smallpt 160 160 160 162 162 162 1.23% 168 167 167.5 4.48% BlowGish 3028 3024 3026 2993 2990 2991.5 -‐1.15% 2839 2873 2856 -‐5.95% DES 7374000 7375667 7374833.5 7270667 7273000 7271833.5 -‐1.42% 6858667 6963667 6911167 -‐6.71% MD5 49568 49528 49548 48882 48917 48899.5 -‐1.33% 46428 46879 46653.5 -‐6.20% OpenSSL 397.73 397.63 397.68 394.6 393.3 393.95 -‐0.95% 387.5 389 388.25 -‐2.43% 7-‐Zip 12483 -‐4.95% 12452 12467.5 12196 12063 12129.5 -‐2.79% 11854 11904 11879 Timed MAFFT Alignment 7.76 7.8 7.78 7.78 7.81 7.795 0.19% 8.5 8.34 8.42 7.60% CLOMP 3.3 3.3 3.3 3.28 3.29 3.285 -‐0.46% 3.09 3.16 3.125 -‐5.60% PostMark 3658 3676 3667 3791 3857 3824 4.11% 3205 3205 3205 -‐14.41% 性能降低 1.85% 6.31% 15/7/13 性能表现很好,是吧? 请注意,测试所用是功能软件(如 加密,解密等。 请看下边 15/7/13 一个虚拟网卡的IRQ性能测试 分析 在所有硬件辅助都已经使用的情况下, 网络中断响应能力已经下降50% 核心是: I/O 若存在大量的设备I/O性能会更加劣化 移动虚拟化技术 交互是移动设备的核心, 所以, 存在大量的 I/O. 所以我们现在选择 lxc, 不是kvm, 不是xen 结构示意 app app app framework framework framework lib HAL lib HAL lib HAL device namespace cgroup device drivers kernel mount, net,utc, user,IPC,pid name space 用户层 内核层
2015-《移动虚拟化技术与Android安全-艾奇伟》
温馨提示:如果当前文档出现乱码或未能正常浏览,请先下载原文档进行浏览。
本文档由 张玉竹 于 2022-04-07 17:49:12上传分享