分类 手机取证 下的文章

最近接到一部手机,需要恢复手机中删除的照片。手机型号为vivo X5Max+,系统为Funtouch OS 2.0(基于Android 4.4.4)。尝试获取ROOT权限失败,尝试使用DC-4501工具箱中的“MTK Android 高级工具”关机镜像,失败。

经过一番研究,发现这部手机每次连接电脑的时候,默认情况下仅仅为手机充电。下拉通知栏,点击当前连接状态的通知,可以进行USB设置,连接方式有4中可选,分别是只充电、U盘功能、媒体设备(MTP)、相机(PTP),如图1、图2所示。(“只充电”模式下无法在电脑端对手机进行截图并保存到电脑,图1、图2是将手机设置成MTP模式后截的图。)

图1
图 1 下拉通知栏
图2
图 2 USB设置选项

将USB连接方式设置为“U盘功能”后,电脑右下角出现了正在安装驱动的提示,稍等片刻,资源管理器中出现了两个盘符,其中F盘无法打开,G盘总容量为24 GB,为data分区中的SD卡部分。如图3所示

图3
图 3 以U盘模式将手机连接计算机

打开FTK Imager,点击工具栏的图标图标1创建镜像,证据类型选择“Physical Drive”,在列表中选择“\.\PHYSICALDRIVE2 -Linux File-CD Gadget USB Drive [25 GB USB]”,然后填写案例存储路径等案例信息后,点击“Start”开始镜像。大约10分钟后,镜像完成,并自动计算了哈希值。如图4所示。

图4
图 4 使用FTK Imager创建镜像

使用FTK Imager加载刚刚创建的镜像,在“\DCIM.thumbnails\”、“\DCIM\Camera\”等目录下发现大量已删除的文件,如图5所示。

图5
图 5 使用FTK Imager加载创建的镜像

使用取证大师加载创建的镜像,在“\DCIM.thumbnails\”目录下检出124张删除的缩略图,说是缩略图,但分辨率并不低,很多都是480×270甚至更高分辨率。另外在“\DCIM\Camera\”目录下检出58张已删除的照片,在“\tencent\MicroMsg\WeiXin\”目录下检出几张已删除的微信拍摄的照片,在其他一些目录中也有收获。

选择取证大师工具栏图标2数据恢复按钮,选择签名恢复,恢复文件类型选择“JPEG图片(标准)”和“JPEG图片(非标准)”,点击“开始恢复”启动签名恢复功能。

经过半个小时的等待,恢复出了4万多张图片,剔除占大多数的缩略图及应用缓存图片,筛选出了不少委托方需要的照片。

图6
图 6 使用取证大师进行签名恢复

总结:

Android手机照片恢复主要的思路是从手机存储设备文件系统层面按照图片文件的特征进行签名恢复,而如何从文件系统层面接触到手机中的数据是最主要的问题。

如果手机带有外置SD卡,直接对SD卡制作镜像并分析即可;如果照片存在于机身内存,首先考虑ROOT后制作全盘镜像。对于系统版本比较低的Android手机,可以使用ROOT工具获取ROOT权限后使用手机取证工具获取手机全盘镜像;对于近两年的一些MTK芯片的手机,可以使用手机取证工具在关机状态下获取镜像;对于一些已经物理损坏或其他方式都解决不了的手机,可以采用ChipOff拆芯片的方式,直接对手机存储芯片进行镜像。

本例中,手机没有外置存储卡,尝试ROOT失败,虽然是MTK芯片,但是尝试关机镜像失败,而拆芯则风险太大。幸好这部手机有“U盘模式”,可以连接电脑对手机中的部分区域进行镜像。

注:MTP模式下虽然也可以从计算机上读取手机中的数据,但和U盘模式有很大区别。MTP(Media Transfer Protocol)是上层应用协议,手机通过MTP模式连接计算机,计算机端并不能直接访问手机中文件系统。

手机取证在电子取证中的所占的比重一天比一天大。三五年前,大部分涉及到电子数据的案件,检材基本都是硬盘,而现在,基本每个案件都会涉及到手机检材。人们的生活已经完全离不开手机,衣食住行、与人沟通,很多行为都是在手机上进行,手机类的检材中往往有更多有价值的线索。

平时工作中,每周接触到的手机检材基本都有十余部,积累一些手机取证相关的经验和思考,挑选一些分享给大家,希望能抛砖引玉。

1. SIM卡ICCID?

ICCID(Integrate circuit card identity),即SIM卡的“身份证”,可查的资料中解释说ICCID号是一串20位的数字,用来唯一标识一张SIM卡。ICCID可用读卡器从SIM卡中读取到,一些手机在设置选项中也可以查看到(iPhone手机可以在“设置”→“通用”→“关于本机”中查看)。在潜意识,这串数字就是印刷在SIM卡卡身上,下面文字摘自维基百科“Subscriber identity module”词条

ICCIDs are stored in the SIM cards and are also engraved or printed on the SIM card body during a process called personalisation. …… the GSM Phase 1 defined the ICCID length as 10 octets (20 digits) with operator-specific structure.

根据个人经验,比较老的SIM卡,卡身上印刷的数字确实就是ICCID号码,且就是20位的数字。但是这几年以来的新卡,并不一定是这样的。

首先,现在的ICCID并不一定是20位的数字,有可能中间混有字母。去年我刚开始发现这一点的时候我还以为是我用的手机取证软件提取错了,又用UFED提取了一边,结果UFED提取的结果直接把字母及字母之后的部分丢掉了。后来用相关工具直接查看SIM卡中的原始信息,发现原始数据中保存的就有字母。

图1图2

另一方面,现在的新卡卡身上印的一串字符,基本已经不是ICCID了。接触手机多了,我们可以会发现,国内SIM卡的ICCID好基本都是以“89860”开头,但现在很多SIM卡上印刷的字符会以“01”或“13”开头,很明显与ICCID号不一致。所以在记录SIM卡的ICCID好的时候,千万不能直接看卡身印刷的字符,一定要从SIM卡中提取。

2.需不需要单独提取SIM卡数据?

如果SIM卡一直就在手机中,是不是直接连接手机取证,就顺便提取了SIM卡中的数据呢?也有人觉得,现在智能机基本不会将数据存储在SIM卡中,所以没有必要对SIM卡进行单独提取。。

根据经验,直接连接手机进行数据提取,大部分手机是提取不到SIM卡中的数据的,但是,也会有少数手机可以直接提取到SIM卡中的数据。

虽然大部分时智能手机确实默认不会将联系人、短信存储在SIM卡中,但凡事没有绝对,我也遇到过从SIM卡中提取甚至恢复出大量数据的情况。

另外,SIM卡除了可以保存联系人、短信、通话记录等信息,还会记录其他重要信息,比如IMSI号,使用这个号码,通过运营商可以查到这张SIM卡对应的手机号。极少数情况下,SIM卡中也会直接存储手机本机号码(平时工作中遇到这种情况不是特别多)。
所以,单独对SIM卡进行数据提取是很有必要的。

3.你看到的就是你想看到的?

我们看到的,有时候仅仅是我们被希望看到的,手机取证中也有这样的情况。举个例子,小米手机中有个电话加油包的功能,充值后,可以以远低于运营商的价格拨打电话,整个通话流程也与正常的拨打电话没有区别,通话记录显示的也是用户拨打的号码,看起来有没有什么异常,但是如果在运营商那里调出通话详单,问题就来了,详单中的通话记录与手机中的通话记录根本对不上。

原因就在于MIUI系统开启电话加油包后拨打出去的电话,实际上是网络电话,是回拨的,只是巧妙地隐藏了回拨的过程,没有响铃且自动接听,手机上显示的正常的拨出去的电话,运营商那边显示的却是接听的一个奇怪的号码。

4.iTunes备份加密了就提取不到任何信息?

手机取证过程中如果遇到了遇到iTunes备份加密,绝对让人崩溃。一方面市面上的iTunes密码破解工具效率比较低下,另一方面这个密码和手机锁屏密码、iCloud密码都没有直接关系,很多人一时好奇设置了这个密码,不久就彻底忘了。
但是是不是如果记住设置了iTunes密码,真的就什么都提取不了呢?非也。

首先,info.plist、manifest.plist、status.plist、manifest.mbdb等文件并没有加密,这意味着可以从iTunes备份中获取到一些基本信息,例如手机号、手机系统版本、手机序列号、IMEI号。

可能有人会说,上面这些东西并没有什么用啊,能对手机进行备份,上面这些信息也能直接从手机中看到。这点倒也不假。
但是加密的iTunes备份中,加密的仅仅是文件部分,文件夹名称、文件属性信息并没有加密,这意味着我们可以从这些未加密的部分获取到不少信息,比如手机中安装了哪些APP、基于文件属性的时间线、登录的APP帐号等信息。

图3

上图是使用iBackupbot加载的一个加密的iTunes备份,从截图中可以看到手机中登录过“9961**4”的QQ号。其他一些APP帐号信息也可以用类似的方法推测出来。假设这部iOS设备上登录过多个QQ号,我们可以得到这些帐号信息,根据相关的创建时间和修改时间,可以得知什么使用时间,再根据各个帐号对应数据库文件的大小,可以知道机主经常使用的QQ号信息。

今天就先分享这么多,后续有空在继续分享手机取证的其他一些小思考。


本文最早发布于微信公众号“取证杂谈”及取证中国论坛,发布日期为2016年8月14日,其他网站及平台均为未授权转载。

本文通过实验说明物理镜像的获取及数据分析在手机取证中的重要性。实验用的手机为红米 2 加强版(型号为2014813),2 GB RAM,16 GB ROM,Android 4.4.4,MIUI 版本为MIUI 5.7.31开发版,手机已Root。

第1步:前期准备

首先,从百度下载一张“.jpg”格式的图片复制到手机内置存储空间根目录下,文件名为“meiya.jpg”,如图1所示。

在手机中向“1234567890”这个号码(当然了,这个号码并不存在)发送一条短信,内容是“Mobile Forensics”,如图2所示。

图1至图3

第2步:删除相关信息

在手机文件管理器中删除图1中所示的图片“meiya.jpg”;在手机中删除刚才发送的短信,如图3所示。

第3步:使用手机助手获取短信

将手机连接电脑,分别使用小米手机助手和91手机助手查看、导出短信,没有发现刚才删除的那条短信。

第4步:使用ADB Shell查看文件

在电脑上安装adb.exe(“adb”是“Android Debug Bridge”的缩写,大部分手机助手都自带且安装了adb.exe),在命令提示符中将工作目录切换到adb.exe所在目录,输入“adb shell”进入ADB Shell 模式,接着输入“su”获取Root权限,输入“cd /mnt/sdcard”切换当前工作路径到手机内置存储空间根目录下,输入“ls -l”查看详细文件/文件夹列表,没有发现刚才删除的图片“meiya.jpg”。如图4所示。

图4

第5步:获取手机镜像

使用DC-4500手机取证系统“工具箱”中的“Android镜像下载”工具获取手机“/data”分区的dd镜像,如图5所示。

图5

第6步:分析镜像

使用WinHex打开刚才创建的dd镜像,在其偏移02BE522FB附近找到了如图6所示内容,我们可以看到刚才发送的短信内容“Mobile Forensics”,并在附近发现了发送的号码1234567890,同时还在附近发现了一串数字“11*39”,这是这部手机登录的小米帐号。

图6

接下来,还在镜像文件偏移005CCFFF0附件中找到了如图7所示的内容,根据经验判断,这里有“.jpg”格式图片的文件头,继续往下看,还找到了一个“.jpg”格式文件的结束标识。将这之间的内容另存为一个文件“未命名”,使用“Windows照片查看器”顺利打开,如图8所示。

图7
图8

结果分析

第3步代表逻辑提取,各种手机助手都可以进行基本的逻辑提取,这种逻辑提取使用的是Android系统读取短信的API,但系统并没有获取已删除短信的API,所以逻辑提取无法获取到已删除的短信。其实逻辑提取还可以通过备份的方式将相关数据备份出来然后解析,例如美亚柏科的手机取证产品DC4501、FL-900等就能从Android手机的备份文件中提取一些删除的短信等内容。

第4步代表逻辑浏览。在ADB Shell中无法看到“meiya.jpg”也很好理解,因为图片已经删除了,ADB Shell中只能显示文件系统认为存在的文件,文件删除后,文件系统就认为此文件已经不存在了。

第5步和第6步代表物理获取。上述例子在运行的系统中获取的镜像其实还不是真正的“物理镜像”,更彻底的物理镜像是通过Chip Off(拆取芯片)等离线方式获取镜像。通过物理镜像这种方式最全面,在取证中效果最好。之所以在手机上删除了还能恢复,是因为原内容并没有被覆写,只要原始数据还在,就可以恢复。这就好比一本书的目录中涂掉了一些章节,如果只看目录,就会以为这些章节不存在了,但是只要这些章节的具体内容还没有涂抹掉,一页一页地去寻找,就一定能够找到。

目前Android系统并没有对存储设备进行全盘加密,只要获取到了物理镜像,然后使用十六进制编辑器查看,可以发现很多线索。当然了,这样查看需要了解常见文件签名、编码等众多知识和丰富的经验,而且效率往往不高。当遇到一些文件已经部分损坏的情况,可能还需要文件雕刻知识。可以使用一些自动化的工具,比如开源的scalpel。

Android系统中的分区一般是Ext4文件系统,使用对应的数据恢复软件也可以很方便地进行数据恢复。例如在此例中,使用取证大师电子数据分析系统加载此dd镜像,使用签名恢复恢复出了25177个图片,其中就包括例子中删除的那张。如图9、图10所示。

图9
图10

目前,大部分手机连接电脑查看、管理手机中的文件都是通过MTP模式而不是优盘模式,这样做的好处是不需要考虑手机中文件系统格式,也不会因为电脑独占手机存储空间而导致手机中一些依赖sdcard分区的程序运行异常。而MTP模式是在文件系统层之上的,MTP连接模式下无法进行数据恢复。制作物理镜像则没有这一担忧。

另外,手机在运行过程中,系统运行、程序运行、用户操作都会都对手机中的数据造成持续的改变。从尽量保持检材数据原始性的角度,制作手机镜像是最好的选择。

结论

对于手机取证人员来说,在不破坏手机硬件的情况下,应尽可能地获取手机内存(Flash)的物理镜像,通过物理镜像通常获得完整的文件系统,并恢复已删除的文件(如照片、视频等)。此外物理镜像还可通过十六进制编辑器搜索并分析文件系统中的未分配空间中的残留数据,从而可能提取到有价值的相关数据。


本文最早发布于微信公众号“美亚柏科”,发布日期为2015年9月2日
微信公众号“cnforensics”于2015年9月14日授权发布
本文同时收录到美亚柏科官网技术分享栏目
其他平台为非授权转载。