下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
android系统的信息安全与权限机制研究
1总结1.1android系统android单词的初衷是“机器人”,它也是基于linux内核的开放生行系统。该系统由linux内核作为底层管理、各种源代码功能库作为中间功能、基于dalvik虚拟机的java应用程序框架和一组基本应用组成。这是移动设备上第一个开放而完整的系统平台。Android系统自2007年首次发布以来,以其开源免费的优势,至今,经过多次系统升级,已经成为全球最流行的手机,占有率已超60%。与此同时,据网秦2012年第一季度的《全球手机安全报告》Android系统采用软件堆层(SoftwareStack,又名软件叠层)的架构,主要分为三部分。底层以Linux内核工作为基础,提供核心系统服务,比如安全,内存管理,进程管理,网络协议栈和驱动模块;中间层包括各种开源函数库Library和虚拟机VirtualMachine。第三层是各种应用基本框架,主要是由各种组件管理器级成,提供Android程序开发的基础功能,使组件重用变得简单,加快了程序开发的速度。最上面一层是常用的必要的应用程序,包括通话程序,短信程序等,应用软件可由第三方开发。每个Android应用都运行在它自己的进程里,并依附在一个单独的Dalvik虚拟机实例上1.2android系统安全特性Android安全机制的一个重要的设计出发点就是:应用程序在默认的情况下不可以执行任何对其他应用程序、系统或者用户带来负面影响的操作。除了Linux在系统内核级来做保障,在外围用户空间android也设计了独特的安全机制来保障程序的安全性1)Android系统充分利用了Linux系统的安全特点,一个程序分配一个用户ID,每个程序运行在自己的沙箱环境,之间不能相互影响。每个程序在安装时,系统会为它分配一个属于自己的用户,为它创建一个“沙箱”环境,防止其它程序影响。用户在程序安装到手机中时被分配,并且在这个设备中保持它的永久性。另外如果该程序创建任何文件都会被赋予程序的用户标识,并且正常情况下不能被其它进程访问。2)另外,Android系统设计了另一个安全特性,即权限控制一个程序在安装时,需要声明自己需要的权限给用户提示,包括如访问联系人、访问网络、访问电电子邮件、收发送信息、读写存储卡,调用Android其他组件等。如果有恶意权限会被细心的用户发现,并且程序在实际运行期间,不可能有超出安装时声明的权限。权限是Android为保障安全而设计的安全标识,同时也是程序实现某些操作的前提。存在的问题是,用户选择安装了某个程序,就不得不接受该程序的所有权限,而一般的普通用户却不熟悉,这些权限可能给自己带来的危害。另外,用户往往更关心程序带来的功能,而忽视了程序所具有权限带来的潜在威胁。在安装了这样的恶意程序后,在运行过程中便可访问用户的隐私数据或执行非法的动作,而用户不会知晓,从中给用户带来威胁。1.3良性程序使用情况对比文献[7]使用自动测试工具,测试了1310个关键AndroidAPI,创建了较为完整的Android权限集合(permissionmap),包括了contendProviders,DisallowedBroadcasts,recevingBroadcasts,sendingBroadcast,startin-gActivities,startingServices几乎所有种类的权限。文献[8]分析了2011年10月前1260个良性程序的权限使用情况,同时与他们收集的恶意程序库中恶意程序所申请的权限的情况,进行了对比发现:访问网络、读手机状态、访问网络状态、写SD卡等权限在恶意程序和良性程序中都广泛使用,但恶意程序倾向于使用(:)短信有关的权限(62.7%)、开机自启动权限(54.6%)、更改WIFI状态的权限(31.6%),而良性程序很少使用这些程序。另外,恶意程序比良性程序倾向于请求更多的权限,在他们收集的样本中,恶意程序平均需要11个,而良性程度需要4个。在前20名的权限中,恶意程序平均需要9个,而良性程序平均仅需要3个。由上,可以推断出,恶意程序与良性程序在需要的请求的权限集合与组合上,有比较明显的不同。2权限组合检测根据前文所述及相关研究,笔者认为可以运用机器学习方法以权限组合为特征对Android恶意软件进行检测。在机器学习方法中,朴素贝叶斯方法(NaiveBayes,NB),是一种性能较好的分类方法,常用在文本分类上2.1)问题处理NB利用贝叶斯公式的特性,将先验概率转换成后验概率,并为了简化问题处理,采取了“朴素的假设”。它分类新实例的方法是在给定描述实例<a1,a2,……an>时,通过计算概率得到最可能的分类目标值。2.1.1大后验假设(maximma索赔,模型)v2.1.2算法描述1)在(1)式中,估计P(v2)P(a3)估计2.2android恶意程序分类主要的问题是,把一定数量的良性程序与恶意程序的权限扫描统计出来,计算其概率。以[7]中总结出的所有权限作为权限字典D,作为特征属性。1)从官方的Android市场2)笔者收集了一批恶意程序样本,得到各程序权限,集合到一起,同(1)一样,对各权限计数。3)记T=B+MT={<permission1,number1+number2>,……}4)对应到该分类的具体问题中,2.1.2中的“样例”应为具体权限。1——代表是良性程序B0——代表是恶意程序Mnn——T总样本数量各权限总数n|D|——权限字典中的权限数量5)在以上概率全部计算出来之后就可以预测新样本:v3基于nb的研究方法1)样本取得:从Google官方的Android市场下载200个程序(官方审核相对比较严格,假设全为良性程序)。包括了游戏娱乐类、工具类、系统管理类等程序。恶意样本,来自笔者的收集,取200个,包括了一些主流恶意的程序,如:DroidKungFu,AnverseBot,BaseBridge,RootExpoit等。2)权限提取:基于开源项目androgurad3)用python语言实现了NB算法,按前文中的计算方式,计算相应的概率项。4)先随机选取参与训练的良性程序和恶意程序各50个进行分类实验,再选择未参与训练的新样本进行检测,进行五轮实验。实验结果如下:其中,TP——truepositive真阳性,即检测正确到恶意样本数量FN——falsenegative假阴性,即检测错误的恶意样本数量FP——falsepositive假阳性,即检测错误的良性样本数量TN——truenegative真阴性,即检测正确的良性样本数量FPR——假阳率4android系统恶意软件检测技术研究本文介绍了Android系统的架构,分析了Android系统的安全机机制。针对Android特有的安全机制,提出一种利用机器学习算法检测恶意软件的方法,并进行了模拟实验和分析,效果较好。今后,笔者将继续对Android系统的恶意软件检测进行研究,具体涉及如增加样本数量的训练;将检测模型移植到Android平台上;研究恶意的软件的除权限外的其他静态特征;研究恶意软件的运行时特征,hookAndroid的敏感API,建立恶意软件的行为模式;寻找合适的机器学习算法,使模型具有更好的学
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 胎记的临床护理
- 儿童学习能力障碍的健康宣教
- 《机械制造基础》课件-05篇 第八单元 超精密加工
- 《机械设计基础》课件-第5章
- 《计算机表格处理》课件
- 【培训课件】青果园 万名大学生创意创业园区项目介绍
- 《认识HS商品分类》课件
- 社区户外旅游组织计划
- 生物学课程的扩展与拓展计划
- 提升师生互动频率的计划
- 2024年社会工作者-社会综合能力考试历年真题
- 人力资源的降本增效操作
- 村级财务课件教学课件
- 干股股份合作简单协议书范本(35篇)
- 中央2024年中国合格评定国家认可中心招聘笔试历年参考题库解题思路附带答案详解
- 2022年《数据结构(本)》形考任务实践活动3
- 2024年贵州专业技术继续教育公需科目考试部分试题(含答案)
- 英语听力技巧与应用(山东联盟)智慧树知到答案2024年山东航空学院
- 高级中学语文教师资格考试学科知识与教学能力2024年下半年测试试题及解答
- 初中语文八年级上册 20《人民英雄永垂不朽》公开课一等奖创新教学设计
- 生猪屠宰兽医卫生检验人员理论考试题库及答案
评论
0/150
提交评论