没有合适的资源?快使用搜索试试~ 我知道了~
制作和主办:Elsevier沙特国王大学学报Android数据存储安全:综述Haya Altuwaijri,Sanaa Ghouzali沙特阿拉伯利雅得沙特国王大学计算机和信息科学学院信息技术系阿提奇莱因福奥文章历史记录:2018年2月3日收到2018年6月29日修订2018年7月10日接受在线提供2018年保留字:Android安全Android数据存储物理威胁软件威胁Android加密A B S T R A C T由于移动性、持续连接性和应用程序多样性,智能手机的广泛采用已取代台式计算机和笔记本电脑成为主要计算平台。移动设备包含大量信息的存储,包括敏感信息,例如认证凭证、图片、视频、个人数据、工作信息等等。因此,保护存储在移动设备上的数据成为一个关键问题。在本文中,我们调查了2013年至2018年期间Android存储模型的安全性。在文献中发现的几种威胁可以归类为物理或软件威胁。此外,每个类别的现有解决方案都得到了强调。虽然Android提供了有价值的加密系统,包括全磁盘加密和密钥链,以提高数据存储的安全性,但存储在设备中的加密密钥仍然容易受到物理威胁。©2018作者制作和主办:Elsevier B.V.代表沙特国王大学这是一CC BY-NC-ND许可下的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。内容1.导言. 5442.Android数据存储模型5443.Android数据存储威胁模型5453.1.物理威胁5453.1.1.冷启动攻击5453.1.2.邪恶的女仆攻击5463.1.3.RowHammer攻击5463.2.软件威胁5463.2.1.恶意软件攻击5463.2.2.应用程序开发不足漏洞利用5463.2.3.基于设备公共信息的攻击5473.2.4.使设备生根3.3.有缺陷的出厂重置和远程擦除5474.Android数据存储威胁的解决方案5474.1.物理威胁解决方案4.1.1.CleanOS 5484.1.2.TinMan 5484.1.3.哨兵5484.1.4.装甲5484.1.5.锁栓549*通讯作者。电子邮件地址:sghouzali@ksu.edu.sa(新加坡)Ghouzali)。沙特国王大学负责同行审查https://doi.org/10.1016/j.jksuci.2018.07.0041319-1578/©2018作者。制作和主办:Elsevier B.V.代表沙特国王大学这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。可在ScienceDirect上获得目录列表沙特国王大学学报杂志首页:www.sciencedirect.com544H. Altuwaijri,S.Ghouzali/沙特国王大学学报4.1.6.Droidvault 5494.1.7.重放保护内存块(RPMB)分区5494.1.8.CATT 5504.1.9.装甲5504.2.软件威胁解决方案4.2.1.Android加密系统5504.2.2.其他解决方案5504.3.摘要5515.结论551参考文献5511. 介绍根据“Owasp.org不熟练的开发人员假设无法获得对内部存储器的访问,但是物理访问设备的攻击者可以将手机连接到计算机并检索敏感的个人信息。此外,恶意软件应用程序(应用程序)和合法的易受攻击的应用程序可能对敏感信息泄漏构成威胁隐藏在合法应用程序背后的特洛伊木马可以执行难以察觉的活动,目的是窃取用户此外,想要访问数据的攻击者可能会利用易受攻击的应用程序,例如具有过度特权权限的应用程序智能手机安全在过去几年中一直受到密集的研究工作 现有的综述论文呈现了流行的智能手机操作系统的技术现状(Khan等人,2015)(Ahvanooey等人,2017)(Zaidi等人,2016年)。Khan等人表明,类似于个人计算机(PC)恶意软件的移动恶意软件可以导致系统损坏或泄露私人用户信息(Khan等人, 2015年)。此外,他们还展示了通过在多个级别限制恶意活动来确保移动安全的关键点;应用程序开发人员级别,应用程序不同类型的移动操作系统和软件攻击已经在(Ahvanooey等人,2017年)。作者通过回顾2011-2017年期间发表的论文,全面概述了移动威胁,漏洞和对策Zaidi等人,2016)研究了2010-2015年期间的智能手机安全性。作者将攻击分为新旧攻击,并为每种类型提供了可能的解决方案。此外,他们还对2020年移动恶意软件的增长进行了估计。Android是世界上使用最多的移动操作系统,在2015年占据了智能手机市场的82.8%(www.idc.co该文献揭示了一组对Android数据存储的威胁,可被利用来执行攻击。例如,某些Android设备中的不可靠的工厂重置对所存储的数据的安全性和隐私性是重大威胁使用几种技术来保护存储在移动终端中的数据,主要是基于密码的数据加密。作者(Faruki等人, 2014)提供了一份关于一般Android安全问题和防御的调查。他们重点关注特定时间轴(2010-2013年)内Android恶意软件的增长情况以及建议的解决方案。他们根据目标、实现该目标的方法和解决方案的部署他们的结论是,没有一个单一的解决办法可以有效地解决每一个问题。Rashidi等人提出了另一项调查,该调查回顾并讨论了2010年至2015年期间的Android安全威胁和解决方案(Faruki等人, 2014年)。他们调查了技术(例如,基于静态和动态代码分析)来处理恶意软件的移动设备和调查的优势和弱点,每种技术。此外,Sufatrio等人介绍了一项关于Android安全性的调查,并根据应用程序的部署阶段(应用程序开发、应用程序在市场上的可用性、应用程序在设备上的安装、应用程序在设备上的执行以及应用程序在设备上的安全设置修改)提供了五个主要类别的缓解解决方案分类他们将现有的工作分为这五类,从而对它们进行了比较研究,并强调了每一类的局限性。此外,在(Sufatrio et al.,2015年,没有分类。本文旨在通过扩大安全威胁和解决方案的覆盖范围来补充之前关于Android智能手机上的内部数据存储的评论。我们认为需要对Android数据存储模型进行深入研究。因此,我们回顾了2013-2018年期间的Android攻击,威胁及其解决方案。此外,本文还提出了一种基于物理威胁和软件威胁的Android数据存储威胁模型的分类方法,并对每一类的研究成果进行了回顾。此外,还研究了每一类的缓解方案.本文的结构如下。第2节介绍Android数据存储模型。第3节介绍了Android数据存储威胁模型。它包含两个主要部分,即物理威胁和软件威胁。第4节概述了文献中发现的增强数据存储安全性的解决方案,并强调Android加密系统是保护数据的关键功能。最后,在第五章中对全文进行了总结,并对今后的工作进行了展望.2. Android数据存储模型Android是一个开源的移动操作系统,最初由Android Inc.开发有资金支持,后来被谷歌收购。2007年11月,Android的初始测试版发布,然后在2008年 9月 Android主要是为智能手机和平板电脑等触摸屏设备而设计的,目前它是在由Google领导的开放手机联盟(OHA)推动的Android开源项目(AOSP)下开发的(Faruki等人, 2014年)。Android基于Linux内核,其应用程序是用Java编写的。然而,本机代码和共享库是用C/C++开发的(Faruki等人,2014年)。在Android框架中,存在独特的存储替代方案,如其访问控制组件所指示的,其可以被划分为三类:系统、应用程序特定的和公共的,如图所示。1.一、系统存储是整个Android操作系统所在的目录,由Linux访问控制组件保护。应用程序特定存储是在特定应用程序控制下的一个点,并且只能由该应用程序读取和写入,通常安装在/data/上。它托管应用程序的私有目录,这些目录通常用于存储敏感信息,如登录凭据。另一种存储选择是共享公共存储(内部主SD卡),它安装在/sdcard/或/mnt/sdcard/上,H. Altuwaijri,S.Ghouzali/沙特国王大学学报545Fig. 1. Android存储模式选项和安全性。用于在应用程序之间共享信息。它主要用于存储用相机和麦克风制作的多媒体文件;此外,它通过USB连接到计算机作为下载的文档,视频,图像等。此外,一些Android设备包含外部,可移动SD卡,被归类为公共共享存储(Mohini等人,2013年)。它提供与内部SD卡相同的功能,但可以由用户物理地移除和插入。它被称为第二代SD卡。然而,主SD卡和次SD卡有时被称为外部存储器(Mohini等人, 2013年)。为了保护这些存储分区,Android依赖于底层Linux文件系统提供的自主访问控制(DAC)机制来实现对系统和应用特定存储的访问控制。对于共享公共存储,没有细粒度的访问控制,它只受READ和WRITE权限的保护,因此任何应用程序在获得相关权限后都可以读取或写入共享公共存储中的任何文件夹(Simon和Anderson,2015)。Android提供加密算法,允许开发人员加密数据以提高安全性。Android提供javax。密码包,它为实现加密、解密和密钥协商算法的密码应用程序提供类和接口(Liu等人, 2015年)。3. Android数据存储威胁模型本节演示图2所示的Android数据存储威胁模型的评估。它识别Android数据存储中可能存在的威胁和漏洞,分为物理威胁和软件威胁。有缺陷的恢复出厂设置可以分为软件威胁和物理威胁。3.1. 人身威胁一组研究人员专注于Android智能手机的物理威胁,因为机密数据可能在使用后很长一段时间内因此,在被盗的设备上获得对设备的物理访问的攻击者可以快速获取内存内容(Developer.android.com研究人员在(Xia et al., 2015)研究了Android中的数据暴露问题,以强调这是一个真正的问题。他们分析了14个最受欢迎的Android应用程序,发现它们可以检索敏感数据(例如,密码)通过转储随机存取存储器(RAM)或内部存储在13个应用程序后10分钟。更具体地说,文献揭示了两种类型的攻击,冷启动攻击和邪恶女仆攻击,当攻击者获得物理访问权限时,可以对Android设备3.1.1. 冷启动攻击冷启动攻击依赖于RAM在计算机关闭后保留数据一段时间的事实时间取决于RAM芯片的温度,它可以随着RAM的冷却而因此,可以将RAM重新插入另一台计算机以获取其内容,例如加密密钥。这种攻击可以针对所有基于软件的加密技术进行。 在(Tang等人,2012年)研究人员研究了这种类型的攻击是否可以针对Android全磁盘加密(FDE)(在图二. Android数据存储威胁模型。546H. Altuwaijri,S.Ghouzali/沙特国王大学学报部分4.2.1.1)。他们建立了Frost工具,这是一个恢复映像的工具。在获得对智能手机的物理访问权限后,该工具将安装在恢复分区中。使用Frost,可以从RAM中检索加密密钥,然后打破FDE加密。Frost需要解锁的引导加载程序1来破坏FDE,因为解锁过程会擦除所有用户数据。因此,从RAM恢复加密密钥是不可能的。然而,Frost也可以用来获取手机的内存并离线分析。研究人员能够从物理RAM转储中访问最近的电子邮件,图片和浏览器3.1.2. 邪恶女仆袭击任何基于软件的加密都需要一部分未加密的磁盘;在Android中,这是整个系统分区。Müller等人,2013年)证明,邪恶的女仆攻击可以对智能手机,因为Android离开主引导记录和整个系统分区未加密。在Evil Maid攻击中,拥有物理访问权限的攻击者可以用修改后的Android(包括按键记录)替换整个Android系统。作者提出了一个EvilDroid工具,该工具表明,即使使用加密设备,Android系统分区也可以通过键盘记录进行更改。该工具预览修改后的PIN请求界面,该界面将PIN存储在未加密的缓存分区中,因此,在获取PIN后可以访问设备上的所有数据。研究人员证实,对Android设备进行邪恶女仆攻击是可能的。此外,研究表明,对策似乎很棘手。制造商应该考虑这个问题。引导加载程序需要锁定并在解锁前擦除用户分区。3.1.3. RowHammer攻击RowHammer攻击依赖于深层的内存管理弱点它允许通过重复访问(锤击)内存单元翻转内存位,导致未经授权的更改和敏感内存区域的破坏(Götzfried和Müller,2014年)。在Android中,通过实施Drammer(一种基于RowHammer的确定性攻击),已经利用了这个复杂的漏洞(Götzfried and Müller,2014)。作者表明,Drammer 可以获得权限升级以获得 root 权限,并且可以由任何Android应用程序启动,无需特殊权限,也无需依赖任何软件漏洞。此外,作者强调,这种类型的攻击无法通过当前的防御来3.2. 软件威胁本节说明了一些基于软件的威胁,包括恶意软件攻击、应用程序开发不足和设备root。3.2.1. 恶意软件攻击在(van der Veen等人,2016)强调了从Android设备内存中窃取个人信息的问题。他们分析了26个Android应用程序,以检查这些应用程序如何处理内存中当前或最近被操纵的数据。在分析中,在使用应用程序时和终止后都对系统进行了完整的内存转储,结果表明,大多数分析的应用程序都将敏感和个人数据以明文形式保存在内存中。这一分析促使研究人员构建特洛伊木马,该木马将隐藏在合法应用程序后面,只允许用户拍照并分享,而在后台,它将监视1引导加载程序是启动Android设备时运行的第一部分,它处理引导操作系统的指令。活动进程,并转储内存扇区时,进程正在运行恶意软件应用程序能够利用目标应用程序中的漏洞并检索登录凭据。用户行为和开发移动应用程序时的不良做法是引入漏洞的原因。此外,无论是在可见性还是手机性能方面,用户都没有注意到这种攻击。这项研究提出了一种不需要物理访问的内存攻击3.2.2. 应用程序开发不佳开发人员通过构建易受攻击的应用程序来影响数据的安全性,例如构建特权过大的应用程序、滥用加密应用程序编程接口(API)以及将非敏感但非共享的数据保存在公共存储上。3.2.2.1. 特权过高的应用程序。Android权限系统是一种通过限制应用程序对资源的访问来确保安全和隐私级别的方法,除非用户接受访问权限。应用程序开发人员在代码中识别所需的权限,并且在安装应用程序时,如果许可是否与应用程序相关(Stirparo等人,2013年)。安卓权限遭诟病作为粗粒度(Tiwari等人,2015年),许多应用程序获得了比必要的更多的权限;例如,如果Flipkart购物应用程序请求互联网访问,它可以发送和接收来自任何其他网站的文件,而不仅仅是Flipkart.com ( Stirparo 等 人 , 2013 年 ) 。 由 于 粗 粒 度 的 权 限 、Android开发者的不良做法、不称职的权限管理以及Google提供的权限文档不足,有许多应用程序具有不必要的权限。这些应用程序违反了最小特权原则(Stirparo等人,2013年),并可用于访问敏感资源。Android权限问题和对策的系统综述已经完成(Tiwari et al.,2015年)。该研究指出,权限过大的应用程序可能是Android安全面临的最严重威胁,它侵犯了用户隐私和安全,并导致个人信息泄露。构建特权过大的应用程序的主要原因如下:开发人员可能会复制代码并在不理解它的情况下应用它,可能会请求他们认为是强制性的并且与他们设计的功能相关的权限,但事实并非如此(Tiwari等人,2015年)。3.2.2.2. 滥用加密API。Android提供加密图形API,允许开发人员保护移动设备上的密码和个人信息等敏感数据。研究人员在(Fang等人,2014)调查了开发人员是否正确使用这些加密API来实现所需的安全级别。研究人员采用静态分析的方法,构建了一个轻量级的加密误用度量工具“CryptoLint”.该工具分析应用程序的代码并检查常见的缺陷。一项大规模的实验分析了11,748个Android应用程序,发现88%的应用程序滥用了密码学。对申请的评估是基于一套影响所需安全性的已定义规则的集合,并且如果任何应用违反了其中一个规则,则认为它是不安全的。最后,最终结果显示,有超过10,000个易受攻击的应用程序被认为是安全的应用程序,因为它们使用加密API,但实际上,它们没有正确使用它。3.2.2.3. 将非敏感但非共享的数据保存在公共存储中。 一般数据可以分为三类:敏感数据(如密码)、与其他应用程序共享的公共数据(如日期和时间)以及不与其他应用程序共享的非敏感数据(如用户的虚拟世界标识符,包括帐户名称和个人资料照片)。在Android中,前两种类型H. Altuwaijri,S.Ghouzali/沙特国王大学学报547在其存储模式中获得显著关注。然而,对于第三种类型,Android鼓励开发人员将此类数据保存在公共存储分区中。这种做法在Android当前的存储模型中可以被认为是此外,如果开发人员无法识别所有敏 感 数 据 , 就 会 出 现 问 题 , 这 会 导 致 信 息 泄 漏 ( Simon 和Anderson,2015)。Simon和Anderson在2015年进行的一项研究调查了实际应用程序中上述问题的发生情况,选择了17个最喜欢的Android应用程序,并检查它们是否正确存储数据结果显示,有13款应用将用户的私人信息留在因此,可以提取关于侵犯其隐私的用户的许多信息。开发人员通过识别数据组并对其进行正确处理来影响用户数据的安全性该研究提出了两种解决方案;首先,在将数据保存到公共存储之前,正确使用加密API对数据进行其次,将数据保存在内部存储中的应用程序特定分区(/data)中,因为每个应用程序只能访问其分区。3.2.3. 基于设备公共信息的Android中的设备公开信息是指应用程序在获得所需权限后可以访问的任何信息。这些信息包括Android_ID、Google帐户电子邮件、电话号码、Wi-Fi MAC地址等,应用程序使用这些信息来识别用户(Egele等人,2013年)。目前,许多应用程序依赖于与远程后端服务的通信来执行功能,这需要身份验证机制。在(Egele等人,2013)调查了在应用程序中使用设备公共信息进行用户身份验证的漏洞。作者成功地利用了这个漏洞并执行了身份转移攻击,因为验证用户所需的所有信息都是可用的,并且可以被任何应用程序访问。恶意应用程序从受害者的设备中窃取所有设备公共信息,然后在没有任何用户交互的情况下将其发送到攻击者设备。之后,攻击者安装易受攻击的应用程序,它将直接登录受害者的帐户,因为所需的信息是可用的。这种类型的攻击可以应用于任何依赖设备公共信息来验证用户的应用程序。此外,作者还提出了一个动态分析,以评估Google Play中最受欢迎的1000个应用程序。结果表明,其中41个被归类为脆弱。其中两个是最受欢迎的消息应用程序,WhatsApp和Viber。3.2.4. 使设备如果设备已被“root”,则不安全数据存储的风险会增加更多。使设备生根绕过了生产商设置的限制和约束,并给予Android用户特权访问设备的子系统以安装未经批准的(由Google)应用程序,如果设备过时且不再由制造商更新,则将OS更新到Android的最新版本,使用自定义主题等(Bianchi等人,2017年)。其结果是,设备容易受到攻击和其他安全问题,如数据泄漏漏洞(卡巴斯基实验室,2017)。获得root访问权限的过程会破坏Android的大部分3.3. 有缺陷的出厂重置和远程擦除Android提供了内置的“在设备丢失或被盗的情况下,用户可以使用远程地进行密码编码,并通过执行远程工厂重置来擦除数据,远程工厂重置从设备中移除除了保存在外部存储器中的数据之外的所有数据(Poonguzhali等人, 2016年)。在(Mohini等人, 2013年)研究人员通过研究来自5家供应商的21款Android智能手机(Android版本从v2.3.x到v4.3),分析了Android 中恢复出厂设置的有效性。他们发现,只有当用户在Android图形用户界面(GUI)的出厂设置中选择附加选项“外部存储”时,才能擦除外部存储但是,如果用户使用Recovery/Bootloader重置设备,而不是使用GUI中的设置,则外部存储器不会被清理(见图1)。3.第三章。此外,他们发现所有设备都没有正确清理该研究得出了一系列关于出厂重置的关键问题,由于出厂重置存在缺陷,Android v2.3.x没有提供正确的数据删除。此外,Android不提供适当的删除内部和外部SD卡在所有版本.此外,供应商推动对设备的不完整升级,并且较新的设备缺乏驱动程序支持,以进行应由供应商提供的正确删除,这可能会影响出厂重置过程。Android全磁盘加密有可能减轻有缺陷的工厂重置问题。然而,研究人员发现,由于有缺陷的工厂重置,加密密钥可以恢复。为了缓解这个问题,研究人员建议用随机字节文件填充感兴趣的分区,以覆盖所有未分配的空间或“逐位”覆盖整个分区(Mohini等人, 2013年)。为 了 保 护 被 盗 设 备 中 的 数 据 , 用 户 可 以 使 用 移 动 反 病 毒(MAV),它提供了设备的“远程擦除”和“远程锁定”。MAV需要管理员权限,该权限应由用户在设置上启用,如果未启用,MAV无法使用内置的擦除和锁定功能,也无法进行可靠的逐位分区以清理数据存 储 。 ( “ 远 程 振 铃 、 锁 定 或 擦 除 丢 失 的 设 备 - 帐 户 帮 助 ” ,www.example.com,2016)中的一项研究Support.google.com首先在Android 2.3.5设备上安装这些应用程序,然后查看应用程序结果表明,MAV可能是有缺陷的,原因是执行技能差,Android API限制和导致滥用API的不正确文档,以及允许攻击者绕过MAV保护的供应商自定义使用MAV存在几个问题;在远程擦除和锁定后,提供给用户的信息不正确,例如,即使禁用了管理员权限,当用户请求擦除时,MAV仍显示“成功擦除”。此外,使用MAV Web界面,用户可以访问他们的数据并执行远程锁定和擦除;然而,认证过程很弱,因为大多数MAV对密码没有限制,例如,接受四个字母作为密码。此外,MAV依赖于运营商网络,这可能是不安全的.研究推断,MAV遥控擦除功能不能使用作为有缺陷的内置出厂重置的替代方案4. Android数据存储威胁的解决方案本节介绍了针对上述威胁的建议解决方案,这些解决方案也可分为物理解决方案和软件解决方案。4.1. 物理威胁解决方案一组研究论文提出了解决Android设备中物理威胁问题CleanOS,TinMan,Sentry,548H. Altuwaijri,S.Ghouzali/沙特国王大学学报图三. 大多数设备提供出厂重置(Mohini等人, 2013年)。Armored、Deadbolt、DroidVault、Replay Protected Memory Block(RPMB)partition、CATT和ARMOR是几篇论文中的不同这些对策的概要见表1。4.1.1. CleanOS在(Xia等人,2015年),研究人员提出了“CleanOS”的原型,这是一个基于Android的操作系统,它可以识别RAM和内部存储中在特定时间内未使用的敏感数据,对它们进行加密,然后将加密的密钥保存在云中。因此,保持清洁的环境,以防设备被盗。但是,CleanOS不保护使用中的数据;它旨在通过保护一段时间内不使用的数据来最大限度地减少数据暴露此外,它容易受到网络攻击,攻击者可以在密钥发送到云端时嗅探密钥4.1.2. TinmanIn(“javax.crypto-AndroidDevelopers,”Developer.android.com,2016)研究人员试图通过提出使用卸载机制的“TinMan”原型系统来减轻数据暴露问题并保护内存中的机密数据。它将凭据访问与应用程序的其他功能分开,并提供一个可信节点来存储这些凭据。他们专注于机密数据,如密码,银行帐户,社会安全号码和信用卡号码,这被命名为机密记录(cor)。TinMan将cor从常规的私有数据中分离出来,并对其进行保护(见图4)。该机制旨在避免在设备上存储敏感数据,因此当设备丢失或被盗时,没有什么可失去的。可信节点可以是公司内部的服务器或可信云上的虚拟机,而不是设备本身,因此应用程序需要访问可信节点获取机密数据。然而,这种解决方案具有重大挑战,因为机密数据残留在许多地方,并且难以全部识别它们。此外,它可能会降低应用程序4.1.3. 哨兵在(Colp等人,2015年)。该研究的重点是仅在屏幕锁定时保护数据,因为在解锁状态下,攻击者可以使用用户界面访问数据。问题是当设备被锁定时,数据会在RAM中保留一段时间,这使得它容易受到物理攻击。因此,对于所提出的解决方案,是在屏幕被锁定时加密敏感应用的存储器页面,并且在屏幕被解锁时解密。然而,主要的贡献是避免将加密/解密密钥存储在RAM中,而是使用ARM片上系统(SoC)。ARM是Advanced RISC(精简指令集计算机)机器公司的缩写,该公司基于RISC架构开发ARM处理器WhatIs.comARMSoC架构被最近的智能手机和平板电脑所使用本文介绍Sentry的主要局限性是它导致较低的性能。4.1.4. 装甲在(Müller等人,2013年)研究人员提供了一种对抗物理攻击的对策,他们建造了 “ 装 甲 ” ,H. Altuwaijri,S.Ghouzali/沙特国王大学学报549表1物理威胁解决方案摘要。解决方案优点和缺点密码提示修复的方式,加密密钥是书面-十直接进入CPU寄存器。CleanOS加密敏感数据,把钥匙存到云端TinMan分离机密数据,将它们保存在可信节点中。通过以下方式保护加密密钥防止将它们保存在RAM中。存储加密密钥,ARM微处理器的CPU寄存器内的AES中间值Deadbolt保护FDE键,安全地安装RAM。Droidvault利用TrustZone操纵未加密的数据。RPMB强制所有认证向RPMB安全存储分区发出的读和写命令。因此,可以防止存储器重放攻击。CATT保护现有易受攻击的遗留系统免受RowHammer攻击,无需计算开销。装甲探测所有可能RowHammer错误具有高水平的信心和准确性。不要保护正在使用的数据。易受网络攻击。难以识别位于多个位置的机密数据。App的性能下降。导致性能下降。对最终用户来说不切实际。容易受到对存储的卷密钥的应用程序很难在安全数据和不安全数据之间划清界限。TrustZone依赖于处理器,需要对现有设备进行固件更新.––在系统中出现锤击行的情况下会带来性能开销。4.1.5. 死栓‘‘Deadbolt” prototype application has been developed in (由于移动电话是永远开着的,很少关机,FDE键保留在内存中,即使当设备处于锁定屏幕状态。Deadbolt保护FDE密钥,同时通过(在锁定屏幕上)卸载加密数据分区并安全地恢复存储RAM的密钥,仍然提供基本的移动功能。Deadbolt的主要限制是它仍然容易受到对存储的卷密钥的离线密码猜测攻击。4.1.6. DroidvaultDroidVault(Li等人,2014)使用TrustZone在Android设备上提供安全的数据保险库。TrustZone技术提供可信硬件,允许开发各种安全服务。与操作系统并行,TrustZone是一个单独的环境,可以运行通过硬件屏障与内核操作系统隔离的安全功能(Zhao等人, 2014年)。利用TrustZone,Droid-Vault在Android上提供了一个安全的存储平台,因为数据以加密的形式存储在文件系统上,而未加密的数据仅在TrustZone中进行操作 DroidVault是一种基于(Li等人,2014)评价。然而,它也有局限性。首先,应用程序很难在安全数据和不安全数据之间划清界限其次,信任区是依赖于处理器的,因此它并不适用于所有设备。第三,它需要在现有设备中更新固件。最后,该系统尚未在智能手机或平板电脑上实现,而是在运行Android操作系统的可编程板上实现。在ARM微处理器的CPU寄存器内的高级加密标准(AES)的加密密钥和中间值一个概念验证的实现是这样做的,1)通过USB将手机连接到计算机,2)作为root登录,所以它需要root设备,3)将一系列关键位写入CPU寄存器,4)运行清理程序,从RAM中擦除所有关键残留物这种实现对最终用户来说是不切实际的;研究人员建议让Android4.1.7. 重放保护内存块(RPMB)分区在root Android中,用户区域分区可以使用读/写系统调用快速删除或黑客攻击因此,黑客可以备份该分区并将其恢复到另一部手机以访问数据(Reddy 等人, 2015 年)。 RPMB 是嵌入式多媒体卡(eMMC)中的特定存储区域。它是一个安全的存储parti-灰,其中,所有的读和写命令发出的RPMB必须进行身份验证。作者在(Reddy等人,2015)实现了这种基于硬件的机制,并开发了见图4。 Tinman通过应用卸载机制分离cor并对其进行保护(Developer.android.com550H. Altuwaijri,S.Ghouzali/沙特国王大学学报RPMB驱动程序接口提供安全的数据存储对物理攻击。4.1.8. CattCATT是针对RowHammer攻击提出的第一个实用的基于软件的防御(Brasser等人,2017年)。研究人员给出了该移植方案的设计和实现CATT的主要思想不是防止位翻转,而是将位翻转限制在已经在恶意应用程序的地址空间中的内存页。因此,需要对用户和内核空间进行强隔离,以确保攻击者无法利用RowHammer来翻转内核内存中的位CATT解决方案已成功有效地应用于Android操作系统,因为它不影响系统的运行时性能和稳定性。4.1.9. 铠甲ARMOR,一个运行时内存热行检测器,是曼彻斯特大学计算机科学学院(Ghasempour)开发的一个针对RowHammer攻击的硬件防御系统例如,2015年)。ARMOR解决方案基于对DRAM中每行激活次数的监控,并检测哪些特定行在运行时有被“锤击”的风险。它可以检测所有可能的RowHammer错误,具有很高的置信度和准确性。此外,它是可扩展的并且与技术无关(Ghasempour等人, 2015年)。4.2. 软件威胁解决方案软件威胁解决方案主要基于加密方案,这是保护设备上数据的关键安全功能之一Android提供了几种加密系统,可用作基于软件的威胁的对策。4.2.1. Android加密系统Android提供了两种主要的加密系统:全磁盘加密(FDE)和密钥链。4.2.1.1. 全磁盘加密。自 Android 4 (2011 年 10 月发布)以来,Android开发人员提供了对Android设备进行加密的FDE,以防止数据泄露并保护用户免受数据盗窃(Müller等人, 2013年)。但是,版本4.x并不一定表明设备支持加密,4.0设备,不支持加密(Hruska,2016)。FDE使用用户的密码或PIN锁定屏幕,通过基于密码的密钥导出功能2(PBKDF 2)导出加密密钥,以对设备进行加密。其他锁屏(如模式锁定功能)无法使用,但最新版本的Android 5除外,其中PIN、密码 和 模 式 可 用 作 加 密 密 钥 ( “ 全 磁 盘 加 密 |Android OpenSourceProjectSource.android.com” , www.example.com , 2016年)。因此,加密的能力取决于密码的强度(Teufl等人,2014年)。此外,要求用户每次想要解锁屏幕时都输入加密密码,这使得他更不可能选择安全密码。此外,当用户解锁屏幕时,攻击者肩部冲浪的可能性也会增加,这也会泄露加密密码。 此外,FDE是一个冗长的过程,会使器械在此期间不可用,具体取决于器械功能; FDE可能会降低器械性能。一旦启用,如果设备未恢复出厂设置,则无法恢复。如果用户忘记了密钥,就没有办法取回数据(Bianchi等人, 2017年)。默认情况下,此加密功能处于禁用状态,用户必须手动激活它,这会带来安全风险。此外,它只能在使用PIN锁或密码时激活(Müller等人, 2013年)。FDE不加密整个磁盘,它加密仅在(/data)处挂载的用户分区,该分区托管应用程序的私有目录。每个应用程序都有自己的特定(/数据),它对用户是隐藏的,不能被任何其他应用程序读取或写入。它通常用于存储敏感数据,如配置文件,保存的游戏数据,或任何其他类型的文件,用户不应该篡改(Support.google.com此外,FDE从不应用于外部存储(Bianchi等人, 2017年)。然而,在最近发布的Android 6.0(2015年10月)中,默认情况下必须进行全磁盘加密(Hruska,2016)。它加密应用程序在Android 6Compat-Password Definition中指出,加密必须使用AES和128位(或更高)的密钥,并且在存储之前应使用锁屏密码加密密钥。加密密钥应该是AES加密的,锁屏密码使用慢速拉伸算法(例如,PBKDF2或scrypt)。如果用户未指定锁屏密码或禁用密码进行加密,系统应使用默认密码包装加密密钥总体而言,FDE取决于Android版本和设备制造商,因为每个制造商都为他们的设备提供定制版本的Android OS(Teufl等人,2014年)。表2展示了基于Android版本和可能威胁的不同FDE功能。这些版本都没有将FDE应用于外部存储。4.2.1.2. 钥匙链 Android 4.0版引入了KeyChain API,允许开发人员安全地存储应用程序中使用的用户凭据。它与FDE是分开的,因为即使FDE系统未激活,它也可以使用这种加密方法取决于开发人员糟糕的开发人员选择可能导致严重的安全问题。此外,如果Android系统已经通过FDE加密,则Android KeyChain不会提供额外的保护。与FDE一样,用户 KeyChain使用与在FDE中相同的在屏幕锁定中使用的密码,并且因此,如果已经通过应用蛮力攻击确定了用于FDE系统的密码,则不需要对KeyChain应用另一攻击(Teufl等人, 2014年)。4.2.2. 其他解决方案基于上面讨论的Android加密系统问题,Android安全存储应用已经在(Xiaet al.,2015年)。它提示用户以安全的方式将其数据存储在设备上,而无需额外的要求。所提出的系统为用户提供了加密特定文件而不是完全加密的选项。此外,文件可以保存在未加密的格式,而不像FDE那样进行出厂重置。用户可以选择将文件存储在安全存储中,然后这些文件将使用基于密码的加密标准机制进行加密。该机制生成两个密钥;从用户的密码生成的主密钥和用于加密敏感数据的内容保护密钥,并且其由主密钥加密。拟议中的应用程序的主要缺点是,它依赖于用户的密码,可以被盗或忘记。与密码相比,用户的生物识别信息不能轻易伪造、复制或共享。Google发布了Android 6.0(2015年10月发布),其中包括指纹API,H. Altuwaijri,S.Ghouzali/沙特国王大学学报551表2FDE功能和威胁。Android版本-发布日期加密分区加密密钥可选或必需限制和威胁Android 42011应用程序分区(/data)PIN和密码可选-加密必须手动激活。- 系统的安全性取决于密码的强度- 易受外部暴力攻击。Android 52014应用程序分区(/data)P
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功