基于Android移动客户端的互联网数据安全实证研究

2015-07-06 07:03何昱晨石文昌
中兴通讯技术 2015年3期
关键词:安卓痕迹

何昱晨 石文昌

摘要:基于Android移动客户端为研究平台,选取一种云为研究对象,对用户通过云Android客户端访问云端数据时在客户端留下的痕迹进行了研究;研究结果表明,在手机上存在访问云端数据的痕迹,从这些痕迹中能够提取与用户以及云相关的元信息,并且能从中推断部分用户行为。

关键词: 云数据安全;移动客户端;安卓;访问行为;痕迹

随着通信技术的不断发展和移动通信设备的不断革新,以智能手机为代表的移动设备已逐渐成为人们日常生活中不可或缺的重要组成。文献[1]对2014年手机互联网使用情况进行的总结,使用手机上网人群的比重已达到85.8%,手机超过PC成为收看网络视频的第一终端。移动互联网的应用与日俱增,在人们日常生活中扮演着重要作用,由此应运而生的便是人们对移动互联网数据安全的担忧。相关研究表明,移动设备面临的最大威胁来自以软件为中心实施的攻击,而其中很大一部分都是利用了浏览器漏洞[2-4]。使用智能手机等移动客户端访问互联网将会对互联网数据安全产生怎样的影响已成为一个亟待回答的问题。

1 问题及其研究方法

1.1 问题描述

云存储是得到广泛运用的互联网应用之一,它将数据存储能力作为一种服务提供给使用者,是一种重要的云计算服务,用户可以通过智能手机等移动客户端方便地使用该服务。而云存储的安全性[5-6]在一定程度上制约着云存储的发展,因此众多研究者将目光聚焦到云存储安全上。人们在享受互联网数据存储便利的同时也担忧互联网数据的安全性,那么,智能手机等移动客户端本身是否也会给互联网数据安全带来影响呢?这是本文关心的问题。

在常见的智能手机中,Android操作系统占有较大的市场份额。据IDC发布的2014年智能手机出货量数据,采用Android和iOS为操作系统的智能手机占96.3%,其中Android手机为81.5%[7]。因此,本文以Android移动客户端作为研究平台,选取中国实用的一种云为研究对象,研究Android移动客户端的访问行为对云端数据安全可能造成的影响。

本文采用Android移动客户端去访问存储在云端的数据,分析、判断客户端是否会留存与云端数据相关的信息,目的是回答以下问题,第一,客户端是否会留存反映云端状况的相关信息,如果有,在哪些位置能够找到这些信息;第二,使用者对云端数据不同的操作是否会对留下的信息产生影响;第三,不同的文件类型是否会留下不同的信息;第四,在使用Android客户端访问云端数据之后,客户端的状态是否会对信息产生影响;第五,这些信息中是否包含元信息,如果有,能了解云相关的哪些元信息,是否可能包含敏感信息;第六,从留下的信息中能否反向推断出使用者的行为。

1.2 Android系统存储结构

本文针对Android智能手机开展研究。Android手机往往拥有以下3种存储介质,容量很小的易失性存储器(RAM)、内部存储器(NAND-flash)和外部可插拔的SD卡[8],还有部分Android手机有一个模拟的SD卡,物理上是内部存储器,逻辑上是外部存储器,即SD卡。内部存储器上储存着所有重要的系统数据以及用户安装的应用程序的系统数据。

用户在安装应用程序的时候可以选择将应用程序安装到本地或者SD卡上,而与用户应用程序相关的数据通常会存储在内部存储器和外部SD卡上。在内部存储器上,应用程序相关的数据会被存储到/data/data/<应用程序包名>的文件夹下[9],并且在该文件夹下也有一些通用的子文件夹:lib存储库文件,databases存储SQLite数据库文件及数据库日志,shared_prefs存储配置信息,cache存储缓存数据,而files存储应用程序私有文件。在外部存储器上,应用程序数据存储位置并未统一,但是常见是以应用程序包名为名称的文件夹。

1.3提取信息的方法

本文选取中国实用的一种云为研究对象,用云的Android手机客户端访问云盘数据,通过分析手机内外部存储器的信息来判断用户数据和用户使用轨迹的安全性。因此在研究中就会涉及如何获得手机内部存储器和外部存储器的数据。

获得外部存储器的方法较为简单,以手机HTC Sensation X315e为例,只需将手机通过数据线连接到电脑上,在手机上选择打开USB存储,手机的SD卡就会被当作电脑的移动设备,可容易获得SD卡中的数据。还有部分手机的外部存储器是模拟的SD卡,当用数据线连接在电脑上时,这个模拟的外部设备会直接被当作媒体设备,无需在手机上执行任何操作便可以在电脑上访问手机的外部存储器,如Samsung SM-N900。

获得内部存储器中的数据可以通过adb pull命令将文件从手机内部存储器导出到电脑上,或者用dd命令得到镜像,再对镜像进行分析得到内部存储器中的数据。

1.3.1 用adb pull命令导出文件

在Android中,可以使用adb pull命令能将内部存储器中的文件导出到电脑。要获取Android应用程序相关的文件,就需要访问/data/data文件夹下的内容,而只有root用户才能访问该文件夹下的内容,因此在实验中需要获得root权限,当非root用户试图访问/data/data文件夹下的内容时会提示权限不足。

1.3.2 用dd命令制作镜像

镜像可分为单一分区镜像和整个内部存储器镜像,分别为分区和整个内部存储器的逐位拷贝。单一分区镜像能够获得分区中所有文件的内容、元数据以及被删除文件的信息,而整个内部存储器镜像还能获得分区之间和分区之外的数据[10]。

使用dd命令可以获得镜像,例如:dd if = /dev/block/mmcblk0p29 of = /sdcard/ddimg,if后是待拷贝分区,of后是输出路径。上述命令的意义是将/dev/block/mmcblk0p29设备文件复制到SD卡上,文件名称为ddimg。而分区被挂载的位置可以通过mount命令查看。

2 实验方法设计

本文在设计实验时借鉴了Grispos等人在云存储数据取证方面的实验思路[11],使用手机客户端对云端数据进行不同操作,判断云端数据是否会在手机上留下痕迹,如果有,进而分析不同的操作类型、手机及云存储服务手机客户端不同的状态是否会对痕迹产生影响。

实验的基本思想是:使用电脑将不同类型的文件上传至云盘,通过Android客户端对云盘中的文件进行不同操作。重复多次上述对文件的操作,每次对应着手机或云不同的状态。针对每次实验,分析内外部存储器上的文件,判断是否有云端痕迹残留在手机上。下面将分别从选取哪些类型的文件、对文件执行怎样的操作以及如何获得手机存储器的信息等方面对实验进行阐述。

2.1 文件类型的选取

云存储相当于一个远程的存储设备,因此用户往往在云盘上存储着常用的文档文件和较占本地空间的多媒体文件。故而,在本文选取常见的文档格式docx、pdf、txt,常见的图片格式png、gif、jpg、bmp、psd(PhotoShop专用格式),常见的音乐格式mp3、wma,常见的视频格式mp4、mov、flv、rmvb作为实验文件格式。其中flv是常见的在线视频文件格式,云存储不仅是一个远程存储设备还是一个在线存储设备,用户也可以使用它在线浏览视频。

2.2 对数据操作的分类

Grispos等人在使用云存储手机客户端访问云端数据时,将对数据的操作分为4种:在线浏览、在线浏览并下载、不执行任何操作、在线浏览并删除云端文件[11]。本文同样需要对同一类型的文件执行不同的操作,因此借鉴Grispos的思路将同一类型的文件上传4个,在云存储手机客户端上对同一类型的4个文件分别执行上述的4种操作。

手机本身包括两种状态,一种是开机状态,一种是关机状态,与本研究相关的还有两种与云存储服务相关的状态是注销用户和清除应用缓存。大多数需要登录的应用程序只有在用户主动注销用户的时候才会执行注销用户的操作,该操作可能会影响账户相关信息。而清除应用缓存则类似将应用恢复至刚安装时的状态,对应用程序的信息也会产生一定影响。因此本文将分析在实验结束之后保持手机开机、将手机关机之后再开机、云盘注销用户(退出登录)、云盘清除应用缓存这4种状态。

2.3 获得手机存储器数据的方式

在分析内部存储器时,选择分析镜像的方法。通过adb pull导出的文件只包含文件的内容,不包括文件的元信息,同时也不包含被删除的文件的信息。然而文件的元信息和被删除文件的信息都是研究中期望获得的。本文只关注与云存储手机客户端相关的数据,因此只需要制作/data所在磁盘分区的镜像即可。在分析SD卡的数据的时候,将手机通过数据线连接到电脑上,并选择打开USB存储,直接在电脑上分析文件。

分析过程如下:首先使用dd命令制作/data分区的镜像,再将镜像导出至电脑上,使用取证大师对获得的镜像进行分析,分析/data/data/文件夹下的子文件,再将它们导出到电脑上,使用SQLite Development对其中的SQLite数据库文件进行分析,用Notepad++对文本文件进行分析,用UltraEdit对二进制文件进行分析。

3 实验及结果分析

3.1 详细实验流程

大致的实验流程如图1所示。第一,在电脑上将文件上传到某云盘;第二,为手机获得root权限,将其恢复到出厂设置,打开“允许安装未知来源的应用程序”和“USB调试”选项;并在手机上安装云apk;第三,登录某云盘手机客户端,对文件相应操作,如表1所示;第四,保持手机和云盘在以下状态之一:保持手机开机、手机关机再开机、保持手机开机且云盘退出登录、保持手机开机且云盘清除数据、手机关机再开机且云盘清除数据;第五,制作手机data分区镜像,对SD卡上的文件和镜像进行分析。

3.2 实验环境

实验电脑为Dell,采用Win7专业版32位,CPU为Intel i5,其他辅助工具及版本如下:adb v1.0.31、取证大师v3.3、SQLite Development v4.0、NotePad++ v6.5、UltraEdit v21.20。

3.3 外部存储器结果

3.3.1 HTC手机实验结果

通过分析SD卡上以云应用程序包名命名的文件夹,能够得到如下结论:第一,所有文件类型都能够在SD卡上被发现;第二,文件类型会对能否在SD卡上发现文件产生影响。文档和音乐文件都是只要在线浏览便能在SD卡上找到文件;对于图片文件,psd类型的文件只要在线浏览便能在SD卡上找到,而bmp、gif、jpg、png类型的只有在线浏览并下载才能在SD卡上发现;只有在线浏览并下载的视频文件才能在SD卡上找到;第三,对文件执行的不同操作会对能否在SD卡上发现文件产生影响。所有执行在线浏览并下载的文件均能在SD卡找到;所有不执行任何操作的文件均不会出现在SD卡上;第四,手机或者XX云的状态不会对SD卡上存储的文件造成影响。由于篇幅所限,在这里只列出视频文件在SD上的结果,如表1所示。

3.3.2 Samsung手机实验结果

在Samsung手机上进行实验的结果大多数都与HTC手机上的相同,下面只列出不同的结果:第一,MOV类型的文件不会出现在SD卡上,即使该类型的文件被执行了下载的操作;第二,与HTC手机不同,在线浏览的psd类型文件不会出现在SD卡上。

3.4 内部存储器结果

3.4.1 HTC Sensation X315e实验结果

当手机在实验中保持开机时发现:cache文件夹下的uil-images文件夹中存储着缓存图片和视频的缩略图;files中的imei.dat文件中存储着手机的imei号。通过分析databases文件夹的数据库文件能够得到如下数据:filelist.db能够得到云盘缓存文件的详细信息;account.db能够得到用户详细信息;yidisk.db能够得到下载任务的详细情况。shared_prefs文件夹下的配置文件中包含云相关数据:当前是否在Wi-fi环境下上传和下载,是否自动备份照片和视频,云盘中是否存储图片,当前ip地址,最后登录的用户名及用户名类型。

而当手机和云盘保持不同状态时,本文发现,手机关机对cache、databases、shared_prefs文件夹中数据无影响;注销用户会导致cache文件夹内容被删除且不可恢复,对databases和shared_prefs文件夹无影响;而清除缓存则会删除这3个文件夹内容且不可恢复。

3.4.2 Samsung SM-N900实验结果

当手机在实验中保持开机时,从databases文件夹中能够得到更多信息:cloudp2p.db能够得到用户黑名单,好友信息,用户所参与的对话和群组的相关信息;account.db依旧能够得到用户信息;filelist.db能够得到云盘缓存文件详情,下载文件详情,用户分享动态相关信息,以及按浏览顺序存储的在线播放视频文件的详情。

而当手机和云盘保持不同状态时,本文发现手机关机会使databases和files文件夹增加与设备相关的文件,而对shared_prefs无影响;而注销用户对这3个文件夹数据几乎没有影响;清除缓存不会删除全部数据。databases中还有account.db,advertise.db等4个数据库文件;files中还保存着云登录时的html文件;shared_prefs中还能够发现用户ip地址。

3.4.3 Samsung SM-G9008V实验结果

Samsung SM-G9008V实验结果与SM_N900几乎没有差别,见3.4.2,只是在云盘清除缓存的情况下除了lib的所有文件都被删除了。

4 结束语

本文从客户端和服务器相结合的角度探究互联网数据安全的问题,国际上也有类似的研究。Grispos G等人研究智能手机是否能够成为云存储取证的代理[11],本文更关注数据访问痕迹的检测与分析。GAl Mutawa N等人以社交软件为研究对象,在手机上执行预定义的活动集合,借助手机的备份,通过人工分析探讨是否能从中发现与预定义活动集相关的信息[12],而本文借助于镜像,通过分析元数据和删除文件信息来研究Android移动客户端上的用户行为对互联网数据安全可能带来的影响。

本文以Android手机客户端访问云盘中的数据为场景,检测从手机上能否发现涉及云端数据安全的行为轨迹。实验研究表明,手机上留存有云端数据的访问痕迹,从这些痕迹中能够提取云端及用户相关的元信息,同时,借助残留信息能在一定程度上反向推测用户的行为,这对云端数据的安全性具有一定的负面影响,是互联网数据安全的一种隐患。可见,移动客户端给移动互联网的数据安全带来了新的挑战,值得业界重视,并采取有效措施应对相应的挑战。

参考文献

[1] 第35次中国互联网络发展状况统计报告 [EB/OL]. [2015-03-08]. http://www.cnnic.net.cn/hlwfzyj/hlwxzbg/hlwtjbg/201502/t20150203_51634.htm

[2] BECHER M, FREILING F C, HOFFMANN J, et al. Mobile security catching up? revealing the nuts and bolts of the security of mobile devices [C]//Proceedings of the Security and Privacy (SP), 2011 IEEE Symposium on. IEEE, 2011: 96-111

[3] DWIVEDI H. Mobile application security [M]. Tata McGraw-Hill Education, 2010

[4] CHAOUCHI H, LAURENT-MAKNAVICIUS M. Wireless and Mobile Networks Security [M]. Wiley-ISTE, October, 2009

[5] WANG C, WANG Q, REN K, et al. Privacy-preserving public auditing for data storage security in cloud computing [C]//Proceedings of the INFOCOM, 2010:1-9

[6] WEI L, ZHU H, CAO Z, et al. Security and privacy for storage and computation in cloud computing [J]. Information Sciences, 2014, 258(4): 371-386

[7] IDC:2014年Android市场份额81.5% iOS份额下降 [EB/OL]. [2015-03-08]. http://tech.163.com/15/0225/07/AJ9HL4H7000915BD.html

[8] KIM H, AGRAWAL N, UNGUREANU C. Revisiting storage for smartphones [J]. ACM Transactions on Storage (TOS), 2012, 8(4): 14-18

[9] HOOG A. Android forensics: investigation, analysis and mobile security for Google Android [M]. Elsevier, 2011

[10] FARMER D, VENEMA W. Forensic discovery [M]. Upper Saddle River: Addison-Wesley, 2005

[11] GRISPOS G, GLISSON W B, STORER T. Using smartphones as a proxy for forensic evidence contained in cloud storage services [C]//Proceedings of the System Sciences (HICSS), 2013 46th Hawaii International Conference on. IEEE, 2013: 4910-4919

[12] MUTAWA N, BAGGILI I, MARRINGTON A. Forensic analysis of social networking applications on mobile devices [J]. Digital Investigation, 2012, 9(S):24-33

猜你喜欢
安卓痕迹
雪季
痕迹(外一幅)
让iPhone变安卓,这是真的野
文物表情包
安卓系统的更新换代
小偷留下来的痕迹
让蜡笔的痕迹消失
封闭的安卓没有未来
学习安卓应用开发
安卓机器人