概述
我最近参加了Sarah Edwards教授的SANS DFIR、Mac和iOS取证与事件响应课程。这给了我很多关于如何进行Mac分析的灵感,并让我更仔细地研究了一些在培训中涉及的系统文件。
我花了一些时间在我的MacBook(Mojave 10.14.2)上挖掘日志文件。对于大多数经验丰富的Unix用户来说这可能不新鲜,但有些人可能不知道,在/var/log目录中有一个很棒的小日志文件叫做daily.out。我之前对这个日志不太重视,但意识到它可以用来确定大量有用的信息。我还查看了weekly.out和monthly.out文件,但在我的情况下,这些文件的粒度要小得多。
从高层次来看,daily.out包含与磁盘使用情况和网络相关的信息,这个文件至少每天写入一次,所有三个周期性日志的配置都存储在以下位置的plist文件中:
/System/Library/LaunchDaemons/com.apple.periodic-*****.plist
在查看这个文件的内容后,我开始思考它如何协助我的案件工作?
磁盘使用情况
首先,我向团队中一位知识渊博的高个子同事借用了一些grep技能,看看我们是否能从daily.out文件中解析出一些特定信息。我们只提取包含日期的行,以及特别与磁盘使用情况相关的行。
|
|
通过这个,我们能够找到最早可追溯到3个月的条目,并且日志包含:
- 写入条目时挂载的逻辑卷
- 卷的大小
- 卷上使用的空间
可以想象,磁盘卷信息在显示写入日志时连接的驱动器或镜像方面非常有价值,特别是当你知道要证明访问的设备使用的卷名时。
我们还可以从这个日志中获取其他一些相当有价值的信息。
Bootcamp!
可能遇到这样的情况:嫌疑人、对象或一般坏人声称他们从未使用过他们的Bootcamp安装,然而,你可以从Bootcamp磁盘使用情况中看到该卷经常被读写。也许在某个关注日期之前有一大块数据被删除了?
运行时间
daily.out文件中的另一个有趣之处是,它会在写入日志条目时显示系统的运行时间。这可能有助于证明系统在特定时间段内是否开启和使用。
这也可能显示计算机上账户使用情况的一些有趣信息。由于Mac计算机通常由个人使用,这意味着通常任何时候只有一个账户登录。如果你有一个经验丰富的用户每天提升到root权限,那么看到多个账户登录可能并不罕见。但是,如果一个对root账户一无所知的 inexperienced 用户,在另一个账户登录时多次登录,可能值得怀疑或需要进一步分析。
同样,我们使用简单的grep命令从daily.out文件中提取我们感兴趣的行:
|
|
如你所见,我们可以提取关于计算机和账户使用情况的一些有趣信息:
- 显示写入daily.out条目时系统的运行时间
- 还显示登录的用户数量,记住这通常是一个
这个文件中还列出了一些非常有用的网络接口统计信息,这些可能更与事件响应调查相关,但我们可能在其他时间查看这些。
参考
点击访问summit-archive-1493741667.pdf http://thexlab.com/faqs/maintscripts.html