Windows 8 系统中的USB 设备连接时间戳问题的研究
2015-12-10吴玉强
吴玉强
摘要:在计算机取证工作中,针对文件或设备的使用和安装时间的取证分析是一个很重要的内容,往往对案件的重建有着重要价值。而操作系统的快速更新换代,使得系统中一些功能优化或修改从而对取证带来影响。因此,取证人员要紧跟操作系统的更新换代对取证过程可能带来的变化引起重视。本文就针对Windows 8操作系统中的USB设备连接时间戳问题进行分析研究,并对比其与之前操作系统的异同,以期能够为计算机取证工作提供帮助。
关键词:计算机取证;Windows 8;USB;时间戳
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2015)26-0039-01
所谓USB,即通用串行总线是英文Universal Serial Bus的缩写,它是一个外部总线标准,在1994年底由Intel、Compaq、Microsoft、IBM等多家公司联合提出的应用在PC领域的接口技术以规范电脑与外部设备的连接和通讯并且支持设备的即插即用和热插拔功能。
查看一些USB设备连接历史是在计算机取证工作中经常遇到的事情,根据USB设备的固有特点,可知任何一个USB设备都有设备描述符,它主要是由bcdUSB(USB 版本)、idVendor(厂商编号)、idProduct(产品编号)、bcdDevice(设备出厂编号)、iSerialNumber(设备序列号)等字段组成。其中设备序列号的值可以作为该USB 设备的唯一性标记(UID,unique instanceidentifier),当于网卡的MAC 地址,可以在操作系统中区分开不同的USB设备,这也是我们在计算机取证中验证设备唯一性很重要的一项值。区分不同USB设备固然简单,但是要跟踪USB设备插入时间就不是那么容易了。在Windows 8出来之前,当在电脑上连接USB设备时,系统会弹出对话框,但一般没有与之直接相关的时间戳。也就是说在Windows Vista和Windows 7的注册表中不能获取Last Modified timestamps(最后修改的时间戳)信息的。但通过笔者的操作实验,在Windows 8系统的注册表的设备信息上发现了3个新的时间戳信息:Last Arrival Date(最后插入日期),Last Removal Date(设备最后移除日期)和Fireware Date(固件日期)。这些时间戳信息无疑是计算机取证中一个很有价值的证据关注点。我们可以在Windows 8注册表的HKEY_LOCAL_MACHINE\SYSTEM\下看到如下地址:
CurrentControlSet\Enum\DeviceType\DeviceID\InstanceID\{GUID}\Properties\xxxx
以笔者安装了Windows 8.1专业版系统的台式机为例,其具体地址为:
CurrentControlSet\Enum\USBSTOR\CdRom&Ven_HTC&Prod_Android_Phone&Rev_0000\9&50dc296&0&HC43GWW00615&0\Properties\{83da6326-97a6-4088-9453-a1923f573b29}
如图所示:
我们可以看出Windows 8系统增加了3个新的时间戳信息:
[名称\&属性路径\&Last Arrival Date\&{83da6326-97a6-4088-9453-a1923f573b29}\0066\&Last Removal Date\&{83da6326-97a6-4088-9453-a1923f573b29}\0067\&Firmware Date\&{540b947e-8b40-45bc-a8a26a0b894cbda2}\0011\&]
我们可以在Windows SDK(即,软件开发工具包,它包含了开发该版本所需的API函数说明文档、Windows函数和常数定义等相关工具和示例)中验证这些细节,这些特性在包含文件‘devpkey.h中被定义。所有的时间戳都是标准的Windows 64位(文件时间)格式。最后一个时间戳Firmware Date “固件日期”只在Windows8.1中推出,但笔者没有在注册表中查找到,对此有待后续研究发现。术语Last Arrival Date(最后抵达时间)是由微软给出的描述,通常,我们称之为“最后插入时间”。Last Removal Date为该设备的最后移除时间。因此在Windows 8中,我们可以获取到USB设备的更为精确的时间戳。
为了与之前操作系统进行对比,这里,我们列出Windows7中USB设备所包含的3个时间戳:
[名称\&属性路径\&Driver Assembly Date\&{a8b865dd-2e3d-4094-ad97-e593a70c75d6}\0002\&Install Date\&{83da6326-97a6-4088-9453-a1923f573b29}\0064\&First Install Date\&{83da6326-97a6-4088-9453-a1923f573b29}\0065\&]
(下转第44页)
(上接第39页)
需要注意的是,上面显示的属性路径是针对Windows8系统而言,在Windows 7中,其显示格式为{GUID}\00xx\00000000\Data,而非{GUID}\00xx。此外Install Date(安装日期)和First Install Date(首次安装日期)包含完全相同的时间戳,当一个驱动程序重新安装或升级时才会产生不同。
本文比较了Windows 8系统与Windows 7系统中USB设备连接时间戳的异同。通过实验,我们可以获取Windows 8系统中USB设备中新加了Last Arrival Date、Last Removal Date、Firmware Date这几项时间戳信息,从而给计算机取证工作带来一些便利。
参考文献:
[1] 孙奕. Widows 7环境下电子取证特点分析[J]. 信息网络安全,2010(4).
[2] 王宁, 刘志军. Widows 7系统注册表的取证分析[J]. 警察技术,2013(5).
[3] 汤艳君, 高洪涛, 罗文华,等. 电子物证检验与分析[M]. 北京:清华大学出版社,2014.
[4] 吴剑. 针对Windows 7系统的计算机取证问题分析[J]. 电脑知识与技术,2011(6).
[5] 邢桂东. Windows操作系统注册表检验[J].刑事技术,2011(4).
[6] 刘志军,王宁. USB设备盗窃文件案的分析与鉴定[J].信息网络安全,2011(5):91-93.