网络安全 频道

计算机犯罪取证之 采集易失性证据

    【IT168 专稿】在计算系统遭到入侵的情况下,用户最关心的是多长时间能使系统恢复正常,因为系统或网络中断是带来损失的主要因素。很多机构的信息传达和通报系统一旦出现突发的信息中断,会导致大部分业务暂时或者长时间无法继续运行,将给整个业务带来无法挽回的损失,“零”时间恢复似乎成了大家追捧的响应策略。根据电子取证的工作目标,保留网络犯罪的现场证据也是必须要完成的工作使命,这就好比在刑事案件的现场一样,黄色警戒线代表着“案发现场,请勿破坏!”。

    一、什么是易丢性证据
    计算机存储器一般可分为断电后数据即消失的“易失性存储器”以及断电后数据仍然保留的“非易失性存储器”。这里的易失数据特指计算机系统和网络设备当前的工作状态。它们包括:服务器信息包括服务器角色、日志(如事件日志)、文件和应用程序;网络设备的内部和外部日志,如防火墙、路由器、代理服务器、网络访问服务器 (NAS) 和入侵检测系统 (IDS)等;网络硬件组件,如网络适配器(其中包括媒体访问控制 (MAC) 地址信息)和 PCMCIA 卡,以及硬盘、网络存储设备和可移动媒体。
切记!在系统关闭之前一定要将计算机系统和网络设备的易失性数据保存下来。对于操作系统而言,在制作司法鉴定系统映像之前,这些有可能反映犯罪信息的数据包括:

 系统事件和日期
 当前登录的用户列表
 用户访问的重要文件
 网络接口和路由表
 当前系统运行的进程
 注册表的实时活动
 套接字的活动信息和应用程序

    二、准备工具
    当然,要想正确的保存上述信息确实不是易事,不同的操作系统和不同厂商的操作命令有着明显的区别,Windows操作系统下的采集工具就包含了:

 Arp:显示地址解析协议 (ARP) 表
 Date:显示当前日期设置。
 Dir:示文件和子目录的列表。
 Doskey:显示打开的 CMD.EXE 外壳的命令历史。
 Ipconfig:显示本地计算机配置。
 Net:更新、确定或查看网络或网络设置。
 Netstat:显示协议统计信息和当前连接的信息。
 Time:显示当前时间设置。
 Schtasks:显示计划任务。
 Systeminfo:提供有关计算机的常规信息。
 Vol:显示磁盘卷标和序列号。
 Hostname:显示计算机的完整计算机名称的主机名部分。
 Openfiles:查询、显示或断开连接打开的文件或由网络用户打开的文件。
 Netcap:从命令行收集网络跟踪信息。
 Tasklist:列出运行中的进程和已加载的模块。
 MBSA:确定安全补丁状态和其他已知的漏洞。
 Rsop.msc:显示策略结果集。
 Rasdiag:收集有关远程服务的诊断信息,并将该信息置于文件中。

    除此以外,你还可以Sysinternals和其他厂商提供的外部工具,比如本文中将提到的PsList等。将这些工具单独刻录成取证光盘,而不是拷贝到问题主机上运行。最后,要取保你的光盘上的工具具有一个可信的Shell(cmd)工具。

    三、保存易失数据
    在安全调查人员开始调查受安全事件困扰主机时,会从现场系统中获得大量的信息。我们可以把这个现场看成未经过拍照或者尸体未被引动的刑事案件现场。从安全现场获得系统信息后,可以采用四种方法保存现场信息:

 将获取的数据保存在移动介质上;
 将获取的数据保存在目标系统的硬盘上;
 将获取的数据信息记录到笔记本上;
 用Netcat命令将获取的资料保存在远程主机,并利用Cryptcat加密保存到司法鉴定主机上。

    在这四种方法中,前三种方法由于受到资料数据量大、信息可能被篡改、手工记录困难的影响,都不是理想的选择。显然,最后一种方式更具有快捷和安全的保存功能。

    四、从网络获取易失性数据
    Netcat被誉为网络安全界的“瑞士军刀”,也就是人们常说的“nc”。它不但是网络安全工程师的必备工具之一,也是非常著名的黑客后门工具。它能够直接由其它程序和脚本轻松驱动系统,同时,也是一个功能强大的网络调试和探测工具,能够建立你需要的几乎所有类型的网络连接。

    nc的用法非常简单,读者可以在命令行下运行nc.exe -h即可看到各参数的使用方法。它的基本格式和参数如下:

connect to somewhere:nc [-options] hostname port[s] [ports] ...
listen for inbound:   nc -l -p port [options] [hostname] [port]
-d 后台模式;
-e prog 程序重定向,一旦连接就执行,非常危险的操作;
-g gateway source-routing hop point[s], up to 8;
-G num source-routing pointer: 4, 8, 12, ...;
-h 帮助信息;
-i secs 延时的间隔;
-l 监听模式,用于入站连接;
-L 连接关闭后,仍然继续监听;
-n 指定数字的IP地址,不能用hostname;
-o file 记录16进制的传输;
-p port 本地端口号;
-r 随机本地及远程端口;
-s addr 本地源地址;
-t 使用TELNET交互方式;
-u UDP模式;
-v 详细输出用两个-v可得到更详细的内容;
-w secs timeout的时间;
-z 将输入输出关掉,用于扫描时。

    比如要在鉴定主机上收集被入侵主机的有关进程和线程的信息,我们可以进行如下操作:

    • 步骤一
    启动在司法鉴定工作站上的Netcat监听程序,讲所有进入到系统的数据以文件的形式保存下来,图1说明了在司法鉴定工作站上监正在对3333端口上进入的连接进行监听,并将监听结果树出到文件。

 
图1在司法鉴定工作站上监听3333端口

    • 步骤二
    在目标系统上(通常指被黑客入侵或病毒感染的主机),用Netcat将应急响应工作中的输出结果传到司法鉴定工作站。图2中,PsList的输出结果直接保存到10.88.56.30主机上。

 
图2 在发生安全事件的主机上将PsList输出

    • 步骤三
    由于Netcat不会自动结束,所以我们要利用Ctrl+C结束命令。之后,打开司法鉴定工作站生成的文件,结果如图3所示:

 
图3 Pslist 输出的结果

    PsList 是 Sysinternals 命令行工具不断完善的 PsTools 工具包的一部分,用于协助管理本地和远程 Windows NT/2K 系统。
在通过网络获取数据的工具中,Cryptcat可以完成Netcat的所有功能,并且对传送信息进行了加密处理。也就是说:cryptcat= Netcat + Encryption。Cryptcat的使用方法与Netcat完全相同,在上面的例子中将“nc”替换为Cryptcat的执行文件即可。

   结束:取证不只针对黑客
    我们还需要了解一点,电子取证不是只针对黑客、病毒一类的取证范围,很多传统意义上不属于计算机犯罪的事件也通过电子取证开展调查。最著名的事件莫过于Chandra Levy失踪案,这位和美国政治相关的实习医生,警方在她的电脑中收集了很多信息,最后通过电脑中她失踪前浏览过的网址,在华盛顿近郊的Rock Creek公园里找到了她的尸体。

    1984 年美国FBI 实验室和其他法律执行部门开始建立了检查计算机证据的实验室,从那时开始计算机取证分析日益成为国外各研究机构与公司对计算机网络的重点研究课题。计算机取证技术概念于2001年从国外进入国内,从入侵取证反黑客开始,逐渐形成。真正让普通网民了解电子取证是在2002年10月底,Enterasys公司网络安全设计师Dick Bussiere来华访问,各个媒体都进行的计算机犯罪取证的报道。当时很多网民才第一次听到了计算机法医学的概念。相对于电子取证,国外的研究和立法要比我们早了很多。我们需要更多的网络管理人员了解和学习电子取证的方法,一旦出现威胁企业网络的重大事件,可以为司法部门提供正确的协助。

0
相关文章