【案件分享】某次源代码泄露事件取证
背景概要
某软件公司发现公司源代码疑似出现泄露,通过初步的调查,发现公司技术总监电脑下班时没有锁屏,只是关了屏幕,而公司没有安装监控,只有门口的门禁指纹锁。通过指纹锁的出入门记录发现,公司某销售频繁凌晨三四点出入公司,调查人员初步怀疑是他盗取了公司源代码。
但是该公司没有第一时间找到专业的电子数据取证部门,而是自行插拔U盘进行了测试,导致相关USB拔插记录丢失。
Tips1: 外部设备/USB使用记录
Windows系统下,USB使用痕迹一般会在注册表、事件日志、setupapi文件等处可以分析到。
1. 注册表
注册表是USB设备使用痕迹最主要且最重要的来源。
HKLM\SYSTEM\CurrentControlSet\Enum\下的USB表键使用VID_v(4)& PID_d(4)格式描述USB设备。
其中, v(4)代表4个数字的销售商代码(由 USB协会分配给各销售商); d(4)代表4个数字的产品代码(由销售商分配给其生产的产品)。
USBSTOR表键则使用Disk& Ven_iManufacturer& Prod_iProduct& Rev_r(4)格式进行描述。iManufacturer表示制造厂商, iProduct表示设备类型, r(4)则为修正码。
上图即为该设备的制造厂商为Lenovo, 设备类型为USB_Flash_Drive, 修正码为1100, 但设备序列号比USB表键多了“ & 0” 两个字符。其实, “ & 0” 一类的字符串为系统自动添加, 不属于设备序列号范畴。如USB设备中未包含有序列号信息, Windows则会通过系统自动生成的字符串标识该设备。
USB表键和USBSTOR表键均未包含挂载的时间信息, 实际上此处时间信息是以属性形式进行存储的。选择以序列号为名称的子键, 单击右键选择“ 导出” , 并将“ 保存类型” 选为“ 文本文件” , 打开保存后的文本文件即可获得时间信息。
2. 事件日志
事件ID 20001记录了USB设备相关的插拔事件,如下图所示。
3. setupapi文件
setupapi.log(适用于 Windows XP/2000/2003)和 setupapi.dev.log(适用于 Windows Vista/7/8/10)也是分析USB设备比较好的信息来源。
在setupapi日志文件中存储了与加载到系统中的驱动程序和设备相关的所有事件,并带有时间戳以及加载了哪些驱动程序,可以用来确定:
首次插入外部设备时间
恶意驱动程序加载到系统上时间
为未知设备加载了哪些驱动程序
证明设备已成功安装且可访问
XP及以前该日志文件路径为:C:\Windows\setupapi.log
Win7/8/10该日志文件路径为:C:\Windows\inf\setupapi.dev.log
事件分析
因为关键的USB记录丢失,分析陷入了僵局。那我们能不能换个角度进行分析,通过ShellBags和Jump Lists分析出在对应时间段,确实有对泄露代码相关文件的操作行为。
Tips2: ShellBags与取证的关系
ShellBags是一组用来记录文件夹(包括挂载网络驱动器和挂载设备的文件夹)的名称、大小、图标、视图、位置的注册表项,或称为BagMRU。
每次对文件夹的操作,ShellBags的信息都会更新,而且包含时间戳信息。即使删除文件夹后,ShellBags仍然会保留文件夹的信息。通常用来分析出用户的相关文件活动。
1、如果ShellBags记录了某个文件夹,表示它一定在某个时间出现过在该系统中,包括压缩文件在内的本地文件系统、网络位置和外接设备(如U盘、移动硬盘等)上的文件夹,即使对应的设备已经不在了。
2、由于对文件夹的操作与用户的注册表配置单元相关联。可以将特定用户和特定的文件夹相关联,还可以从ShellBags包含的MAC时间戳中获取文件夹的访问时间信息。
通过使用取证软件进行分析,我们发现分别在某两日分别凌晨1点多与凌晨3点多,均有发现了文件夹操作痕迹。
Tips3: Jump Lists与取证的关系
Jump Lists是微软在Windows 7开始引入的新功能,主要提供用户查看固定在任务栏中程序最近打开的文件。
通过分析Jump Lists也可以分析出用户对文件相关的操作和具体时间。尤其是资源管理器,通常任务栏中都会固定它,资源管理器相关的Jump Lists在取证中有着广泛应用。
详细内容可以参考:https://forensicswiki.xyz/wiki/index.php?title=Jump_Lists
通过对Jump Lists的分析,我们发现有某日凌晨2点多,存在大量与泄露代码相关文件的操作行为。
事件尾声
经过缜密的取证分析,我们鉴定所给客户出具了相关的司法鉴定意见书给委托单位,案件后续也成功立案定罪。通过这次事件我个人对Windows取证也有了更加深刻的认识,相比于手机取证,Windows取证更加考验鉴定人员的基本功。
企业内部文件泄露在案件中也是时有发生,在此也希望广大企业内部提高风险意识,事前做好风险预防。如果发生安全事件后,尽可能第一时间联系公安机关,不要对检材进行其他操作,避免造成检材数据的污染。