基于权限的Android恶意程序预过滤方法研究(5)
时间:2018-06-12 20:44 来源:毕业论文 作者:毕业论文 点击:次
ADT是Eclipse IDE集成开发环境中的插件,为Android开发提供强大、集成的开发环境。对ADT的配置在EclipseIDE的“Help”子菜单中的“Insall New Software”进行新建。完成新建后在“Work with”中选择刚才添加的ADT,勾选其展开后出现的Android DDMS和Android Development Tool,再按照提示进行下面的步骤。最后选择“Windows”菜单中的“Preferences”子选项,进入Android选择面板点击“Browse”选中SDK路径,进行“Apply”加载,完成ADT配置。 SDK(Software Development Kit,软件开发工具包)是软件开发者用于特定的系统软件的开发工具集合,进行Android系统开发需要对所需版本的SDK包进行下载安装。进入Eclipse中的Android SDK Manager,加载安装所有需要的Android系统版本包及工具,以完成对SDK的设置。 AVD(Android Virtual Device)即Android运行虚拟机,为开发后的Android提供运行平台,因此想要进行Android系统开发必须创建合适的AVD。进入Eclipse中的AVD Manager创建所需要的合适的虚拟机,进行加载,即可得到虚拟的Android系统运行界面。至此,Android开发环境搭建完成。 2.2 Android系统安全机制分析 由于Android系统的开放性特质,其安全性问题也逐渐暴露明显,成为了Android系统开发者首要考虑和解决的问题。Google公司作为Android系统平台的拥有者,为其配备了完善的安全机制。Android操作系统平台上的应用程序运行在一个“沙箱”环境中,与其他应用程序隔离,在默认情况下没有对其他程序、系统或用户进行有害操作的权限。如果应用程序企图干扰其他程序或访问系统敏感权限,则需要声明相应权限。除特别的权限需要基于证书和用户的提示被自动允许或禁止,其他权限可以由不同方式的操作进行处理。 Android操作系统继承了其内部Linux2.6内核的安全机制,Linux2.6在Linux系统本身优秀的安全性和稳定性基础上,为增加系统安全性,又在其中加入了安全模块的安全机制,实现了对信息系统的保护。而Android平台下的数据安全主要依赖UID(用户标识)和权限这两个安全元素。每个程序在安装到Android手机中时都会被分配到一个属于自己的永久保存的用户ID,即UID[8]。此用户ID为其专属的应用程序创建一个“沙箱”,以防止与其他程序相互影响或被其他包访问。同时,UID还标识该程序创建的任何文件。当用户或程序想要执行诸如发送信息、调用系统内部组件、申请系统服务等操作时,需要通过权限对这些操作进行允许,权限是用户或者程序执行某些特殊操作的基础。 在Android系统中,主要有三种安全机制[8]:基于权限的安全机制、基于沙箱的安全机制、及数字签名安全机制。 2.2.1 基于权限的安全机制 Android系统任何一个应用程序在对Android的网络、电话、短信、通讯录等受限资源进行使用时,都必须提前对Android系统提出申请,系统批准后才可对相应的受限资源进行访问和使用。 Android系统从被安装的应用程序包含的AndroidManifest.xml文件中获取此应用程序运行时所需申请的权限列表[10],然后显示对话框询问用户是否确认满足这些权限的需求,如果用户同意,则应用程序正常安装并系统赋予其相应权限,反之则不进行安装。但权限机制也存在一个缺陷,用户通常并不知道如何界定和判断一个权限是否是敏感权限,因此对恶意程序的检测和防护作用是不彻底的。 (责任编辑:qin) |