Androi安全技术分析.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Androi安全技术分析

Android安全技术分析   摘 要 中国论文网 /1/viewhtm  Android是一种深受人们的厚爱的开放源代码的操作系统,它基于Linux,以其强大的功能,廉价和开源的特征,在带来便利实用等的同时,也带来了安全隐患。本文将结合源码分析Android的安全技术,希望能够对Android操作系统研究有所帮助。   【关键词】安全 Android 权限 漏洞   Android操作系统以其强大的功能,目前已经应用于众多智能设备,像智能手机,智能手表,电脑等。廉价和开源的特征,在带来便利实用等的同时,也带来了安全隐患。   1 Android系统架构   Android系统架构由如下图所示的应用程序层、应用程序框架层、Android系统运行库层以及Linux内核层,四层结构。   2 Android安全机制   Android安全机制中由于传统的Linux安全机制、Dalvik虚拟机的安全机制和Goolge设计了Android特有的安全机制。   2.1 应用程序签名机制   2.1.1 签名的说明   开发者数字签名对每一个应用程序都必不可少。为了标志代码作者和监测应用程序的改变,开发者需要拥有私有秘钥。从而可以在应用程序之间安全的共享资源。不同的应用程序通过相同的签名可以相互授权访问API。可以相互访问代码和数据是因为程序共享UID,运行在同一进程。   2.2 沙箱   2.2.1 进程沙箱概述   一个操作系统级别的应用程序“沙箱”是UID不同的应用程序形成隔离,独立运行于各自的进程。Android将多用户操作系统的隔离机制运用于应用程序之上。   2.2.2 Linux安全中的UID   Linux中的每个进程都关联一个用户UID。Linux中的每个文件都有Read、Write和Execute三种权限,这三种权限划分为三组Owner、Group和Other用户属性。   因此,由于主用户组和补充用户组的存在,每一个进程除了有一个对应的UID之外,还对应有一个主GID,以及若干个Supplementary GIDs。   2.2.3 Android安全中的UID   (1)Android中UID的生成。   Android的APK都是运行在由init进程fork出来的Zygote进程,再由Zygote进程fork出来的独立的应用程序进程里面。Zygote进程的UID仍是ROOT。然而,他们的UID会被修改为APK的UID。   (2)Android中的UID的安全。   如果要让两个APK共享同一个UID,那么就需要在AndroidManifest中配置android:sharedUserId属性。   2.3 权限机制   2.3.1 权限机制简述   Android通过相当于Linux的安全机制的安全机制,采用为每一个应用程序分配不同的 UID和GID,使得应用程序之间因为权限的不同产生隔离。此外Android还添加了特有的一种permission 机制,可以针对具体操作进行权限细分和访问控制,同时提供了 per-URI permission 机制,用来提供对某些特定的数据块进行 ad-hoc 方式的访问。Permission本质上是一种访问控制机制。   权限主要包括以下信息:权限的名称;属于的权限组;保护级别。Android权限等级划分为normal,dangerous,signature,signatureOrSystem,system,development,不同的权限表示不同的认证方式。   2.3.2 权限申明源码分析   在linux启动成功后,init进程根据init.rc配置文件启动Android系统,启动了ServiceManager。接下来启动创建了Dalvik虚拟机的Android程序的孵化器zygote,同时启动了systemserver。Systemserver启动ActivityManager和PackageManager等一系列的服务。ActivtyManager会负责启动一个应用程序,安卓编程里startActivity就是通过ActivtyManager来实现的。PackageManager会负责应用程序的安装。   Android权限机制的实现贯穿应用层、框架层、系统层。   AndroidManifest.xml对应应用层。   /data/system/packages.xml对应框架层。   Android系统并不将应用程序的GIDS保存起来,而是在启动的时解析这些信息,并且保存到了静态变量里面。这个静态变量就是mPackages。   frameworks/base/data/etc/platforms.xml也对应于框架层。   system

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档