• 监控取证技术(十二)

    日期:2009-03-03 | 分类:监控取证

    数据恢复

    在监控取证中经常要利用到数据恢复技术,因为公安部门在对犯罪分子进行电脑上信息搜集时,相关的犯罪资料常常是被犯罪分子删除的,因此需要进行数据恢复以提取重要的犯罪信息。关于数据恢复技术的书籍,在国内当首推由戴士剑与涂彦辉合著的《数据恢复技术》一书:

    数据恢复技术(第2版)

    图1

    该书里面从基础讲起,很适合这方面的初学者,有兴趣的朋友可以去看下,本文主要是讲针对文件彻底删除或磁盘格式化后的数据恢复,主要使用EasyRecovery和Finaldata两个工具。

    我们先在E:/盘上建个恢复测试.doc文件,里面就写“恢复测试”四字,然后shift+delete彻底删除:

    图2

    接着我们用EasyRecovery来恢复,选择Data Recovery->FormantRecovery,跳出提示框,点OK:

    图3

    选择E:\盘—>next,然后它就开始扫描系统了:

    图4

    接着扫描文件,给出包含删除的文件,点击view file就可查看已删除的文件:

    图5

    另外我们也可以用FinalData来对已删除的文件进行恢复,因操作简单,这里不再叙述,结果如图6:

    图6

  • 监控取证技术(十一)

    日期:2009-02-17 | 分类:监控取证

    P2P软件调查取证    

     P2P(point to point)即点对点的意思,当一台主机从其它服务器下载文件时,它作为客户端;当其它主机从它机上下载文件时,它就作为服务端,像BT,eMule,PPLive等均为P2P软件,本文主要以BT为例来讲解P2P软件的调查取证,其它P2P软件的取证可以此为参考。P2P软件调查取证的主要目的是为了查找不良信息或危害言论的传染源,以及时切断传染源,防止其继续传播并追究相关人员的法律责任。

    BT的运行原理

    我们需要先从WEB服务器上下载种子文件*.torrent,该文件中包含tracker服务端地址列表以及下载文件的哈希值,通过种子文件中的服务端地址,我们就可以向其发送以下载文件名哈希值为参数的HTTP get请求,服务端再查找种子列表,提供各下载服务器地址给我们,我们就可以从这些服务器上下载文件片段了。

    种子文件格式: 

        BT种子文件使用了一种叫bencoding的编码方法来保存数据。
    bencoding现有四种类型的数据:srings(字符串),integers(整数),lists(列表),dictionaries(字典)
     整个文件为一个字典结构,包含如下关键字:
    announce:tracker服务器的URL(字符串)
    announce-list(可选):备用tracker服务器列表(列表)
    creation date(可选):种子创建的时间,Unix标准时间格式,从1970 1月1日 00:00:00到创建时间的秒数(整数)
    comment(可选):备注(字符串)
    created by(可选):创建人或创建程序的信息(字符串)
    info:一个字典结构,包含文件的主要信息,为分二种情况:单文件结构或多文件结构
    单文件结构如下:
              length:文件长度,单位字节(整数)
              md5sum(可选):长32个字符的文件的MD5校验和,BT不使用这个值,只是为了兼容一些程序所保留!(字符串)
              name:文件名(字符串)
              piece length:每个块的大小,单位字节(整数)
              pieces:每个块的20个字节的SHA1 Hash的值(二进制格式)
    多文件结构如下:
              files:一个字典结构
                     length:文件长度,单位字节(整数)
                     md5sum(可选):同单文件结构中相同
                     path:文件的路径和名字,是一个列表结构,如\test\test.txt 列表为l4:test8test.txte
              name:最上层的目录名字(字符串)
              piece length:同单文件结构中相同
              pieces:同单文件结构中相同

    关于种子文件格式更为详细的内容可参考此文:BT种子文件格式http://dev.csdn.net/article/25/25292.shtm
    实例:
    用记事本打开一个.torrent可以看来类似如下内容

    通过上面可以很容易地读懂了,这里不在多说。

    我们这里用迅雷打开.torrent文件看看,如下图:

    这跟上面的.torrent文件显示的内容是一样的。

     种子文件调查取证

          先下载可疑的种子文件,并从其中获取服务端地址及下载的文件名,再通过查看服务器日志来确定上传种子文件的主机IP。虽然这不一定能够找到传染源,但至少能够通过关掉相关服务器来及时控制传播,以免造成更大的危害。

  • 监控取证技术(十)

    日期:2009-02-15 | 分类:监控取证

    系统还原点(System Restore Point)
     
    系统还原是 Windows操作系统默认的一个功能,它用来帮助你恢复你的电脑到预设的状态,同时不会丢失你的数据文件,可通过“开始-程序-附件-系统工具-系统还原”来建立系统还原点,如果你选择系统还原,你就可以看到最新的系统还原点了.
     
    关于系统还原更多的资料可参考下面两篇文章:
    《windows vista系统还原专题》:http://tech.ddvip.com/2007-05/117852074823533.html
    rp.log文件是存储在还原点(Restore Point)目录的日志文件,设置系统还原点后,就会生成该文件。通过rp.log文件,我们可以获得以下信息:
    *    还原点类型(APPLICATION_INSTALL ,CANCELLED_OPERATION ……)
    *    还原点创建事件的名称(i.e,应用程序或设备驱动程序安装/卸载等)
    *    通过64-bit FILETIME object 可取得还原点的创建时间
     
    CHANGE.LOG.x文件(x为一数字)是系统还原所用的一个记录文件是系统更改日志,通过它我们可以获得以下信息:
    *    当系统记录发生更改时,原始文件名会连同一序列号及其它信息(比如:记录更改类型:文件删除,属性更改或内容更改等)存入change.log文件中
    *    有时整个文件可能被保存(Axxxxxx.ext格式)
     
    通过还原点,我们可以获得以下信息:
    *    应用程序的安装或卸载
    *    系统时间更改
    *    删除/卸载的应用程序的碎片
    *    被删除的文件的碎片
    *    曾被访问过的文件迹象
     
  • 监控取证技术(九)

    日期:2009-02-15 | 分类:监控取证

    快捷方式文件(*.lnk)
    快捷方式文件(*.lnk)用于链接到目标文件的一种文件,目标文件可为应用程序,目录,文档或者数据文件,在link文件中包含有目标文件的各种属性:
          *   目标文件的完整路径
          *   目标文件或者目录所在的卷标(volume label)和卷序列号(volume serial number),这些将有利于将文件连接到一唯一的卷(volume)
          *   文件大小(bytes)
          *   目标文件的MAC时间戳
          *   媒体类型(如图1)
          *   工作目录
          *   MAC地址
          *   远程共享文件名
                                                图1
    快捷方式文件的整体结构如图2所示:
     
                       图2
    关于该文件更为详细的资料可参考此文(Windows快捷方式文件格式解析

    ):http://www.vckbase.com/document/viewdoc/?id=1411
    link文件可在未分配的集群(clusters)与交换(swap)内存空间找到.
    我们也可借助相关工具来读取link文件所包含的信息,比如Encase link parser EnScript和Windows File Analyzer,如图3所示:
     
                                                                                  图3
  • 监控取证技术(八)

    日期:2009-02-08 | 分类:监控取证

    网络历史文件

    网络浏览器将用户浏览过的站点及图片,还有cookie文件等保存在硬盘上,对于调查用户的网站浏览行为提供帮助,如图1所示:

                                                        图1

    图1是IE浏览器保存在硬盘上的历史文件,不同的浏览器保存的历史文件路径不一样,但腾讯TT浏览器与IE是共用历史文件的,因此路径也是一样。我们也可以通过一些阅读工具来读取这些网络历史文件,比如:Encase,NetAnalysis,WebHistorian。通过IE的历史文件我们就可以获得用户浏览过的站点,cookie以及相关的临时文件。如果我们能够窃取cookie文件,我们就可以获得用户的登陆权限了。

  • 监控取证技术(七)

    日期:2009-02-07 | 分类:监控取证

    日志文件(*.evt)

    windows系统中的日志文件提供了系统中发生的重要事件,再结合注册表数据可用于追踪之前发生的系统事件,它主要有三种形式:应用程序,系统,安全性,通过打开开始菜单>运行,输入Eventvwr.msc或打开开始>控制面版>管理工具>事件查看器即可查看相关的日志文件,如图1所示:

                                                                 图1

    本文我是在网吧写,开始里面作了限制,不能打开运行,因此写了一个内容为cmd.exe的批处理文件1.bat,打开运行进入dos后,输入Eventvwr.msc亦可打开事件查看器。

    通过查看日志文件,我们可以知晓:

    1.失败的登陆尝试,

    2.成功的权限提升尝试,

    3.更改系统时间,

    4.突破登陆时间限制,

    5.登陆/退出时间,

    6.成功/失败的对象访问。

    默认情况下,windows的安全设置是不支持日志文件,另外,可惜的是,日志文件只记录Netbios Name,而不记录IP地址。

  • 监控取证技术(六)

    日期:2009-02-07 | 分类:监控取证

    thumbs.db文件

    thumbs.db文件是用于缓存文件中的缩略图,以提高图片的读取速度,它保存在每个包含图片的目录中,里面保存了这个目录下所有图像文件的缩略图(格式为jpeg),相当于一个缩略图数据库,当以缩略图查看图片时 ,就会生成一个Thumbs.db文件。OLE(Object Linking and Embedding:对象连接与嵌入,是在一个文件或一个程序中能够包含多种不同数据格式的数据内容而产生的)就在thumbs.db文件中嵌入当前数据。在一些情况下,当图片从目录中被删除后,图片仍然保存在thumbs.db缓存中,因此该文件也存在一定的安全风险。下面引用百度百科上的一个例子:

    比如当你上传电脑的数码相片,在查看时,删除了其中的一张“SSA2501”,再将其后的“SSA2502”改成了“SSA2501”,看,“SSA2502”的照片立刻换成了“SSA2501”的照片,不只是名字换了,照片也变了。如果再将“SSA2503”的名字重命名成“SSA2502”,奇迹发生了,原来的“SSA2502”照片又回来了,“SSA2503”的照片不见了!

    在Windows XP/2003 中,用户可以通过以下操作来关闭它,如图1所示:

          1 .打开工具栏——文件夹选项
      2 .点击查看
      3 .打勾,不缓存缩略图
      4 .确定

                               图1
    但在windows vista中,微软取消了thumbs.db文件,而是使用把缩略图数据库" thumbcache_xxxx.db "文件集中保存于\Users\[user name]\AppData\Local\Microsoft\Windows\Explorer 该目录中。
    如果你想查看thumbs.db文件中缓存的图片,那么可以借助windows file analyzer来查看,如图2所示:

                                                图2

    接下来直接点“save image”保存图片即可。也可采用司法分析软件FTK进行查看,如图3所示:

                                                                图3

     

  • 监控取证技术(五)

    日期:2009-01-29 | 分类:监控取证

    info2文件
    info2文件中记录着每个被删除后放入回收站的文件的相应信息,比如驱动器指示器dirve designator ,原删除文件的完整文件名,文件大小,存放的位置(路径)以及文件被移到回收站的时间。当一文件被移动到回收站时,该文件被重命名为:
    D%DriveLetter%_%IndexNumber%_%FileExtension%.
     
    D%DriveLetter%:
    “D”代表Drive,%DriveLetter%为文件放置的磁盘,第一磁盘均有其自已的Recycler目录以及info2文件。
     
    %IndexNumber%:
    每一被放入回收站的文件或文件夹均会被分配一索引号,用来标记删除次序,索引号越大,说明越晚删除。但当加收站清空或系统重启时,索引号将会从新开始分配。
     
    %FileExtension%:
    原始文件的扩展名。当一文件夹被删除时,它将没有扩展名。
    例如:
    一个文件名为hacker.txt被删除而放入回收站后,该文件将会被重命名为Dc2.txt,文件入口可在C:\Recycler\%SID%\INFO2 文件中找到。
    关于INFO2文件结构可参考下图(来源:www.cybersecurityinstitute.biz):
     
  • 监控取证技术(四)

    日期:2009-01-29 | 分类:监控取证

    后台打印文件(print spooler file)

    在打印作业完成之后,会在C:\Winnt\System32\Spool\Printers 目录中留下几个 SPL 和SHD 文件。

    SPL 文件是实际的后台打印 (打印作业) 文件。
    SHD 文件提供有关的打印机打印作业已发送与其打印作业一起提供的信息。 一个 SHD 文件是"影子"文件跟踪的哪些逻辑打印机 (同一号码) xxxxx.spl 文件转到。 它还包含队列,发送该的打印机和其他信息的文件在用户中的文件的顺序。 除非逻辑打印机设置否则状态,通常会删除这些文件。(来源:Microsoft.com)

    可以通过Splview.exe (http://undocprint.printassociates.com)来查看这类文件的元数据,如图1所示(来源:clubhack):

     

                                      图1

    也可通过 EMF Spool viewer(http://www.codeproject.com/dotnet/EMFSpoolViewer/EMFSpoolViewer.zi p)来查看实际的后台打印工作,如图2(来源:clubhack)所示:

     

                                                            图2

  • 监控取证技术(三)

    日期:2009-01-28 | 分类:监控取证

    预读取文件prefetch file(*.pf)

    MS在WinXP以后的操作系统中加入了预读取文件的功能,用于提高系统启动,程序加载及文件读取的速度。通过缓存正在被使用的程序,可以帮助系统分配用户可能即将访问的系统资源,以此来提高访问速度。预读取文件保存在c:\windows\Prefetch目录中,每个应用程序都会在Prefetch目录中留下相应的预读取文件,预读取文件描述了应用程序或系统启动时各个模块的装载顺序,其命名方式是以应用程序的可执行文件名为基础,加上一个"-"和描述执行文件完整路径的十六进制值,再加上文件扩展名PF构成的,例如opera.exe-0065A2A1.pf.不过,windows XP启动的预读取文件总是同一个名称,即NTOSBOOT-B00DFAAD.PF,其中包含着启动时载入文件的记录。预读取文件的功能可能过修改注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters来设置,如图1所示:

     

                                                   图1

    可修改EnablePrefetcher 的“DWORD”值为:

      “0”——取消预读取功能;
      “1”——系统将只预读取应用程序;
      “2”——系统将只预读取Windows系统文件,此为Windows XP/Server 2003的默认设置;
      “3”——系统将预读取Windows系统文件和应用程序。
     预读取文件的分析可借助WFA(windows file analyzer)来进行,如图2所示:

     

                                             图2

    通过上图可知,*.pf文件中包含程序的最新访问时间,嵌入数据的时间,运行次数及文件路径hash值等信息。