这几天处理的一个案例中需要对浏览器缓存信息进行提取,中途遇到一点小插曲,和大家分享一下分析解决过程。检材镜像中安装了Windows 7 SP1旗舰版操作系统,取证软件为取证大师专业版,版本为V5.3.49418RTM。
使用取证大师执行自动取证解析得到IE浏览器缓存信息25条,点击取证结果“上网记录”→“Internet Explorer”→“缓存记录”节点左边的遍历按钮(多边形方框),然后在右边列表视图右击,选择“导出”→“导出勾选缓存关联文件”。
图1 导出IE浏览器缓存文件 |
按照预期,导出的应该是完整的25个文件,但实际结果却并不是这样——仅导出了15个文件,少了10个。
<图2 IE浏览器缓存文件导出结果> |
按照同样的方法继续导出解析到的“Google Chrome”缓存信息。
图3 导出Google Chrome缓存文件 |
导出的结果同样让人疑惑,总共151个缓存记录,只导出了140个,少了10个。
图4 Google Chrome缓存文件导出结果 |
IE浏览器、Goolge Chrome同样出现这样的问题,让忙的团团转的我心头火上浇油,眼看着还有一大堆检材同样需要提取浏览器缓存,取证过程再出问题,很有可能无法按预定计划完成工作了。
急归急,出现问题还是要找原因并想办法解决的。
回头仔细看了一下Google Chrome缓存文件列表,终于发现了端倪。将列表按照文件大小排序一下可能比较明显。
图5 Google Chrome缓存文件列表 |
没错,有10个大小为零的文件。检查一下导出的文件,果然少掉的正好是这些文件。至此,Google Chrome缓存文件数量终于对上了。
莫非IE浏览器也是这个原因?赶紧回头看看。
图6 IE浏览器缓存文件列表 |
而然并非想象中那么简单。大小为零的记录确实存在,但数量并非预期的10,而是3。进一步查看导出的数据,有两个大小为零的文件竟然导出来了。越来越疑惑了!
图7 导出的IE浏览器缓存文件 |
回头继续看IE浏览器缓存文件列表及导出文件,发现IE浏览器缓存文件中,2017年的记录正好是10条。继续比对缓存数据列表和实际导出的文件,确定正好也是2017年的那10条记录没有对应的导出文件。难道是取证软件的BUG,导致导出的时候正好漏掉了2017年这个节点下的数据?根据个人经验,软件一般不会出现这种类型的BUG。
继续从其他地方思考吧!
检查IE浏览器和Goolge Chrome缓存信息的详细解析结果。
图8 IE浏览器缓存信息 |
图9 Google Chrome缓存信息 |
经过仔细观察对比,发现了一些有意思的地方。与Google Chrome相比,IE缓存信息中,每条记录都未解析出文件偏移。Google Chrome中,缓存记录的源文件集中在“分区1_本地磁盘[C]:\Users\Administrator.PC-20180317MHHL\AppData\Local\2345Explorer\User Data\Default\Cache\”目录下的data_1、data_2、data_3及f_000001、f_000002、……、f_000014、f_00000a、……、f_00000f等文件。IE浏览器,除了十条记录并没有源文件,其余的记录每个都有各自的源文件。没有源文件的记录正好是没有导出的那10个。由于路径太长,截图中未体现完整的路径。
至此,问题的答案呼之欲出。
我们继续一探究竟。取证大师取证结果中,每条记录右击,都可以选择“跳转到原文件”,跳转到解析出此条记录的文件。
对于IE浏览器,2018年的缓存记录跳转到原文件,一律是“对分区1_本地磁盘[C]:\Users\Administrator.PC-20180317MHHL\AppData\Local\Microsoft\Windows\WebCache\WebCacheV01.dat”,2017年的缓存记录原文件是“分区1_本地磁盘[C]:\Users\Default\AppData\Local\Microsoft\Windows\WebCache\WebCacheV01.dat”。
对于Google Chrome,大部分文件的原文件都是“分区1_本地磁盘[C]:\Users\Administrator.PC-20180317MHHL\AppData\Local\2345Explorer\User Data\Default\Cache\”目录下的data_1、data_2或data_3,"f_0000"开头的文件对应的原文件则是“分区1_本地磁盘[C]:\Users\Administrator.PC-20180317MHHL\AppData\Local\2345Explorer\User Data\Default\Cache\index”。
图10 IE浏览器缓存数据 |
图11 Chrome 缓存数据 |
看到这里,大家可能和我一样终于明白了过来:Google Chrome的缓存信息记录保存在“data_”开头文件的及index文件中,缓存的文件则保存在“data_”开头的文件及“f_0000”开头的文件中;IE浏览器缓存信息记录保存在WebCacheV01.dat文件中,缓存的文件则直接保存在IE浏览器的缓存目录下(文件夹名称一般都是“Content.IE5”),如果路径为空或者缓存文件已经不存在了,则无法导出文件。Google Chrome的缓存文件,导出到本地时,需要先到“data_”开头的文件及“f_0000”开头的文件中提取然后导出。
至此,这个案例中关于浏览器浏览器缓存文件导出数据与列表中的数据不一致的问题终于完全弄清楚了。其实,这个问题倒也算不上多复杂的取证问题,更多的是解决问题的思路。取证,绝不是简单地使用取证软件进行自动解析这么简单,取证软件仅仅是手段,用来辅助工作提高效率。调查员应该有自己的判断和思考,根据自己的经验和知识对取证软件给出的结果进行甄别。
再例如,取证大师显示的Google Chrome节点中,这些数据真的都是Google Chrome浏览器产生的吗?其实并不是,本案例中Google Chrome节点下的数据是由2345浏览器产生的,这一点从缓存信息对应的文件路径中也可以看出端倪。除了主流的浏览器取证大师会各自单独归到一个节点,其他基于Chromium开发的浏览器解析到的数据全都放到了“Google Chrome”节点下。这样做,不能说取证软件错了,而是调查人员应该主动去理解取证软件的处理逻辑。对于同一件事情,不同的取证厂商会根据自己的理解做出不同的处理方案。
软件只是外在,思维才是灵魂!