法律状态公告日
法律状态信息
法律状态
2020-02-04
专利权的转移 IPC(主分类):G06F21/62 登记生效日:20200113 变更前: 变更后: 申请日:20140612
专利申请权、专利权的转移
2019-04-12
专利权的转移 IPC(主分类):G06F21/62 登记生效日:20190325 变更前: 变更后: 申请日:20140612
专利申请权、专利权的转移
2016-10-05
授权
授权
2014-10-15
实质审查的生效 IPC(主分类):G06F21/62 申请日:20140612
实质审查的生效
2014-09-10
公开
公开
技术领域
本发明涉及的是一种移动通信设备领域的方法,具体是一种用于Android系统的磁盘隐私数据残留漏洞检测方法,检测目标Android系统内部的隐私数据是否有被泄漏的风险。
背景技术
随着移动互联网的急速发展,越来越多的隐私数据被存放在移动智能设备中。而移动终端淘汰快、易丢失等特点导致了保存在移动智能设备中的隐私数据遭到泄露的可能大大高于传统PC设备。据统计中国每年废弃手机约1亿部。此外还有更多的手机会在报废前多次变更拥有者。
在移动智能设备的丢失、废弃和转手过程中,如何保护用户的隐私数据不被泄漏就成了一个很关键的问题。一般而言,移动智能设备的使用者在转交或抛弃设备之前会对设备中的隐私数据进行擦除操作,以防止和个人有关的隐私数据遭到泄漏,在Android平台上,可以选择的操作是利用系统提供的恢复出厂设置功能对用户数据进行擦除。但是Android系统提供的恢复出厂设置功能存在着安全隐患,在目前Android设备中,在某些特定的系统环境下,使用系统自带恢复出厂设置功能,无法像既定一样正确的删除所有用户数据分区的数据,虽然从逻辑上来看数据已经被清空,无法保证设备内部的用户数据得到了完全的擦除,有很大的可能出现数据残留的情况,能够使用多种磁盘取证工具进行提取。
目前的移动智能机市场中,还未有人给出发生数据残留情况的具体原因,也没有相应的检测方法。虽然有类似中国专利文献号CN103577567A(Android系统卸载应用删除垃圾文件的方法)、CN102609304A(Android手机内置第三方应用的管理方法)以及CN102256275A(恢复出厂设置过程中掉电保护的方法和移动通信终端),但针对日益繁多的各种定制化安卓系统,尚无一种技术可以实现系统隐私数据漏洞的检测。
发明内容
本发明针对现有技术存在的上述不足,提出一种用于Android系统的磁盘隐私数据残留漏洞检测方法,能够检测目标Android系统内部的隐私数据是否有被泄漏的风险。
本发明是通过以下技术方案实现的,本发明通过判断待检测设备的SD card分区和用户数据分区是否属于同一个Linux磁盘设备、是否安装第三方recovery,并进一步进行读写‐恢复‐再读写方式以检测待检测设备是否存在漏洞。
所述的判断,包括以下步骤
1)检测并提取待检测设备的基本信息;
所述的基本信息包括但不限于:Android版本号、Linux内核号、基带版本、Android系统版本、文件系统信息等。
所述的基本信息会用于协助步骤2进行Android数据残留漏洞诱因的检测,如Android版本号用于区分Android系统所使用的文件系统,Android2.3以前的Android系统使用的文件系统为yafffs2,Android2.3之后的Android系统使用的文件系统为ext4;文件系统信息用于帮助获取系统分区情况。
2)根据数据残留漏洞诱发的原因,提取待检测设备的额外信息,具体步骤包括:
2.1)从内建的Android数据残留漏洞诱因库中读取出Android数据残留漏洞诱因的语法描述。
2.2)除步骤1中提取出的基本信息外,根据Android数据残留漏洞诱因的语法描述,从待检测设备中提取出额外信息。
所述的提取出额外信息是指:待检测设备是否使用了第三方recovery,若使用了第三方recovery,读取第三方recovery的版本。
2.3)判断SD card分区和用户数据分区是否属于同一个Linux磁盘设备,如果为否,则认为待检测设备不存在漏洞,否则进一步判断:根据步骤2.2的额外信息,若待检测设备没有使用第三方recovery,则认为待检测设备不存在漏洞,否则进行下一步读写‐恢复‐再读写测试。
所述的读写‐恢复‐再读写包括以下步骤:
3.1)向待检测设备的用户数据分区内写入数据。
所述的写入的方法包括但不限于:安装应用程序、使用应用程序、通过应用程序下载数据。
所述的写入的数据包括但不限于:Android应用程序安装包Apk文件、Android系统用于存储隐私数据的SQLite文件以及大量的应用程序运行时所必须的资源、逻辑文件。
3.2)提取待检测设备中用户数据分区的磁盘镜像A。
3.3)调用待检测设备中Android系统提供的恢复出厂设置功能对步骤3.1)写入的数据进行擦除。
3.4)提取待检测设备中的用户数据分区的磁盘镜像B。
3.5)将磁盘镜像B和之前提取的未经过擦除的磁盘镜像A进行逐字节的对比,当两个镜像中相同磁盘地址的数据一样则认为该地址没有被正确擦除,当两个磁盘镜像之间90%的磁盘地址的数据一样,即相同率大于等于90%时,认为数据没有被正确擦除,即待检测设备存在漏洞。
技术效果
与现有技术相比,本发明是首个对Android设备数据擦除操作中会存在的数据残留漏洞进行检测的方案,在深入剖析该漏洞成因的基础上,做到自动化检测、测试以及输出报告。本方案的提出建立在充分理解Android平台数据残留漏洞成因的基础上,具有高效、高准确率等特点。
附图说明
图1为本发明流程图。
具体实施方式
下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
实施例1
根据分析,Android平台上数据擦除操作中的数据残留漏洞是由第三方recovery功能中的一些特殊机制引起的。Android平台的恢复出厂设置操作会调用recovery内实现的数据擦除功能,而在第三方recovery执行数据擦除功能的时候,大部分的recovery会先对Android设备的分区方式进行判断,当在Android设备中,SD card分区和用户数据分区同属于一个Linux设备,那么recovery在执行数据擦除操作的时候,会使用一种不安全的数据删除方法,这种不安全的数据删除方法会导致本应该被删除的数据仍保留在磁盘上。
本实施例具体如下:
1)提取待检测设备的Android版本号、Linux内核号、基带版本、Android系统版本、ext4磁盘分区信息。
2)从内建的Android数据残留漏洞诱因库中读取出Android数据残留漏洞诱因的语法描述。在本实施方案中,Android数据残留漏洞诱因为,在使用了第三方recovery的Android设备上,如果系统的用户数据分区和SD card分区属于同一个物理Linux磁盘设备,那么就会发生Android数据残留漏洞。所以逻辑检测流程如下:
2.1)判断SD card分区和用户数据分区是否属于同一个Linux磁盘设备,若否则步骤2检测结果为不存在,否则进入步骤2.2。
2.2)判断是否安装了第三方recovery,如果是,则步骤二检测结果为逻辑上可能存在,若否则结果为不存在。
3)当步骤2检测的结果为可能存在时,则对待检测设备进行下一步的Android数据残留漏洞测试。具体步骤如下:
3.1)向待检测设备用户数据分区内写入大量的数据。写入的方法包括但不限于安装应用程序、使用应用程序、通过应用程序下载数据。写入的数据内容包括但不限于:Android应用程序安装包Apk文件、Android系统用于存储隐私数据的SQLite文件以及大量的应用程序运行时所必须的资源、逻辑文件。
3.2)提取待检测设备中用户数据分区的磁盘镜像A用于之后的对比。
3.3)调用Android系统提供的恢复出厂设置功能对我们之前写入的大量存储在用户数据分区内的数据进行擦除。
3.4)提取待检测设备中的用户数据分区的磁盘镜像B。
3.5)将磁盘镜像B与之前提取的未经过擦除的磁盘镜像A进行逐字节对比,如果两个镜像中相同位置的内容一样,则认为该位置的数据没有被正确擦除,最后得出两个镜像之间的相似率,一般认为相似率超过90%即可认为数据没有被正确擦除,测试完成。
4)根据步骤2和步骤3的检测结果,最终给出待检测设备的检测结果,若步骤2结果为是,则待检测设备逻辑上可能存在Android数据残留漏洞,否则不存在。若步骤3结果为是,则待检测设备事实上存在Android数据残留漏洞,否则不存在。
所述的Android数据残留漏洞是指:在目前Android设备中,在某些特定的系统环境下,使用系统自带恢复出厂设置功能,无法像既定一样正确的删除所有用户数据分区的数据,虽然从逻辑上来看数据已经被清空,但是数据的内容仍然存在于磁盘上,能够使用多种磁盘取证工具进行提取。
机译: 用于检测错误的方法和装置伺服磁盘,作为伺服电动机的错误信号支持的磁盘,用于调节磁盘记录/播放的伺服电动机的方式,错误检测方法和跟随倾斜错误检测方法
机译: 用于检测错误的方法和装置伺服磁盘,作为伺服电动机的错误信号支持的磁盘,用于调节磁盘记录/播放的伺服电动机的方式,错误检测方法和跟随倾斜错误检测方法
机译: 用于检测伺服错误的方法和装置,用于确保伺服错误信号质量的磁盘,用于磁盘记录/再现设备的伺服控制方法,跟踪错误检测方法以及倾斜错误检测方法