丁丽萍1,2+,王永吉1
1 (中国科学院软件研究所 互联网软件技术实验室,北京,100080)
2 (北京人民警察学院 警务科学研究所,北京,100029)
摘要: 计算机取证工具用于计算机证据的获取、分析、传输、存档、保全和呈堂,为了确保计算机证据有较强的证明力并具备证据的可采用标准,用于计算机取证的工具软件必须进行严格的检测。本文论述了计算机取证的概念和步骤,提出了计算机取证软件工具应具备的基本功能和对计算机取证工具进行检测的必要性和基本方法。
关键词: 计算机证据 计算机取证 步骤 功能 检测 方法
一、计算机取证的概念、步骤和相关的工具
1、计算机取证的概念
取证专家Reith Clint Mark认为:计算机取证(computer forensics)可以认为是“从计算机中收集和发现证据的技术和工具” [11]。实际上,计算机取证就是对于存在于计算机及其相关设备中的证据进行获取、保存、分析和出示。用于计算机取证的工具必须在计算机取证的任意一个步骤中具有特殊的功能,使得由于这一工具的使用保证了计算机取证工作能够顺利进行并获取到可以被作为证据使用的数据资料。
计算机取证的步骤
.2.1 保护现场和现场勘查
现场勘查是获取证据的第一步,主要是物理证据的获取。这项工作可为下面的环节打下基础。包括封存目标计算机系统并避免发生任何的数据破坏或病毒感染,绘制计算机犯罪现场图、网络拓扑图等,在移动或拆卸任何设备之前都要拍照存档,为今后模拟和还原犯罪现场提供直接依据。在这一阶段使用的工具软件由现场自动绘图软件、检测和自动绘制网络拓扑图软件等组成。
2.2 获取证据[6][7]
证据的获取从本质上说就是从众多的未知和不确定性中找到确定性的东西。这一步使用的工具一般是具有磁盘镜像、数据恢复、解密、网络数据捕获等功能的取证工具。
2.3 鉴定证据[6] [9]
计算机证据的鉴定主要是解决证据的完整性验证和确定其是否符合可采用标准。计算机取证工作的难点之一是证明取证人员所搜集到的证据没有被修改过。而计算机获取的证据又恰恰具有易改变和易损毁的特点。例如,腐蚀、强磁场的作用、人为的破坏等等都会造成原始证据的改变和消失。所以,取证过程中应注重采取保护证据的措施。在这一步骤中使用的取证工具包括含有时间戳、数字指纹和软件水印等功能的软件,主要用来确定证据数据的可靠性。
.2.4 分析证据
这是计算机取证的核心和关键。证据分析的内容包括:分析计算机的类型、采用的操作系统,是否为多操作系统或有无隐藏的分区;有无可疑外设;有无远程控制、木马程序及当前计算机系统的网络环境。注意分析过程的开机、关机过程,尽可能避免正在运行的进程数据丢失或存在的不可逆转的删除程序。分析在磁盘的特殊区域中发现的所有相关数据。利用磁盘存储空闲空间的数据分析技术进行数据恢复,获得文件被增、删、改、复制前的痕迹。通过将收集的程序、数据和备份与当前运行的程序数据进行对比,从中发现篡改痕迹。可通过该计算机的所有者,或电子签名、密码、交易记录、回邮信箱、邮件发送服务器的日志、上网IP等计算机特有信息识别体,结合全案其他证据进行综合审查。注意该计算机证据要同其他证据相互印证、相互联系起来综合分析。同时,要注意计算机证据能否为侦破该案提供其他线索或确定可能的作案时间和罪犯。用于进行计算机证分析的工具必须完成这些任务之一。
2.5 进行追踪
上面提到的计算机取证步骤是静态的,即事件发生后对目标系统的静态分析。随着计算机犯罪技术手段的升级,这种静态的分析已经无法满足要求,发展趋势是将计算机取证与入侵检测等网络安全工具和网络体系结构技术相结合,进行动态取证。整个取证过程将更加系统并具有智能性,也将更加灵活多样。对某些特定案件,如网络遭受黑客攻击,应收集的证据包括:系统登录文件、应用登录文件、AAA登录文件 (比如 RADIUS 登录)、网络单元登录(Network Element logs)、防火墙登录、HIDS 事件、NIDS 事件、磁盘驱动器、文件备份、电话记录等等。对于在取证期间犯罪还在不断进行的计算机系统,采用入侵检测系统对网络攻击进行监测是十分必要的。也可以通过采用相关的设备或设置陷阱跟踪捕捉犯罪嫌疑人。
.2.6 提交结果
打印对目标计算机系统的全面分析和追踪结果,然后给出分析结论:系统的整体情况,发现的文件结构、数据、作者的信息,对信息的任何隐藏、删除、保护、加密企图,以及在调查中发现的其它的相关信息。标明提取时间、地点、机器、提取人及见证人。然后以证据的形式按照合法的程序提交给司法机关。
3、计算机取证的相关工具
.3.1 一般工具软件
用于检测分区的工具软件、杀毒软件、各种压缩工具软件等。
3.2 取证专用工具软件:
文件浏览器:这类工具是专门用来查看数据文件的阅读工具。只用于查看而没有编辑和恢复功能,从而体积较小并可以防止证据的破坏。比较好的软件是Quik View Plus(http://www.jasc.com/)。它可以识别200种以上文件类型,可以浏览各种电子邮件文档。比起WordPerfect的频繁转换要方便的多。Conversion Plus可以用于在Windows系统下浏览Macintosh文件。
图片检查工具:ThumbsPlus是一个功能很全面的进行图片检查的工具。
反删除工具:这方面的取证分析工具中最主要的是诺顿工具,虽然这是一个老式的工具,但在有些时候是很有用的。
CD-ROM工具:使用CD-R Diagnostics可以看到在一般情况下看不到的数据。
文本搜索工具:dtSearch是一个很好的用于文本搜索的工具,特别是具有搜索Outlook的.pst文件的能力。
驱动器映像程序:可以满足取证分析(即逐位拷贝以建立整个驱动器的映像)的磁盘映像软件包括:SafeBack(http://www.forensics-intl.com/)、SnapBack(http://www.cdp.com/)、Ghost(http://symantec.com/)、dd(UNIX中的标准工具)等。
磁盘擦除工具:这类工具主要用在使用取证分析机器之前,为了确保分析机器的驱动器中不包含残余数据,显然,只是简单的格式化肯定不行。从软盘启动后运行NTI公司的DiskScrub程序即可把硬盘上的每一扇区的数据都清除掉。
取证程序:取证软件的效能倾向于同时拥有收集及分析数据的功能。目前,国际上的主流产品有:
Forensic Toolkit:是一系列基于命令行的工具,可以帮助推断Windows NT文件系统中的访问行为。这些程序包括的命令有:AFind(根据最后访问时间给出文件列表,而这并不改变目录的访问时间)、HFind(扫描磁盘中有隐藏属性的文件)、SFind(扫描整个磁盘寻找隐藏的数据流)、FileStat(报告所有单独文件的属性)、NTLast(提供标准的GUI事件浏览器之外对每一个会话都记录了登录及登出时间,并且它能够指出登录是远程的还是本地的)。
The Coroner’s Toolkit(TCT):主要用来调查被“黑”的Unix主机,它提供了强大的调查能力,它的特点是可以对运行着的主机的活动进行分析,并捕获目前的状态信息。其中的grove-robber可以收集大量的正在运行的进程、网络连接以及硬盘驱动器方面的信息。数据基本上以挥发性顺序收集,收集所有的数据是个根缓慢的过程,要花上几个小时的时间。TCT还包括数据恢复和浏览工具unrm&lazarus、获取MAC时间的工具mactime。还包括一些小工具,如ils(用来显示被删除的索引节点的原始资料)、icat(用于取得特定的索引节点对应的文件的内容)等等。
EnCase自称是唯一一个完全集成的基于Windows界面的取证应用程序,其功能包括:数据浏览、搜索、磁盘浏览、数据预览、建立案例、建立证据文件、保存案例等。
ForensicX:主要运行于Linux环境,是一个以收集数据及分析数据为主要目的的工具。它与配套的硬件组成专门工作平台。它利用了Linux支持多种文件系统的特点,提供在不同的文件系统里自动装配映像等能力、能够发现分散空间里的数据、可以分析Unix系统是否含有木马程序。其中的Webtrace可以自动搜索互联网上的域名,为网络取证进行必要的收集工作,新版本具有识别隐藏文件的工具。
New Technologies Incorporated (NTI,http://www.forensics-intl.com/.):NTI是取证软件最为固定的商家之一。NTI以命令的形式执行软件,所以速度很快,软件包的体积小,适合于在软盘上使用。该公司提供的取证工具包括:
CRCMD5:一个可以验证一个或多个文件内容的CRC工具。
DiskScrub:一个用于清除硬盘驱动器中所有数据的工具。
DiskSig:一个CRC程序,用于验证映像备份的精确性。
FileList:一个磁盘目录工具用来建立用户在该系统上的行为时间表。
Filter_we:一种用于周围环境数据的智能模糊逻辑过滤器。
GetSlack:一种周围环境数据收集工具,用于捕获未分配的数据。
GetTime:一种周围环境数据收集工具,用于捕获分散的文件。
Net Threat Analyzer:网络取证分析软件,用于识别公司互联网络账号滥用。
M-Sweep:一种周围环境数据清除工具。
NTI-DOC:一种文件程序用于记录文件的日期、时间以及属性。
PTable:用于分析及证明硬盘驱动器分区的工具。
Seized:一种用于对证据计算机上锁及保护的程序。
ShowFL:用于分析文件输出清单的程序。
TextSearch Plus:用来定位文本或图形文件中的字符串的工具。
本文所论述的软件工具主要是指取证专用软件。
计算机取证工具应具备的基本功能
计算机取证需要的软件工具必须满足最基本的取证要求,具备下列基本功能之一:
发现计算机证据
可以根据案情定位可疑主机和犯罪现场的位置。
存储计算机证据
存储计算机证据的软件工具主要是指那些能够对计算机证据进行保全的软件,可以证明计算机证据从获取到提交法庭这段时间内没有被修改过。
传输计算机证据
能够保证计算机证据的可靠传输。
4、提取计算机证据
这方面的计算机取证工具主要用于从可疑主机或网络上自动提取出计算机证据
5、 分析计算机证据
对含有计算机证据的计算机系统或网络进行分析,发现和犯罪事实相关联的全部数据资料
6、 鉴定计算机证据
确定计算机证据符合证据的可采用标准。
三、计算机取证工具检测的必要性
目前,计算机取证工具主要是国外生产的,国内的产品还寥寥无几。但是,随着计算机应用的普及,计算机证据会越来越多,用于计算机取证的国产工具目前也有了一些并且有一些正在研制过程中。哪些软件工具可以用于计算机取证,哪些企业可以生产计算机取证工具,什么样的计算机取证工具可以用于司法活动,这些都是亟待解决的问题。所以,我国计算机取证工具的检测和认定是十分必要的。可以在“双软认定”(是指软件企业的认定和软件产品的登记,http://www.chinasoftware.com.cn/cognizance_guide_product.asp)的基础上进行更加严格细致的专业测试和管理。
计算机取证工具的生产属于特殊行业
生产计算机取证工具软件的企业实际上是在生产破案工具,应该是经过严格的资格认定的企业或者国家机关,并且应该属于公安机关或其他司法机关认定的特殊行业。目前的这种任何软件企业都可以生产和研制的状况必须改变。
计算机取证工具软件的质量事关重大
计算机取证软件工具的质量关系到案件是否能够及时侦破,关系到司法活动的公平和公正性。如果计算机取证工具质量低劣或者功能欠缺就有可能造成犯罪分子逍遥法外或者错抓错捕的情况,使法律失去尊严、丧失公正。所以,计算机取证工具的质量必须得到保障。
四、计算机取证工具的检测方法
制定计算机取证工具产品和行业标准
生产计算机取证产品的企业应该进行特种行业的资质认定,在有管理部门备案。同时,制定管理办法对从事计算机取证产品的生产企业进行常规管理。这些管理办法应该包括生产企业的规模、设备、技术水平、技术人员等等。应定期对生产企业进行检查,对于不具备生产条件的企业或者生产的产品不合格的企业应该予以撤销。对于信得过的产品可以加以推广以形成我国自己的具有代表性的取证产品。
计算机取证产品的管理包括产品生产和使用全过程的管理。特别是,在产品投入使用之前应该进行严格的测试和试运行。计算机取证产品应该严格禁止假、冒、伪、劣,采用软件水印技术等先进技术并建立严格的法律法规防止盗版侵权。这方面的管理标准应该包括产品的质量标准、准用标准等。
设立专门的检测机构
应该在产品质量监督部门设置专门的机构或实验室进行计算机取证产品的检测。这样的部门应该由计算机软件测试专家、计算机取证专家和其他计算机专业人员组成,负责对计算机取证工具软件产品进行严格的检测和认定,只有通过这一机构认定的产品才可以投入使用。
计算机取证软件产品检测实务
计算机取证软件的检测应该包括计算机取证软件的测试和检查两大部分。具体地,应该有以下步骤组成
检查产品的生产企业的资质、检查提交的产品的各种文档是否齐全。
撰写测试计划:仔细阅读产品的各种文档后撰写测试计划,在测试计划中应该写清楚测试的范围、需求、参考资料、技术背景、产品的必备功能、产品的可选功能、测试方法、采用的测试工具、测试用例的详细描述和有关数据列表、在每一个测试用例中应该特别注意写清楚所有可能的输入和应该出现的输出结果。
进行测试:严格按测试计划对产品进行详细的测试。测试过程要详细记录:每一个运行结果、反应时间、评价等等
撰写测试报告和检测报告:测试和检查结束后应该根据记录的结果撰写详细的测试报告和检测报告。测试报告和检测报告应该包括:检测人,检测日期,实际使用的检测方法和工具,检测的技术指标,输入,输出,每一项输出是否满足要求,响应时间,结论等。
五、结论
随着网络和计算机技术的发展,以数字形式存贮和传输的计算机证据逐渐增多,用于计算机取证的工具软件也会随之出现,如何保证计算取证工具软件的质量关系到法律的公正和国家的尊严,因此,对计算机取证工具软件的严格管理和检测势在必行。
参考文献:
http://www.chinasoftware.com.cn/cognizance_guide_product.asp,软件产品认定指南。
http://www.cftt.nist.gov/project_overview.htm,CFTT Project Overview
3、Warren G.KruseII,Jay G.Heiser. Computer forensics: incident response essentials. 1st Edition, ISBN: 0201707195, Pearson Education, Inc, USA.
4、Michael R. Anderson. Computer evidence processing: the important first step-safe seizure of the computer.http://www.forensics-intl.com/.
5、Sommer P. Computer forensics: an introduction in proceedings of the computer forensics ’92-the 9th world conference on Computer Security Audit and Control. London Elsevier Advanced Technology,1992:82-96,http://www.virtualcity.co.uk/vcaforens.htm.
6、Anderson Michael R. Electronic fingerprints-computer evidence comes of age,http://www.forensics-intl.com/.
|