

英语原文共 10 页,剩余内容已隐藏,支付完成后下载完整资料
Android 系统权限:一个风险和收益相结合角度
Bhaskar Sarma, Ninghui Li, Chris Gates, Rahul Potharaju, Cristina Nita-Rotaru
Department of Computer Science and CERIAS, Purdue University
305 N. University Street, West Lafayette, Indiana 47907-2107
{bsarma, ninghui, gates2, rpothara, crisn}@cs.purdue.edu
Ian Molloy
IBM Research TJ Watson
Hawthorne, NY, USA
molloyim@us.ibm.com
摘要:
在过去几年里,Android平台的日益增长已经成为恶意开发者一个赚钱的目标。有大量的事例表明,发送SMS短信,跟踪用户的隐私数据,即使它不被定义为恶意软件,但它的行为也存在用户隐私数据被盗、资产受到侵害的危险。在本文中,我们调查了同一类软件中有权限要求的应用程序,和权限被其他应用所使用的程序,来更好地告知使用者是否应用程序的风险和他的收益相符合。现有的方法只考虑一个应用程序所要求的权限的风险,同时忽略其他应用请求。我们建议使用两个数据集来评估这些风险信号,一个是由Android市场中的158062个Android应用程序组成,另一个是有121个恶意应用程序组成。我们通过大量数据分析证明了我们的建议的有效性。
分类和主题描述:d.4.6 [操作系统]:安全、保护、访问控制;k.6.5 [管理]:计算机和信息系统的安全保护,微创软件
概述:安全,测量
关键词:安卓 恶意软件
1.引言
对于个人或公司来说,手机设备变得越来越受欢迎,使得让用户能够明白并控制在手机上运行app的利益和风险也变得尤为重要。移动设备既包含传统的私有数据,如联系人、电子邮件、和信用卡,又包含新类型的资源,包括精准定位,,和打电话或发送短信,这些都可以同时在高速无线网络上保持互联网连接不变。由于计算机运作的这一转变,这种妥协可能会导致大量的个人信息以及直接的财务影响。在验证方面,手机越来越多的被用于银行,信用卡,如谷歌钱包,远程访问企业信息。于此同时,用户似乎忽略了选择信任app store来识别恶意软件而不是自行评估风险这种潜在问题。
Android平台已成为增长最快的智能手机操作系统,被大约2亿设备使用,同时全球每天约70万设备被激活。越来越多的应用程序(或APP)可用于Android。同时,Google的Android市场最近超过100亿次的下载。在这样一个广泛的用户基础和易于开发、共享应用程序对Android市场的帮助下,使Android恶意应用程序开发人员看到了一个有吸引力的目标,就是寻求个人利益而去侵害用户的隐私数据和资产。事实上,最近的事件表明恶意软件在android系统数量呈指数增长。这些恶意软件大部分是木马,除了公开有用的功能,大部分是在后台执行秘密恶意活动。这样的恶意活动包括间谍软件,跟踪用户的私人数据和某种情况下向收费号码发送SMS。
对于安全漏洞的赔偿,Google遵循“最小特权原则”,即将访问权限限制到最低水平但仍能保证正常运作的做法。Android防御恶意软件的措施就是在用户安装需要权限的程序之前希望用户能够做出一个正确的决定。具体来说,Google对于恶意软件的标准是:“在安装应用程序时,用户看屏幕清晰地说明应用需要信息和系统资源权限的认证,比如手机上的GPS定位。用户必须明确这一访问是为了继续安装,而且他们可以随时卸载应用程序。他们还可以查看评级和评论来帮助决定他们选择安装的应用程序。我们一直建议用户只安装自己信任的应用程序。”然而,这种方法是无效的。绝大多数Android程序为了运行访问大量的权限。当用户看到几乎每个程序基本相同的警告时,警告很快就失去了作用,因为用户已经习惯性地无视了他们。最近的研究表明微软尝试在Windows Vista下加入使用者账户控制(UAC)的方法与Android的部分功能类似。Motiee等报道指出69%的调查者忽视UAC对话框而直接使用管理员账户。微软本身也承认大约90%的人选择“Yes”,“是用户由于以前大量的提示而做出的习惯性反应,而不是经过提示做出的更好的决策。”
最近,危险信号在设置app访问权限的基础上作为一种为了增强现有应用程序的预警机制已被提出。具体点,代表危险的权限的app已被标识。然而,这个方法并不十分奏效,因为它没有考虑到一个目标程序的功能,也就是说,用户期望app做什么,或者什么权限是被类似功能的app所访问。安装一个应用潜在的风险最好由一组它申请的权限描述,一个只使用权限的方法是不够的,因为它并不能获知该应用程序所提供的好处,或者是好处与风险是否相当。例如,SEND_SMS是一个关键权限,它能使程序发送溢价的短信,可能会花费使用者的资金。虽然权限可能会被恶意地使用,但它也是社交应用合法的需求——仅仅强调一个应用需要许可这样的事实并不有效。 另一方面,一个游戏或壁纸应用程序通常不需要发送短消息。如果这样一个应用程序访问了权限,那么这是一个与好处不相称的风险。
在本文中,我们着重于开发对于app来说更有效的风险信号。一个有效的风险信号应该是:(1)有一个简单的易于理解的语义用于用户和开发人员;(2)是由一小部分app引起;(3)是由很多恶意软件引起。当用户发现一个危险信号在app上被触发时,了解原因并帮助用户做出是否使用这款app。当开发者发现她的app触发了危险信号,了解原因并帮助开发者决定app是否可以改进而不是提升危险信号。
我们在安装程序时开发了一个更有效的危险信号,该方法同时考虑到风险和利益。具体来说,我们建议通过使用app的大分类和子类来找到app的好处。目前的Android市场将app分为“游戏”和“应用”两大类,同时进一步可分别划分为8和26个子类。我们也提出一个更有效的方法,即通过考虑相似功能的app所需要的权限去找到危险的所在。我们观察到如果一个权限是被具有大量相似功能的应用程序访问,那么这个权限更被需要,同时安装程序所遇到的风险也会降低。另外,一个权限被很少一部分具有类似功能的应用软件访问,那么在安装程序时危险系数就会变得很高。
举个例子,一个危险信号,我们称其为关键罕见类型权限信号,用CRCP(theta;)表示。从Android现在已有的122个权限列表中,我们选择26个称之为关键权限。对于每种应用程序,我们调用任何关键权限要求小于theta;%的应用这类theta;-Rare关键权限(theta;-RCP)在这个类别。任何应用程序请求theta;-RCP的同类触发该(theta;)风险信号。我们也考虑到RCP(theta;)信号,当一个应用程序访问一个关键权限要求小于theta;%的所有应用程序,信号基于罕见的权限。
我们想象这样的危险信号使用如下,作为一个例子使用CRCP(theta;)。Android市场的网页应用程序可以显示应用程序触发该(theta;)是否对一些标准的theta;值。我们可以为他们提供应用程序可选择的类别而不是安装前它指定的类别。这一步的用户选择分类本质上是确定的潜在好处安装应用程序。我们也可以给用户一个选择选择一个阈值theta;来显示该(theta;)信号。对于每一个选择(theta;),它也显示百分比的应用将触发的信号(theta;),这样用户更好的理解如何经常触发这个信号。注意,该(theta;)信号通常是由theta;%以上的应用程序,因为通常不止一个theta;-RCP类别,与此同时访问任何一个触发信号。如果应用程序触发信号,那么用户将被警告。作为典型的用户有很多应用程序可供选择某个任务时,如果提高(如很小的一部分,低于10%)的应用程序,用户可以选择避免应用程序触发信号。如果用户无法选择一个类别,然后我们可以诉诸RCP(theta;)信号。当应用程序可能超过供应,这种风险信号会提示用户,因此代表过度风险考虑到他们期望得到受益。
我们认为,我们利用应用程序分类的想法和稀有的权限可以去部署,甚至没有危险信号的概念。比如,并非显示一个应用程序所请求的全部权限。界面显示的权限(包括Android市场的web页面和权限警告页面向用户证明是在安装应用程序之前)应该在频繁类别下将权限排个序(或所有应用程序类别信息不可用),列表第一个为最频繁使用的,包括频率与每个权限。频率也可以颜色编码,稀有的权限,使用红色。此外,频繁的权限可以隐藏在默认情况下(可用“显示所有”按钮)。
总之,本文的贡献如下:
- 我们介绍的概念是结合风险与收益风险信号。在Android平台上下载应用程序,这种方法可以提供的第一道防线。它适用于其他上下文如Facebook应用程序,以及Chrome的扩展。
- 我们提出一个开发危险信号少见的关键权限的构想,以及应用程序的分类信息。
- 通过使用两个数据集,我们对提出风险信号的有效性进行了评估。第一个数据集在2011年2月Android平台的网站被收集,包括158062 个Android应用程序。第二数据集从Contagio博客获得恶意软件转储库(http://www.contagiodump.blogspot.com)被收集,包含121个恶意程序。我们提出的风险信号,尤其是CPCP是有效的。
剩下的内容如下。现在Android平台的描述,当前预警机制是在第二部分。第三部分论述了日期设置、我们的收集和某些特征数据的权限。在第四部分,我们讨论如何使用这些数据来衡量某个应用程序可能会引发的风险。然后我们发现这些危险信号是在第五部分。我们通过讨论相关工作完成和结束部分是6和7。
2. Android 平台
在本节中,我们阐述了当前的Android平台提供的防御机制,并讨论其局限性。
2.1 Android开发过程
Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,包括操作系统、应用程序框架和内核应用程序。内核操作系统基于Linux内核。应用程序框架包括Dalvik虚拟机。使用Android SDK应用程序是用Java编写,编译成的(Dalvik可执行的),并打包成apk包(Android)安装。为了能够提交应用程序到Android市场,一个Android开发人员应该获得一个出版商账户。
当提交一个Android应用程序到Android市场时,apk会在Android市场上被分配一个网页。这个网页包含元信息,跟踪应用程序有关的信息(名称、类别、版本、大小、价格),以及使用统计(评级,安装数量、评论的数量)。
2.2 Android平台上的权限
当下Android所支持提供的在解决由每个应用组成的恶意事物的问题上,提醒用户该应用访问的权限。具体来说,每个应用程序作为单独的进程运行在自己的虚拟机,在默认情况下,没有权限进行操作或访问资源,可能会对系统或其他应用程序有不利的影响。就好比,一个应用程序在默认情况下不能发送短信,读取联系人,或改变系统设置,像蓝牙。然而,应用程序可以通过权限明确请求这些特权。
当用户通过安卓市场下载应用程序,用户会有两个界面。第一个界面是信息的描述,评论和屏幕截图软件。用户选择“下载”进入下一个屏幕。第二个界面显示应用程序请求的权限。安装应用程序意味着授予应用程序所有请求的权限。显示在不同类别的权限来表示它们的功能。例如,权限在消息传递READ_SMS和WRITE_SMS分组在同一类别。用户可以找到关于权限的详细的信息。这有助于用户理解安装应用程序的潜在风险。例如,“FINE_LOCATION”,gps相关许可,会有以下描述“通过良好的位置来源如手机上的全球定位系统(在可用的情况下)。恶意应用程序可以使用这个来确定你在哪里,并可能消耗额外的电池。”
2.3 许可
Android目前的权限预警方法在遏制恶意应用程序上非常无效。这是因为当前展示的权限机制作为一种有效的风险沟通机制是失败的,因为它提醒用户对几乎所有危险权限的许可。许多应用程序可能有一个合法的需要访问的GPS位置,例如,天气预报软件得知用户当前位置会服务的更好。许多其他应用程序使用FINE_LOCATION权限提供用户的利益,因此,用户将看到相同的警告一次又一次。在大多数情况下,用户需要安装应用程序,尽管会有警告。这使得用户会选择忽略这些警告。当有恶意应用程序时,用户已经习惯于忽略这些信息,从而非常有可能根本没有查看的权限。
这样的效果已经在文献中讨论。在[13]中,分析了100个需要花钱的和856免费的Android应用程序,并发现“几乎所有应用程序(93%的免费和82%的付费)请求至少有一个“危险”许可,这表明用户习惯于安装应用程序与危险的权限。互联网权限是如此广泛要求用户扫描不考虑其警告异常。安全指导方针或反病毒程序警告安装应用程序访问互联网和个人信息都可能失败,因为几乎所有的应用程序与个人信息都有互联网。”
认为“警告科学文献表明,频繁的警告de-sensitize用户,尤其是大多数警告并不导致负面后果[22,15]。因此用户不太可能在这些系统安装时注意或获得权限提示信息。修改这些权限系
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[154171],资料为PDF文档或Word文档,PDF文档可免费转换为Word
您可能感兴趣的文章
- 饮用水微生物群:一个全面的时空研究,以监测巴黎供水系统的水质外文翻译资料
- 步进电机控制和摩擦模型对复杂机械系统精确定位的影响外文翻译资料
- 具有温湿度控制的开式阴极PEM燃料电池性能的提升外文翻译资料
- 警报定时系统对驾驶员行为的影响:调查驾驶员信任的差异以及根据警报定时对警报的响应外文翻译资料
- 门禁系统的零知识认证解决方案外文翻译资料
- 车辆废气及室外环境中悬浮微粒中有机磷的含量—-个案研究外文翻译资料
- ZigBee协议对城市风力涡轮机的无线监控: 支持应用软件和传感器模块外文翻译资料
- ZigBee系统在医疗保健中提供位置信息和传感器数据传输的方案外文翻译资料
- 基于PLC的模糊控制器在污水处理系统中的应用外文翻译资料
- 光伏并联最大功率点跟踪系统独立应用程序外文翻译资料
