《iOS取证实战:调查、分析与移动安全》一3.3 数据存储位置

简介: 本节书摘来自华章出版社《iOS取证实战:调查、分析与移动安全》一书中的第3章,第3.3节,作者(美)Andrew Hoog Katie Strzempka,更多章节内容可以访问云栖社区“华章计算机”公众号查看

3.3 数据存储位置

iPhone拥有标准的文件目录结构,在其中存储着各种文件(参考附件C,展示了从iPhone中恢复的文件夹和文件的全列表)。iPhone硬件没有外置存储插槽,因此它所有的数据都存储在设备内部(与之对应的是,其他设备拥有外置SD卡或仿真SD卡设备)。为了显示iPhone的目录层级,我们使用第5章中提及的技术,通过Wi-Fi远程接入一个已越狱的iPhone。在一台Macintosh电脑上通过SSH连接到iPhone,以查看其文件系统进行研究分析。登录设备后可以通过“1s”命令查看目录内容。
image

审查者感兴趣的大部分数据都存储在“private/var/mobile/”路径下(在iPhone磁盘映像上,“mobile”文件夹将是已挂载映像的根目录);然而,我们也能够在其他位置找到有价值的取证证据。在Mobile文件夹中,有三个子文件夹:Applications、Library和Media。任何下载的程序都将以图3-1中所示的格式存储到Applications文件夹。每个安装的程序都有一个应用程序标识,此标识将作为程序存储的文件夹名称,且此标识在所有设备上都是一样的。

image

所有应用程序文件夹的内容通常都是一样的,包含以下一些标准的文件夹和文件:
Documents文件夹中包含特定程序的相关文件,比如plists、文本文件或图片。
Library文件夹包含缓存数据、Cookies、参数以及WebKit数据(如果程序有应用到此数据)。“参数”通常是用户登录数据的存储位置(如果此应用程序要求用户提供凭证登录)。
应用程序文件夹的数据可被提取以查看私有文件,其中包含了程序依赖代码和其他文件。
tmp文件夹在大多数的应用程序目录下是空的。
下面展示的列表是iPhone应用程序Yahoo!的目录内容,其中一些较容易理解的文件未展示(比如logos和icons)。此架构代表了标准的应用程序目录。我们先看一下最顶层的目录,可看到Documents、Library以及tmp文件夹,然后可看到Yahoo!应用程序文件夹的大致结构。其中,iTunes Artwork和iTunesMetadata.plist文件是标准文件,在所有通过iTunes App Store下载的程序目录下都可以找到它们。我们可以提取实际的应用程序文件数据,以便更详细地了解这个程序的开发情况。在这个例子中,Info.plist文件中可能包含了应用程序版本号、发布时间,或许还有用户的登录数据。不同的应用程序还会有不同的配置文件。在审查者寻找存储的应用程序数据时,普遍都会关注这个区域。

image
image

除已下载的应用程序外,更多常见的数据通常被存储在Library或Media下的特定子文件夹中。例如,短信被存储在Library>SMS路径下一个叫sms.db的文件中。对大多数数据来说,iPhone文件系统的组织结构是相当直观的。
对于一些存储在设备根目录中的文件,为了了解其中存储的数据,我们也将进行少量研究。其中一个例子是存储在设备上的GPS位置信息。许多应用程序经常询问用户是否允许它开启GPS定位功能,包括照相机和视频录像。因此,GPS数据经常可以在图片或视频文件中找到。当iOS 4.0版本发布时,iPhone文件系统的部分设计发生了变化。其中一个主要的转变与一个叫做consolidated.db的文件相关。这个数据库文件中包含了全数组的GPS数据以及经纬度坐标、时间戳、手机发射台位置、设备进行的Wi-Fi或蓝牙连接。这个数据库文件有些特殊,虽然它可能存储了一些应用程序的私有信息,但它不在应用程序私有文件夹中。关于从consolidated.db文件或其他地方恢复GPS数据的更多细节,可以在第6章中查看到。

相关文章
|
7天前
|
Android开发 数据安全/隐私保护 iOS开发
安卓与iOS系统的发展趋势与比较分析
【2月更文挑战第6天】 在移动互联网时代,安卓和iOS系统作为两大主流移动操作系统,各自呈现出不同的发展趋势。本文将从技术角度出发,对安卓和iOS系统的发展方向、特点及未来趋势进行比较分析,以期为读者提供更深入的了解和思考。
14 4
|
2月前
|
存储 数据建模 数据库
IOS开发数据存储:什么是 UserDefaults?有哪些替代方案?
IOS开发数据存储:什么是 UserDefaults?有哪些替代方案?
19 0
|
2月前
|
存储 iOS开发 开发者
使用克魔助手进行iOS数据抓包和HTTP抓包的方法详解
使用克魔助手进行iOS数据抓包和HTTP抓包的方法详解
31 0
|
9天前
|
安全 搜索推荐 Android开发
Android 与 iOS 的比较分析
【2月更文挑战第5天】 Android 和 iOS 是目前市场上两种最流行的移动操作系统,它们都拥有自己的特点和优势。本文将会分别从操作系统设计、应用生态、安全性等方面对这两种操作系统进行比较和分析,希望能够帮助读者更好地选择适合自己的移动设备。
|
2月前
|
Web App开发 网络安全 Android开发
🚀2023最新版克魔助手抓包教程(9) - 克魔助手 IOS 数据抓包
在移动应用程序的开发中,了解应用程序的网络通信是至关重要的。数据抓包是一种很好的方法,可以让我们分析应用程序的网络请求和响应,了解应用程序的网络操作情况。克魔助手是一款非常强大的抓包工具,可以帮助我们在 Android 和 iOS 平台上进行数据抓包。本篇博客将介绍如何使用克魔助手在 iOS 平台上进行数据抓包。
|
2月前
|
存储 安全 数据安全/隐私保护
IOS开发数据存储:解释一下 iOS 中的 Keychain,它的作用是什么?
IOS开发数据存储:解释一下 iOS 中的 Keychain,它的作用是什么?
41 4
|
2月前
|
存储 数据库 iOS开发
IOS开发数据存储:什么是 CoreData?如何在应用中使用它?
IOS开发数据存储:什么是 CoreData?如何在应用中使用它?
15 0
|
4月前
|
运维 安全 数据安全/隐私保护
iOS加固原理与常见措施:保护移动应用程序安全的利器
随着移动应用的普及和用户对数据安全的关注度提高,iOS加固成为了很多开发者和企业的必备工具。那么,iOS加固是如何保护应用程序的安全性的呢? iOS加固是指对OS应用程序进行一系列的安全措施,以提高其抗逆向工程、反编译和破解的能力。下面将介绍iOS加固的原理和常见的加固措施。
iOS加固原理与常见措施:保护移动应用程序安全的利器
|
4月前
|
iOS开发
实战编程·使用SwiftUI从0到1完成一款iOS笔记App(五)(3)
实战编程·使用SwiftUI从0到1完成一款iOS笔记App(五)
40 0
|
4月前
|
前端开发 数据处理 iOS开发
实战编程·使用SwiftUI从0到1完成一款iOS笔记App(五)(2)
实战编程·使用SwiftUI从0到1完成一款iOS笔记App(五)
35 0