软考在线  |  计算机技术与软件专业技术资格(水平)考试   |   [请选择科目]
[ 成为 VIP会员 ]        登录  |  注册      我的  购物车
 
科目切换  联系我们 
    
  |   [请选择科目]

VIP:有效提升20分!  真题  历年真题 (可免费开通)/  百科全书/ 机考模拟平台/  最难真题榜/  自测/  攻打黄金十二宫/  真题检索/  真题下载/  真题词库
知识   必会知识榜/  最难知识榜/  知识点查询/      文档   学习计划/  精华笔记/  试题文档     纸质图书   《百科全书》HOT!!/         /        首页/  2025年上半年专区/  手机版/ 
首页 > 知识点讲解
       Android系统安全机制
知识路径: > 网络信息安全概述 > 网络信息安全目标与功能 > 移动应用安全需求分析与安全保护工程 > Android系统安全与保护机制 > 
考试要求:熟悉      相关知识点:1个      
        为保护Android系统及应用终端平台安全,Android系统在内核层、系统运行库层、应用程序框架层以及应用程序层等各个层面采取了相应的安全措施,以尽可能地保护移动用户数据、应用程序和设备安全,如下图所示。
               权限声明机制
               权限声明机制,为操作权限和对象之间设定了一些限制,只有把权限和对象进行绑定,才可以有权操作对象。当然,权限声明机制还制定了不同级别不同的认证方式的制度。在默认情况下Android应用程序不会被授予权限,其权限分配根据Android应用APK安装包中的Manifest文件确定。应用程序层的权限包括normal权限、dangerous权限、signature权限、signatureOrSystem权限。normal权限不会给用户带来实质性的伤害;dangerous权限可能会给用户带来潜在威胁,如读取用户位置信息,读取电话簿等,对于此类安全威胁,目前大多数手机会在用户安装应用时提醒用户;signature权限表示具有同一签名的应用才能访问;signatureOrSystem权限主要由设备商使用。
               
               Android系统安全系统结构示意图
               应用程序签名机制
               Android将应用程序打包成.APK文件,应用程序签名机制规定对APK文件进行数字签名,用来标识相应应用程序的开发者和应用程序之间存在信任关系。所有安装到Android系统中的应用程序都必须拥有一个数字证书,此数字证书用于标识应用程序的作者和应用程序之间的信任关系。
               沙箱机制
               沙箱隔离机制使应用程序和其相应运行的Dalvik虚拟机都运行在独立的Linux进程空间,不与其他应用程序交叉,实现完全隔离,如下图所示。Android沙箱的本质是为了实现不同应用程序和进程之间的互相隔离,即在默认情况下,应用程序没有权限访问系统资源或其他应用程序的资源。每个App和系统进程都被分配唯一并且固定的User ID,这个UID与内核层进程的UID对应。每个App在各自独立的Dalvik虚拟机中运行,拥有独立的地址空间和资源。运行于Dalvik虚拟机中的进程必须依托内核层Linux进程而存在,因此Android使用Dalvik虚拟机和Linux的文件访问控制来实现沙箱机制,任何应用程序如果想要访问系统资源或者其他应用程序的资源,必须在自己的Manifest文件中进行声明权限或者共享UID。
               网络通信加密
               Android支持使用SSL/TSL协议对网络数据进行传输加密,以防止敏感数据泄露。
               
               Android应用沙箱机制示意图
               内核安全机制
               Android系统的内核层采用分区和Linux ACL权限控制机制。Linux ACL权限控制机制是指每个文件的访问控制权限都由其拥有者、所属的组、读写执行三个方面共同控制。文件在创建时被赋予了不同的应用程序ID,只有拥有相同应用程序ID或被设置为全局可读写才能够被其他应用程序所访问。每个应用均具有自己的用户ID,有自己的私有文件目录。在系统运行时,最外层的安全保护由Linux提供,其中system.img所在的分区是只读的,不允许用户写入,data.img所在的分区是可读写的,用于存放用户的数据。
               除了Linux常见的安全措施外,Android后续版本不断增强抗攻击安全机制,在Android 2.3版本之后增加了基于硬件的NX(No eXecute)支持,不允许在堆栈中执行代码。在Android 4.0之后,增加了“地址空间布局随机化(Address Space Layout Randomization,ASLR)”功能,防止内存相关的攻击。Android进一步支持具有强制访问控制功能的SELinux,防止内核级提权攻击。
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。



京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2025 All Rights Reserved 软考在线版权所有