电子数据取证技术-课件-第6章-macOS操作系统取证技术_第1页
电子数据取证技术-课件-第6章-macOS操作系统取证技术_第2页
电子数据取证技术-课件-第6章-macOS操作系统取证技术_第3页
电子数据取证技术-课件-第6章-macOS操作系统取证技术_第4页
电子数据取证技术-课件-第6章-macOS操作系统取证技术_第5页
已阅读5页,还剩135页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第6章macOS操作系统取证技术6.1macOS操作系统6.2macOS系统取证第6章macOS操作系统取证技术6.1macOS操作

6.1 macOS操作系统

6.1.1 macOS操作系统的特点macOS是苹果公司针对苹果计算机系列产品推出的计算机操作系统,2012年7月发布10.8版本后由MacOSX更名为OSX,2016年9月发布10.12版本后又更名为macOS,目前(截至2021年1月)的最新版本为2020年11月13日发布的macOSBigSur(版本号11.0)。

6.1 macOS操作系统

6.1.1 macOS

与苹果公司其他知名的产品iPhone、iPad搭载的操作系统iOS类似,macOS也是结合苹果计算机产品的硬件深度而定制的。在2005年之前,苹果计算机使用的大多还是PowerPC架构的微处理器,与常见的x86架构的个人计算机产品互不兼容,直到2006年,苹果公司推出了他们的第一款搭载Intelx86微处理器的MacBook,在同步发行的BootCamp的帮助下,苹果计算机也支持Windows操作系统的安装。

与苹果公司其他知名的产品iPhone、iPad搭载的操

MacOSX体系结构包括Darwin、核心框架、应用框架层、用户体验层等几部分,整个层次结构如图6-1所示。这些层次中,Darwin层是整个系统的基础,它是开源的,提供了底层的API;而其上的3层都是闭源的,属于苹果公司的私有产品。

MacOSX体系结构包括Darwin、核心框架、应图6-1 MacOSX层次结构图6-1 MacOSX层次结构

Darwin是一个开放源代码、符合POSIX标准的类UNIX操作系统,操作系统的内核为XNU(XisNotUNIX),最早是由NeXT公司为了NeXTSTEP操作系统开发的。XNU是一种混合式的核心,包含Mach微内核、BSD和DriverKit的驱动程序接口。苹果公司收购NeXT公司后,XNU的Mach内核部分被替换为开放软件基金会(OpenSoftwareFoundation)创建的社区版的Mach内核OSFMK,BSD部分被替换为FreeBSD,DriverKit改名为I/OKit,开发语言也由ObjectiveC变为C++。XNU内核源代码基于苹果开源许可(ApplePublicSourceLicense)发布,可在苹果公司的网站获取(/source/xnu)。

Darwin是一个开放源代码、符合POSIX标准的类U

核心框架有时也被称为图形和多媒体层,该层包括OpenGL、Quartz、QuickTime、应用程序服务等。

应用框架层包括Classic、Cocoa、Carbon和java等。

用户体验层用来提供用户界面,包括aqua、Quicklook、spotlight等组件。

核心框架有时也被称为图形和多媒体层,该层包括OpenG

6.1.2不同版本macOS的差异

2001年推出的MacOSX10.0是macOS系列操作系统版本之间的一个明显分界点,在这之前苹果计算机搭载的还是现在已经被称为ClassicMacOS的SystemSoftware7、MacOS8、MacOS9等操作系统。ClassicMacOS的最后一个版本是MacOS9.2.2,在这之后的MacOSX则是由名为Darwin的操作系统部分和名为aqua的图形界面部分结合而成的。

6.1.2不同版本macOS的差异

2001年推出

早期的MacOSX10.0~10.3中仍然保留了对经典环境的兼容性,通过一个模拟环境,用户可以将MacOS9作为一个程序来运行,在其中可以执行MacOS9设计的程序。OSX10.9往后的版本均在应用商店中免费为苹果计算机用户提供,所以市面上主流的苹果计算机中运行的操作系统基本都是最近发布的一两个版本。

早期的MacOSX10.0~10.3中仍然保留了

MacOSX10.0发布于2001年3月,内部代号为Cheetah。相对于之前的MacOS,MacOSX是完全重写的操作系统,功能并不十分齐全。

MacOSX10.1发布于2001年9月,内部代号为Puma。在上一代发布之后不久就推出了该版本,增加了对DVD播放的支持功能。

MacOSX10.2发布于2002年8月,代号为Jaguar。苹果公司第一次公开使用猫科动物的名称作为操作系统的代号,一直延续到了MacOSX10.8。该版本中首次加入了日志式文件系统,还加入了用于发现网络上的设备和服务的Bonjour协议,如打印机或其他计算器;新增了即时通信客户端iChat。

MacOSX10.0发布于2001年3月,内部代

MacOSX10.3发布于2003年10月,代号为Panther。该版本加入了对用户目录进行加密的功能FileVault,推出了新的Web浏览器Safari代替之前和微软合作使用的InternetExplorerforMac。系统中的卷默认使用被称为HFSJ的日志式文件系统。

MacOSX10.4发布于2005年4月,代号为Tiger。该版本中加入了基于索引的搜索工具Spotlight。除了标准的UNIX文件系统权限控制外,在HFS+的文件系统中还加入了基于访问控制列表的权限管理机制。

MacOSX10.3发布于2003年10月,代号

MacOSX10.5发布于2007年10月,代号为Leopard。自动备份工具TimeMachine就是随着这个版本发布的。该版本增加了在Finder中直接按空格键快速预览文件的特性。同时推出的还有BootCamp软件,可以用于在搭载Intel处理器的苹果计算机上安装微软的Windows操作系统。

MacOSX10.6发布于2009年6月,代号为SnowLeopard。从该版本起,苹果公司完全放弃了PowerPC架构处理器的支持,仅支持安装在使用了Intel处理器的苹果计算机上。该版本主要做了性能的改进,大部分系统应用程序进行了重新编译以支持64位架构。

MacOSX10.5发布于2007年10月,代号

MacOSX10.7发布于2011年7月,代号为Lion。这是第一个通过应用商店MacAppStore发行的MacOS操作系统,系统中新增了Mac间文件共享的工具AirDrop,只要简单的拖动操作就可以在设备间传输文件。随系统发行的还有FaceTime,可以用于Mac、iPhone、iPad之间的视频通话。新版本的加密工具FileVault2提供了全盘加密功能,添加了对外部硬盘的支持和用于修复系统的恢复分区功能。在MacOSX10.7.2的更新中推出了iCloud功能,支持邮件、日历和联系人的同步。

MacOSX10.7发布于2011年7月,代号为

OSX10.8发布于2012年7月,代号为MountainLion。苹果公司将MacOSX重命名为OSX,去掉了开头的Mac。该版本中iChat应用被Messages替换,新增了对iMessage的支持功能,可以与运行iOS的设备互通消息,用户iPhone、iPad上的iMessage消息也会同步到MacOS上。系统中新增的备忘录、提醒事项、通知中心、游戏中心等也多是源于iOS中的功能。

OSX10.8发布于2012年7月,代号为Moun

OSX10.9发布于2013年10月,代号为Mavericks。从该版本起,苹果公司不再按惯例使用猫科动物的名称作为系统代号,而是使用了景点的名字;用户不再需要付费升级系统,在MacAppStore中即可免费获取。与上一个版本类似,该版本中加入了同样先在iOS操作系统中搭载的iBooks电子书程序和地图程序,在Finder中加入了文件标签功能和标签页浏览模式。该版本中iCloud的功能得到了增强,可以在设备间同步钥匙串中存储的密钥。

OSX10.9发布于2013年10月,代号为Mav

OSX10.10发布于2014年10月,代号为Yosemite。随之推出的iCloudDrive云存储兼容OSX、iOS和Windows三大操作系统平台,支持存储应用数据、音乐、照片、视频等各类数据,用户可以方便地跨平台存取自己的文件。新增的Continuity功能可以将iOS的内容同步至OSX,如使用Mac收发iPhone的短信、通过Mac拨打和接听电话。此外,AirDrop也支持iOS和OSX之间的文件传输。

OSX10.10发布于2014年10月,代号为Yo

OSX10.11发布于2015年9月,代号为ElCapitan。这是一次小的系统更新,主要增强了OSX的设计和可用性,同时包括性能改进和安全更新。新增的系统完整性保护(SystemIntegrityProtection)禁止软件以root身份在OSX上运行,并且目录/System、/sbin、/usr仅供系统使用,系统会阻止用户在这些目录中的操作。

OSX10.11发布于2015年9月,代号为El

macOS10.12发布于2016年9月,代号为Sierra。苹果公司将OSX重命名为macOS以匹配公司的其他操作系统(如iOS、watchOS、tvOS)的命名体系。苹果公司对之前版本的Continuity功能进行了扩展,当用户佩戴配对的AppleWatch靠近计算机时,计算机系统会自动解锁,同一AppleID附件的macOS和iOS设备的剪贴板可以互通,用户可以很方便地在不同设备间进行复制、剪切和粘贴操作。iCloudDrive新增了可以自动同步文稿和桌面上的文件的选项。Siri语音助手也被添加进该版本中。

macOS10.12发布于2016年9月,代号为Si

在macOSSierra中,苹果公司发布了名为AppleFileSystem(APFS)的新文件系统,该文件系统面向固态存储介质设计,原生支持多种加密方式(如全盘加密、单密钥加密、多密钥加密),但在当时的系统中并没有成为默认的文件系统,只是增加了支持而已。

在macOSSierra中,苹果公司发布了名为Apple

macOS10.13发布于2017年9月,代号为HighSierra。在该版本中,APFS成为默认的文件系统,取代了之前已使用多年的文件系统HFS+。新增的高效视频编码(HighEfficiencyVideoCoding,HEVC)支持对数字视频相关的取证提出了新的挑战。

macOS10.13发布于2017年9月,代号为Hi

macOS10.14发布于2018年9月,代号为Mojave。这是最后一个可运行32位应用的macOS版本。该版本新增了与iOS系统中的股市、语音备忘录和家庭App类似的应用程序。Mac和iPhone的互通功能进一步加强,用户可以用iPhone就近拍张照片或扫描文档,然后让它自动出现在Mac上。

macOS10.14发布于2018年9月,代号为Mo

2019年苹果发布macOS10.15,代号Catalina。macOSCatalina用AppleMusic、ApplePodcasts和AppleTV取代了已存在多年的经典iTunes软件。通过Sidecar分屏功能,用户的iPad可以作为Mac的一个扩展屏幕使用。另外,macOSCatalina的安全性也进一步提升,其Gatekeeper功能现可以检查所有应用是否存在已知的安全问题,新的数据保护流程需要所有应用在访问用户文档之前获得许可。

2019年苹果发布macOS10.15,代号Cata

2020年苹果发布了macOS11.0,其正式名称为macOSBigSur。该版本的系统界面进行了重新设计,包括内置应用的图标、原生应用界面的一致性、桌面的程序和菜单栏等方面都有全新的变化;另外,还增加了Safari浏览器的翻译功能等。

2020年苹果发布了macOS11.0,其正式名称为

6.1.3 macOS取证主要信息源

macOS是类UNIX操作系统,所以从取证角度上与Windows有很大的不同,与UNIX/Linux操作系统的取证存在一些相似点,但作为图形用户界面的操作系统,其与一般用于服务器中时命令行界面的UNIX/Linux操作系统取证操作又有很多差异。

6.1.3 macOS取证主要信息源

macOS是

从文件系统目录结构看,macOS一部分目录是UNIX通用目录,如/bin(UNIX命令存放目录)、/sbin(UNIX系统管理类命令存放目录)、/usr(第三方程序安装目录)、/dev(设备文件存放目录)、/etc(系统配置文件存放目录)、/tmp(临时文件存放目录)、/var(存放经常变化的文件)。其中,/etc、/tmp、/var目录在取证中是需要重点关注的地方,此3个目录实际上分别为指向/private/etc、/private/tmp和/private/var的链接。

macOS还有一部分目录是其特有的目录,从概念上讲,包括User域(Domain)、Local域、Network域、System域等。

从文件系统目录结构看,macOS一部分目录是UNIX通

User域包含特定用户的资源,是用户的主目录。本地主目录的位置为“/Users/用户名/”(注:用户名不同,位置也不同。若用户名为bob,则主目录位置为/Users/bob/,下同)。若为网络用户,则主目录的位置为“/Network/Users/用户名/”。用户主目录存有用户的个人资料和配置,在取证中是需要重点关注的地方。该目录下几个常见的标准目录是取证时的重要信息资源,如Trash、Applications、Desktop、Documents、Library、Movies、Music、PicturesSites等,如表6-1所示。

User域包含特定用户的资源,是用户的主目录。本地主目电子数据取证技术--课件--第6章-macOS操作系统取证技术

macOS中的钥匙串功能保存着操作系统中的各种密钥、应用程序密码、网站密码、无线网络密码、证书文件,往往会存有一些对案件调查有利的信息。钥匙串界面如图6-2所示。

macOS中的钥匙串功能保存着操作系统中的各种密钥图6-2钥匙串界面图6-2钥匙串界面

macOS操作系统中提供了很多便利的程序,如邮件客户端、备忘录、便笺、提醒事项、信息等,往往在这些应用中会存有一些关键信息,对调查取证有很大的帮助。

macOS操作系统中提供了很多便利的程序,如邮件客户端

6.2 macOS系统取证

6.2.1 macOS支持的文件系统及特点1. HFS+macOS10.12及之前版本的macOS主要使用HFS+ 文件系统,HFS+ 是HFS文件系统的更新版本,又名HFSPlus、HFSExtended、MacOSExtended。HFS+ 改进了HFS文件系统的结构和对数据管理中存在的不足。HFS+ 文件系统的主要特点体现在以下几个方面。

6.2 macOS系统取证

6.2.1 macOS

1)采用32位数记录分配块数量

HFS和HFS+文件系统对磁盘卷采用分块进行分配,将一个卷分成等大的分配块(AllocationBlocks)。

2)目录树节点大小增加到4KB

HFS文件系统的目录树节点大小为512B;由于HFS+ 文件系统目录树索引节点需要存储附加指针和节点描述符两个关键值,因此HFS+ 文件系统的目录树节点大小增加到4KB。

3)单一文件大小得到提升

HFS文件系统的单一文件大小上限为231bit,而HFS+ 文件系统的单一文件大小最大可达到263bit。

1)采用32位数记录分配块数量

HFS和HFS+

4)支持长文件名

HFS文件系统对文件名最长支持到31个字符;而HFS+文件系统对文件名采用Unicode编码,最长达到255个字符。

4)支持长文件名

HFS文件系统对文件名最长支持

2. APFS

苹果公司在2016年的WWDC(WorldwideDevelopersConference,全球开发者大会)上正式公布了全新的文件系统APFS,macOS10.12版本中加入了实验性的APFS文件系统支持,在随后的macOS10.13中,APFS文件系统正式成为系统默认的文件系统。苹果开发APFS的目的是修复HFS+中存在的缺陷,该文件系统对闪存/固态存储设备进行了优化,支持多种加密方法。在相对较小或是很大容量的存储设备中都可以使用该文件系统,在苹果公司多个平台的操作系统,如macOS、iOS、tvOS、watchOS和audioOS中也使用了APFS。

2. APFS

苹果公司在2016年的WWDC(

APFS的主要特点包括以下几个方面:

(1)写入时复制(Copy-on-Write)元数据,在崩溃、断电等情况下保护数据。

(2)文件和目录克隆不会再重复占用一遍空间,从而使得克隆更快,更节省存储空间。对克隆的文件所做的修改会被写入其他区域,与原始文件相同的部分在文件系统中是共享的。

(3)快照功能。保存文件系统的只读实例,使备份和还原操作变得更高效,可以将文件还原到一个指定的时间点。

APFS的主要特点包括以下几个方面:

(1)写入

(4)空间共享。多个APFS文件系统的卷可以共用一个APFS容器下的物理磁盘空间,每个卷的可用空间都是当前容器中的可用空间。支持快速调整卷大小而不用重新分区。

(5)加密支持是APFS设计中重要的一部分,APFS支持全盘加密、文件加密、敏感元数据加密。根据系统和硬件的不同,APFS使用AES-XTS或AES-CBC进行加密。除支持单密钥加密外,APFS还支持多密钥加密。在多密钥加密模型中,每个文件使用不同的密钥进行加密,敏感元数据使用其他密钥进行加密。多密钥加密确保了数据的安全,即使获取了设备密钥,依然无法解密部分文件。

(4)空间共享。多个APFS文件系统的卷可以共用一个

(6)稀疏文件存储。只有当真正需要存储空间时才会分配空间,可以节省磁盘空间,用以存储更大的文件。

(7)原子级安全存储基元(AtomicSafe-savePrimitives)。从用户的角度来看,事务要么完成,要么不完成。

在终端执行diskutilapfslist命令,可以查看APFS容器中的卷列表,如图6-3所示。

(6)稀疏文件存储。只有当真正需要存储空间时才会分配图6-3查看APFS容器中的卷列表图6-3查看APFS容器中的卷列表

3.其他

除了支持HFS、HFS+、APFS这些macOS独有的文件系统外,macOS还支持FAT、FAT32、ExFAT的读写,支持读取微软的NTFS文件系统,但需要安装第三方驱动程序才能实现写入操作。所以,在对macOS操作系统进行在线取证的操作中推荐使用ExFAT文件系统的外部磁盘,这样也可以方便地读取Windows操作系统机器中的数据。

3.其他

除了支持HFS、HFS+、APFS这些

目前,大多取证软件对APFS的支持还不是很完善,EnCaseForensics在V8.07中新增了对APFS的支持,BlackBagTechnologies公司的Blacklight2018已完全支持对APFS的分析,WinHex/X-WaysForensics目前还只能识别APFS分区却不能解析文件,ParagonSoftware公司的APFSforWindows支持在Windows操作系统中挂载包含APFS文件系统的磁盘。

目前,大多取证软件对APFS的支持还不是很完善,EnC

6.2.2 macOS日志文件、配置文件分析

1.常见系统的基本信息

macOS操作系统的基本信息主要包括产品名称、当前系统版本、完整计算机名、主机名和最后登录用户等,它们分别存放在 /System/Library/CoreServices/SystemVersion.plist、/Library/Preferences /SystemConfiguration/preferences.plist、/Library/Preferences/com.apple.loginwindow.plist中。

6.2.2 macOS日志文件、配置文件分析

1.

Plist(PropertyList,属性列表)是一种用来存储序列化后的对象的文件。属性列表文件的扩展名为.plist,因此通常被称为Plist文件。Plist文件中存储的数据是抽象的,其采用的文件格式可以不止一种,有XML格式的文件,也有二进制格式的文件。在macOS中,Plist通常用于存储配置文件、历史记录文件。苹果公司的开发工具Xcode中包含一个可以以树形结构查看与编辑Plist文件的工具。

Plist(PropertyList,属性列表)是一

/System/Library/CoreServices/SystemVersion.plist中保存了当前系统版本、产品版权等信息,文件内容如图6-4所示。其中,ProductBuildVersion、ProductVersion均为当前版本信息。图6-4 SystemVersion.plist文件内容

/System/Library/CoreService

/Library/Preferences/SystemConfiguration/preferences.plist中保存了计算机名、主机名等信息,文件内容如图6-5所示。其中,ComputerName为完整的计算机名,LocalHostName为主机名。图6-5 preferences.plist文件内容

/Library/Preferences/System

/Library/Preferences/com.apple.loginwindow.plist中保存了最后登录的用户信息,如图6-6所示。其中,lastUserName为最后登录的用户的用户名。图6-6 com.apple.loginwindow.plist文件内容

/Library/Preferences/com.ap

/Library/Receipts/InstallHistory.plist中保存了系统和应用的安装记录,如图6-7所示。其中,Item0为macOS操作系统安装的记录,Item1向后的记录则包含了后续的应用安装、在取证中常用到的其他一些数据保存位置如表6-2所示。

/Library/Receipts/InstallHi图6-7 InstallHistory.plist文件内容图6-7 InstallHistory.plist文件内电子数据取证技术--课件--第6章-macOS操作系统取证技术

2.日志文件的取证

日志文件是macOS常见的取证信息来源,一般日志文件位于/private/var/log目录下。其中,有一些日志与Linux或UNIX相同,此处不另行阐述;也有一些特殊日志或特殊格式的日志。

在private/var/log目录下,常见的日志文件有system.log、system.log.0.gz,通过这些日志文件可以获得开关机记录的用户名和时间,如图6-8所示。

2.日志文件的取证

日志文件是macOS常见的取图6-8 private/var/log目录下的系统日志图6-8 private/var/log目录下的系统日志

macOS的部分系统日志文件扩展名为 .asl(AppleSystemLogger),可使用控制台程序打开它们,如图6-9所示。通过网址 /*/documentation/os/logging*/可查看日志文件的具体介绍。

macOS的部分系统日志文件扩展名为 .asl(App图6-9使用控制台程序打开 .asl文件图6-9使用控制台程序打开 .asl文件

另外,在macOS10.12版本以后,苹果公司采用了一种新的日志UnifiedLog,苹果公司对外不公开该文件格式,仅提供读写日志的接口。该日志存储在 /var/db/diagnostics和/var/db/uuidtext两个目录下,其中包含大量的信息,如网络连接、USB使用记录信息、系统启动信息、系统备份、邮件同步、iCloud连接设备等。

除了使用专用取证工具对这些信息进行自动分析外,还可以使用/usr/bin/log命令或者苹果公司提供的应用控制台工具进行分析。

另外,在macOS10.12版本以后,苹果公司采用了

6.2.3 macOS网络信息分析

在macOS中,计算机网络配置主要查看/Library/Preferences/SystemConfiguration/preferences.plist文件,在private/var/db/dhcpclient/leases/目录下存储着通过DHCP获取的详细网络配置信息,如图6-10所示。有关网络连接或网络行为的信息可以通过对相关应用的日志进行分析。

6.2.3 macOS网络信息分析

在macOS中图6-10 DHCP网络配置信息图6-10 DHCP网络配置信息

6.2.4 macOS浏览器信息分析

Safari是macOS中常用的浏览器,老版本的Safari浏览记录以Plist格式的文件保存在“/Users/用户名/Library/Safari”目录中,文件名为History.plist。History.plist中的WebHistoryDomains.v2为访问的网址的主域名,WebHistoryDates中包含访问的网址、title(页面标题)、visitCount(访问次数)、lastVisitedDate(最后访问时间)等。新版本的Safari浏览记录以SQLite格式的数据库文件保存在“/Users/用户名/Library/Safari”目录中,文件名为History.db。

6.2.4 macOS浏览器信息分析

Safari

SQLite是遵守ACID(AtomicityConsistencyIsolationDurability,原子性、一致性、隔离性、耐久性)的关系型数据库管理系统,它是由D.RichardHipp使用C语言编写的开放源代码的嵌入式数据库引擎。与许多其他数据库管理系统不同,SQLite不是一个客户端/服务器结构的数据库引擎,它被集成在用户程序中,支持大部分主流操作系统,在iOS和Android这类移动平台操作系统中使用非常广泛。有很多免费的第三方工具可以用来查看和编辑SQLite数据库文件,如DBBrowserforSQLite(http://sqlitebrow)。

SQLite是遵守ACID(AtomicityCon

History.db中的history_items、history_visits表中的数据为浏览器的历史记录,如图6-11和图6-12所示。其中,history_items表中的url为页面链接,domain_expansion为链接的部分域名,visit_count为该链接的总访问次数;history_visits表中的visit_time为访问时间,title为页面标题,history_item的值为对应history_items表中的id值。

History.db中的history_items、h图6-11history_items表中的内容图6-11history_items表中的内容图6-12history_visits表中的内容图6-12history_visits表中的内容

在菜单栏中选择“历史记录”→“显示所有历史记录”命令,显示的历史记录如图6-13所示。

在菜单栏中选择“历史记录”→“显示所有历史记录”命令,图6-13历史记录图6-13历史记录

Safari的书签以Plist格式的文件保存在“/Users/用户名/Library/Safari”目录中,文件名为Bookmarks.plist。书签数据保存在Item项中,URLString为页面链接,title为页面标题,previewText为备注信息,Title为书签中的文件夹标题。Bookmarks.plist文件内容如图6-14所示。

Safari的书签以Plist格式的文件保存在“/Us图6-14 Bookmarks.plist文件内容图6-14 Bookmarks.plist文件内容

Safari的文件下载记录也以Plist格式的文件保存在“/Users/用户名/Library/Safari”目录中,文件名为Downloads.plist。其中,DownloadEntryURL为文件下载链接,DownloadEntryPath为文件保存路径。Downloads.plist文件内容如图6-15所示。

Safari的文件下载记录也以Plist格式的文件保存图6-15 Downloads.plist文件内容图6-15 Downloads.plist文件内容

6.2.5 macOS邮件客户端信息分析

邮件客户端的数据保存在“/User/用户名/Mail/V4”目录中。注意,老版本的文件格式可能不同。

“/User/用户名/Mail/V4”中的“*.mbox”文件保存了所有邮件,扩展名为 .emlx表示完整的邮件;扩展名为 .partial.emlx表示只收取了邮件头,没有收取到正文、附件。“*.mbox”文件内容如图6-16表示。

6.2.5 macOS邮件客户端信息分析

邮件客户图6-16 “*.mbox”文件内容图6-16 “*.mbox”文件内容

6.2.6其他信息源分析

除前述信息外,macOS中还存在很多可能有价值的信息。例如,系统中还有其他缓存文件夹和临时文件,其中有一些会随着关机操作而被清空,还有一些缓存信息会越来越多。通过对这些文件夹或者文件进行分析,有利于分析用户的行为,发现相关的证据。/private/var/tmp目录下存放的是临时文件,/private/var/folders目录下存放的是文件预览时使用的缓存目录,/Library/Caches目录下存放的是各种应用的缓存数据目录,/private/var/vm/sleepimage目录下存放的是休眠文件。

6.2.6其他信息源分析

除前述信息外,macOS

另外,如果用户有TimeMachine,则其对文件做的版本管理的备份数据也可能很有价值。如果有地图数据,则一般被保存在“Users/用户名Library/Containers/com.apple.Maps/Data/Library/Maps”目录下的GeoHistory.mapsdata和GeoBookmarks.plist这两个Plist格式的文件中,前者为搜索记录,后者为收藏记录。

目前,针对macOS的取证工具有Sumuri公司的Recon、ReconImager,BlackBagTechnologies公司的BlackLight、MacQuisition。这些软件都可以做到一键分析,能获取系统中的常见数据。

另外,如果用户有TimeMachine,则其对文件做第6章macOS操作系统取证技术6.1macOS操作系统6.2macOS系统取证第6章macOS操作系统取证技术6.1macOS操作

6.1 macOS操作系统

6.1.1 macOS操作系统的特点macOS是苹果公司针对苹果计算机系列产品推出的计算机操作系统,2012年7月发布10.8版本后由MacOSX更名为OSX,2016年9月发布10.12版本后又更名为macOS,目前(截至2021年1月)的最新版本为2020年11月13日发布的macOSBigSur(版本号11.0)。

6.1 macOS操作系统

6.1.1 macOS

与苹果公司其他知名的产品iPhone、iPad搭载的操作系统iOS类似,macOS也是结合苹果计算机产品的硬件深度而定制的。在2005年之前,苹果计算机使用的大多还是PowerPC架构的微处理器,与常见的x86架构的个人计算机产品互不兼容,直到2006年,苹果公司推出了他们的第一款搭载Intelx86微处理器的MacBook,在同步发行的BootCamp的帮助下,苹果计算机也支持Windows操作系统的安装。

与苹果公司其他知名的产品iPhone、iPad搭载的操

MacOSX体系结构包括Darwin、核心框架、应用框架层、用户体验层等几部分,整个层次结构如图6-1所示。这些层次中,Darwin层是整个系统的基础,它是开源的,提供了底层的API;而其上的3层都是闭源的,属于苹果公司的私有产品。

MacOSX体系结构包括Darwin、核心框架、应图6-1 MacOSX层次结构图6-1 MacOSX层次结构

Darwin是一个开放源代码、符合POSIX标准的类UNIX操作系统,操作系统的内核为XNU(XisNotUNIX),最早是由NeXT公司为了NeXTSTEP操作系统开发的。XNU是一种混合式的核心,包含Mach微内核、BSD和DriverKit的驱动程序接口。苹果公司收购NeXT公司后,XNU的Mach内核部分被替换为开放软件基金会(OpenSoftwareFoundation)创建的社区版的Mach内核OSFMK,BSD部分被替换为FreeBSD,DriverKit改名为I/OKit,开发语言也由ObjectiveC变为C++。XNU内核源代码基于苹果开源许可(ApplePublicSourceLicense)发布,可在苹果公司的网站获取(/source/xnu)。

Darwin是一个开放源代码、符合POSIX标准的类U

核心框架有时也被称为图形和多媒体层,该层包括OpenGL、Quartz、QuickTime、应用程序服务等。

应用框架层包括Classic、Cocoa、Carbon和java等。

用户体验层用来提供用户界面,包括aqua、Quicklook、spotlight等组件。

核心框架有时也被称为图形和多媒体层,该层包括OpenG

6.1.2不同版本macOS的差异

2001年推出的MacOSX10.0是macOS系列操作系统版本之间的一个明显分界点,在这之前苹果计算机搭载的还是现在已经被称为ClassicMacOS的SystemSoftware7、MacOS8、MacOS9等操作系统。ClassicMacOS的最后一个版本是MacOS9.2.2,在这之后的MacOSX则是由名为Darwin的操作系统部分和名为aqua的图形界面部分结合而成的。

6.1.2不同版本macOS的差异

2001年推出

早期的MacOSX10.0~10.3中仍然保留了对经典环境的兼容性,通过一个模拟环境,用户可以将MacOS9作为一个程序来运行,在其中可以执行MacOS9设计的程序。OSX10.9往后的版本均在应用商店中免费为苹果计算机用户提供,所以市面上主流的苹果计算机中运行的操作系统基本都是最近发布的一两个版本。

早期的MacOSX10.0~10.3中仍然保留了

MacOSX10.0发布于2001年3月,内部代号为Cheetah。相对于之前的MacOS,MacOSX是完全重写的操作系统,功能并不十分齐全。

MacOSX10.1发布于2001年9月,内部代号为Puma。在上一代发布之后不久就推出了该版本,增加了对DVD播放的支持功能。

MacOSX10.2发布于2002年8月,代号为Jaguar。苹果公司第一次公开使用猫科动物的名称作为操作系统的代号,一直延续到了MacOSX10.8。该版本中首次加入了日志式文件系统,还加入了用于发现网络上的设备和服务的Bonjour协议,如打印机或其他计算器;新增了即时通信客户端iChat。

MacOSX10.0发布于2001年3月,内部代

MacOSX10.3发布于2003年10月,代号为Panther。该版本加入了对用户目录进行加密的功能FileVault,推出了新的Web浏览器Safari代替之前和微软合作使用的InternetExplorerforMac。系统中的卷默认使用被称为HFSJ的日志式文件系统。

MacOSX10.4发布于2005年4月,代号为Tiger。该版本中加入了基于索引的搜索工具Spotlight。除了标准的UNIX文件系统权限控制外,在HFS+的文件系统中还加入了基于访问控制列表的权限管理机制。

MacOSX10.3发布于2003年10月,代号

MacOSX10.5发布于2007年10月,代号为Leopard。自动备份工具TimeMachine就是随着这个版本发布的。该版本增加了在Finder中直接按空格键快速预览文件的特性。同时推出的还有BootCamp软件,可以用于在搭载Intel处理器的苹果计算机上安装微软的Windows操作系统。

MacOSX10.6发布于2009年6月,代号为SnowLeopard。从该版本起,苹果公司完全放弃了PowerPC架构处理器的支持,仅支持安装在使用了Intel处理器的苹果计算机上。该版本主要做了性能的改进,大部分系统应用程序进行了重新编译以支持64位架构。

MacOSX10.5发布于2007年10月,代号

MacOSX10.7发布于2011年7月,代号为Lion。这是第一个通过应用商店MacAppStore发行的MacOS操作系统,系统中新增了Mac间文件共享的工具AirDrop,只要简单的拖动操作就可以在设备间传输文件。随系统发行的还有FaceTime,可以用于Mac、iPhone、iPad之间的视频通话。新版本的加密工具FileVault2提供了全盘加密功能,添加了对外部硬盘的支持和用于修复系统的恢复分区功能。在MacOSX10.7.2的更新中推出了iCloud功能,支持邮件、日历和联系人的同步。

MacOSX10.7发布于2011年7月,代号为

OSX10.8发布于2012年7月,代号为MountainLion。苹果公司将MacOSX重命名为OSX,去掉了开头的Mac。该版本中iChat应用被Messages替换,新增了对iMessage的支持功能,可以与运行iOS的设备互通消息,用户iPhone、iPad上的iMessage消息也会同步到MacOS上。系统中新增的备忘录、提醒事项、通知中心、游戏中心等也多是源于iOS中的功能。

OSX10.8发布于2012年7月,代号为Moun

OSX10.9发布于2013年10月,代号为Mavericks。从该版本起,苹果公司不再按惯例使用猫科动物的名称作为系统代号,而是使用了景点的名字;用户不再需要付费升级系统,在MacAppStore中即可免费获取。与上一个版本类似,该版本中加入了同样先在iOS操作系统中搭载的iBooks电子书程序和地图程序,在Finder中加入了文件标签功能和标签页浏览模式。该版本中iCloud的功能得到了增强,可以在设备间同步钥匙串中存储的密钥。

OSX10.9发布于2013年10月,代号为Mav

OSX10.10发布于2014年10月,代号为Yosemite。随之推出的iCloudDrive云存储兼容OSX、iOS和Windows三大操作系统平台,支持存储应用数据、音乐、照片、视频等各类数据,用户可以方便地跨平台存取自己的文件。新增的Continuity功能可以将iOS的内容同步至OSX,如使用Mac收发iPhone的短信、通过Mac拨打和接听电话。此外,AirDrop也支持iOS和OSX之间的文件传输。

OSX10.10发布于2014年10月,代号为Yo

OSX10.11发布于2015年9月,代号为ElCapitan。这是一次小的系统更新,主要增强了OSX的设计和可用性,同时包括性能改进和安全更新。新增的系统完整性保护(SystemIntegrityProtection)禁止软件以root身份在OSX上运行,并且目录/System、/sbin、/usr仅供系统使用,系统会阻止用户在这些目录中的操作。

OSX10.11发布于2015年9月,代号为El

macOS10.12发布于2016年9月,代号为Sierra。苹果公司将OSX重命名为macOS以匹配公司的其他操作系统(如iOS、watchOS、tvOS)的命名体系。苹果公司对之前版本的Continuity功能进行了扩展,当用户佩戴配对的AppleWatch靠近计算机时,计算机系统会自动解锁,同一AppleID附件的macOS和iOS设备的剪贴板可以互通,用户可以很方便地在不同设备间进行复制、剪切和粘贴操作。iCloudDrive新增了可以自动同步文稿和桌面上的文件的选项。Siri语音助手也被添加进该版本中。

macOS10.12发布于2016年9月,代号为Si

在macOSSierra中,苹果公司发布了名为AppleFileSystem(APFS)的新文件系统,该文件系统面向固态存储介质设计,原生支持多种加密方式(如全盘加密、单密钥加密、多密钥加密),但在当时的系统中并没有成为默认的文件系统,只是增加了支持而已。

在macOSSierra中,苹果公司发布了名为Apple

macOS10.13发布于2017年9月,代号为HighSierra。在该版本中,APFS成为默认的文件系统,取代了之前已使用多年的文件系统HFS+。新增的高效视频编码(HighEfficiencyVideoCoding,HEVC)支持对数字视频相关的取证提出了新的挑战。

macOS10.13发布于2017年9月,代号为Hi

macOS10.14发布于2018年9月,代号为Mojave。这是最后一个可运行32位应用的macOS版本。该版本新增了与iOS系统中的股市、语音备忘录和家庭App类似的应用程序。Mac和iPhone的互通功能进一步加强,用户可以用iPhone就近拍张照片或扫描文档,然后让它自动出现在Mac上。

macOS10.14发布于2018年9月,代号为Mo

2019年苹果发布macOS10.15,代号Catalina。macOSCatalina用AppleMusic、ApplePodcasts和AppleTV取代了已存在多年的经典iTunes软件。通过Sidecar分屏功能,用户的iPad可以作为Mac的一个扩展屏幕使用。另外,macOSCatalina的安全性也进一步提升,其Gatekeeper功能现可以检查所有应用是否存在已知的安全问题,新的数据保护流程需要所有应用在访问用户文档之前获得许可。

2019年苹果发布macOS10.15,代号Cata

2020年苹果发布了macOS11.0,其正式名称为macOSBigSur。该版本的系统界面进行了重新设计,包括内置应用的图标、原生应用界面的一致性、桌面的程序和菜单栏等方面都有全新的变化;另外,还增加了Safari浏览器的翻译功能等。

2020年苹果发布了macOS11.0,其正式名称为

6.1.3 macOS取证主要信息源

macOS是类UNIX操作系统,所以从取证角度上与Windows有很大的不同,与UNIX/Linux操作系统的取证存在一些相似点,但作为图形用户界面的操作系统,其与一般用于服务器中时命令行界面的UNIX/Linux操作系统取证操作又有很多差异。

6.1.3 macOS取证主要信息源

macOS是

从文件系统目录结构看,macOS一部分目录是UNIX通用目录,如/bin(UNIX命令存放目录)、/sbin(UNIX系统管理类命令存放目录)、/usr(第三方程序安装目录)、/dev(设备文件存放目录)、/etc(系统配置文件存放目录)、/tmp(临时文件存放目录)、/var(存放经常变化的文件)。其中,/etc、/tmp、/var目录在取证中是需要重点关注的地方,此3个目录实际上分别为指向/private/etc、/private/tmp和/private/var的链接。

macOS还有一部分目录是其特有的目录,从概念上讲,包括User域(Domain)、Local域、Network域、System域等。

从文件系统目录结构看,macOS一部分目录是UNIX通

User域包含特定用户的资源,是用户的主目录。本地主目录的位置为“/Users/用户名/”(注:用户名不同,位置也不同。若用户名为bob,则主目录位置为/Users/bob/,下同)。若为网络用户,则主目录的位置为“/Network/Users/用户名/”。用户主目录存有用户的个人资料和配置,在取证中是需要重点关注的地方。该目录下几个常见的标准目录是取证时的重要信息资源,如Trash、Applications、Desktop、Documents、Library、Movies、Music、PicturesSites等,如表6-1所示。

User域包含特定用户的资源,是用户的主目录。本地主目电子数据取证技术--课件--第6章-macOS操作系统取证技术

macOS中的钥匙串功能保存着操作系统中的各种密钥、应用程序密码、网站密码、无线网络密码、证书文件,往往会存有一些对案件调查有利的信息。钥匙串界面如图6-2所示。

macOS中的钥匙串功能保存着操作系统中的各种密钥图6-2钥匙串界面图6-2钥匙串界面

macOS操作系统中提供了很多便利的程序,如邮件客户端、备忘录、便笺、提醒事项、信息等,往往在这些应用中会存有一些关键信息,对调查取证有很大的帮助。

macOS操作系统中提供了很多便利的程序,如邮件客户端

6.2 macOS系统取证

6.2.1 macOS支持的文件系统及特点1. HFS+macOS10.12及之前版本的macOS主要使用HFS+ 文件系统,HFS+ 是HFS文件系统的更新版本,又名HFSPlus、HFSExtended、MacOSExtended。HFS+ 改进了HFS文件系统的结构和对数据管理中存在的不足。HFS+ 文件系统的主要特点体现在以下几个方面。

6.2 macOS系统取证

6.2.1 macOS

1)采用32位数记录分配块数量

HFS和HFS+文件系统对磁盘卷采用分块进行分配,将一个卷分成等大的分配块(AllocationBlocks)。

2)目录树节点大小增加到4KB

HFS文件系统的目录树节点大小为512B;由于HFS+ 文件系统目录树索引节点需要存储附加指针和节点描述符两个关键值,因此HFS+ 文件系统的目录树节点大小增加到4KB。

3)单一文件大小得到提升

HFS文件系统的单一文件大小上限为231bit,而HFS+ 文件系统的单一文件大小最大可达到263bit。

1)采用32位数记录分配块数量

HFS和HFS+

4)支持长文件名

HFS文件系统对文件名最长支持到31个字符;而HFS+文件系统对文件名采用Unicode编码,最长达到255个字符。

4)支持长文件名

HFS文件系统对文件名最长支持

2. APFS

苹果公司在2016年的WWDC(WorldwideDevelopersConference,全球开发者大会)上正式公布了全新的文件系统APFS,macOS10.12版本中加入了实验性的APFS文件系统支持,在随后的macOS10.13中,APFS文件系统正式成为系统默认的文件系统。苹果开发APFS的目的是修复HFS+中存在的缺陷,该文件系统对闪存/固态存储设备进行了优化,支持多种加密方法。在相对较小或是很大容量的存储设备中都可以使用该文件系统,在苹果公司多个平台的操作系统,如macOS、iOS、tvOS、watchOS和audioOS中也使用了APFS。

2. APFS

苹果公司在2016年的WWDC(

APFS的主要特点包括以下几个方面:

(1)写入时复制(Copy-on-Write)元数据,在崩溃、断电等情况下保护数据。

(2)文件和目录克隆不会再重复占用一遍空间,从而使得克隆更快,更节省存储空间。对克隆的文件所做的修改会被写入其他区域,与原始文件相同的部分在文件系统中是共享的。

(3)快照功能。保存文件系统的只读实例,使备份和还原操作变得更高效,可以将文件还原到一个指定的时间点。

APFS的主要特点包括以下几个方面:

(1)写入

(4)空间共享。多个APFS文件系统的卷可以共用一个APFS容器下的物理磁盘空间,每个卷的可用空间都是当前容器中的可用空间。支持快速调整卷大小而不用重新分区。

(5)加密支持是APFS设计中重要的一部分,APFS支持全盘加密、文件加密、敏感元数据加密。根据系统和硬件的不同,APFS使用AES-XTS或AES-CBC进行加密。除支持单密钥加密外,APFS还支持多密钥加密。在多密钥加密模型中,每个文件使用不同的密钥进行加密,敏感元数据使用其他密钥进行加密。多密钥加密确保了数据的安全,即使获取了设备密钥,依然无法解密部分文件。

(4)空间共享。多个APFS文件系统的卷可以共用一个

(6)稀疏文件存储。只有当真正需要存储空间时才会分配空间,可以节省磁盘空间,用以存储更大的文件。

(7)原子级安全存储基元(AtomicSafe-savePrimitives)。从用户的角度来看,事务要么完成,要么不完成。

在终端执行diskutilapfslist命令,可以查看APFS容器中的卷列表,如图6-3所示。

(6)稀疏文件存储。只有当真正需要存储空间时才会分配图6-3查看APFS容器中的卷列表图6-3查看APFS容器中的卷列表

3.其他

除了支持HFS、HFS+、APFS这些macOS独有的文件系统外,macOS还支持FAT、FAT32、ExFAT的读写,支持读取微软的NTFS文件系统,但需要安装第三方驱动程序才能实现写入操作。所以,在对macOS操作系统进行在线取证的操作中推荐使用ExFAT文件系统的外部磁盘,这样也可以方便地读取Windows操作系统机器中的数据。

3.其他

除了支持HFS、HFS+、APFS这些

目前,大多取证软件对APFS的支持还不是很完善,EnCaseForensics在V8.07中新增了对APFS的支持,BlackBagTechnologies公司的Blacklight2018已完全支持对APFS的分析,WinHex/X-WaysForensics目前还只能识别APFS分区却不能解析文件,ParagonSoftware公司的APFSforWindows支持在Windows操作系统中挂载包含APFS文件系统的磁盘。

目前,大多取证软件对APFS的支持还不是很完善,EnC

6.2.2 macOS日志文件、配置文件分析

1.常见系统的基本信息

macOS操作系统的基本信息主要包括产品名称、当前系统版本、完整计算机名、主机名和最后登录用户等,它们分别存放在 /System/Library/CoreServices/SystemVersion.plist、/Library/Preferences /SystemConfiguration/preferences.plist、/Library/Preferences/com.apple.loginwindow.plist中。

6.2.2 macOS日志文件、配置文件分析

1.

Plist(PropertyList,属性列表)是一种用来存储序列化后的对象的文件。属性列表文件的扩展名为.plist,因此通常被称为Plist文件。Plist文件中存储的数据是抽象的,其采用的文件格式可以不止一种,有XML格式的文件,也有二进制格式的文件。在macOS中,Plist通常用于存储配置文件、历史记录文件。苹果公司的开发工具Xcode中包含一个可以以树形结构查看与编辑Plist文件的工具。

Plist(PropertyList,属性列表)是一

/System/Library/CoreServices/SystemVersion.plist中保存了当前系统版本、产品版权等信息,文件内容如图6-4所示。其中,ProductBuildVersion、ProductVersion均为当前版本信息。图6-4 SystemVersion.plist文件内容

/System/Library/CoreService

/Library/Preferences/SystemConfiguration/preferences.plist中保存了计算机名、主机名等信息,文件内容如图6-5所示。其中,ComputerName为完整的计算机名,LocalHostName为主机名。图6-5 preferences.plist文件内容

/Library/Preferences/System

/Library/Preferences/com.apple.loginwindow.plist中保存了最后登录的用户信息,如图6-6所示。其中,lastUserName为最后登录的用户的用户名。图6-6 com.apple.loginwindow.plist文件内容

/Library/Preferences/com.ap

/Library/Receipts/InstallHistory.plist中保存了系统和应用的安装记录,如图6-7所示。其中,Item0为macOS操作系统安装的记录,Item1向后的记录则包含了后续的应用安装、在取证中常用到的其他一些数据保存位置如表6-2所示。

/Library/Receipts/InstallHi图6-7 InstallHistory.plist文件内容图6-7 InstallHistory.plist文件内电子数据取证技术--课件--第6章-macOS操作系统取证技术

2.日志文件的取证

日志文件是macOS常见的取证信息来源,一般日志文件位于/private/var/log目录下。其中,有一些日志与Linux或UNIX相同,此处不另行阐述;也有一些特殊日志或特殊格式的日志。

在private/var/log目录下,常见的日志文件有system.log、system.log.0.gz,通过这些日志文件可以获得开关机记录的用户名和时间,如图6-8所示。

2.日志文件的取证

日志文件是macOS常见的取图6-8 private/var/log目录下的系统日志图6-8 private/var/log目录下的系统日志

macOS的部分系统日志文件扩展名为 .asl(AppleSystemLogger),可使用控制台程序打开它们,如图6-9所示。通过网址 /*/documentation/os/logging*/可查看日志文件的具体介绍。

macOS的部分系统日志文件扩展名为 .asl(App图6-9使用控制台程序打开 .asl文件图6-9使用控制台程序打开 .asl文件

另外,在macOS10.12版本以后,苹果公司采用了一种新的日志UnifiedLog,苹果公司对外不公开该文件格式,仅提供读写日志的接口。该日志存储在 /var/db/diagnostics和/var/db/uuidtext两个目录下,其中包含大量的信息,如网络连接、USB使用记录信息、系统启动信息、系统备份、邮件同步、iCloud连接设备等。

除了使用专用取证工具对这些信息进行自动分析外,还可以使用/usr/bin/log命令或者苹果公司提供的应用控制台工具进行分析。

另外,在macOS10.12版本以后,苹果公司采用了

6.2.3 macOS网络信息分析

在macOS中,计算机网络配置主要查看/Library/Preferences/SystemConfiguration/preferences.plist文件,在private/var/db/dhcpclient/leases/目录下存储着通过DHCP获取的详细网络配置信息,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论