zoukankan      html  css  js  c++  java
  • 一款开源数据恢复工具——scalpel

           scalpel是一款命令行工具,虽然是在linux环境下开发,但也可以在Windows下使用。scalpel的实现原理和foremost很相似,但是他较之foremost做了一些改进。

      scalpel恢复原理:

      扫描整个镜像文件,根据配置文件寻找相关文件类型的文件头和文件尾,正常找到后将这段内容雕刻出来;当找到了文件的头部,但是在它附近没有找到文件尾标志的时候,scalpel提供两种处理方式,一是放弃对该文件的雕刻,二是根据自定义的各类文件的最大长度进行雕刻。

      scalpel的几个特点

           从他的恢复原理我们可以得出scalpel的几个特点:

        1、使用scalpel恢复镜像文件时,不需要关心镜像文件的文件结构是否有损坏,或是镜像文件是否因不同机器制作而打上不同的标记,适用性很强。

        2、由于scalpel只是盲目的进行扫描搜索,因此scalpel并不能区分它扫描到的哪些属于删除文件,哪些是正常文件。

        3、scalpel在“雕刻”文件的时候,是将文件头至文件尾的这部分内容全部“抄写”,也就是说它适用于恢复连续性碎片。而视频、音频文件往往比较大,形成连续性碎片的几率比较小,因此scalpel对大文件恢复的效果很差(恢复出来的几乎都不可读)。

        4、由于scalpel使用了多线程进行扫描搜索和雕刻,恢复的效率较高。

      scalpel恢复文件类型

      就我的试验来看,使用scalpel恢复效果比较好的集中文件类型是PDF,Word,JPG图片,html文件。对图片而言,png、gif、tif格式的图片恢复出来的大多不可读。

      另外,使用scalpel恢复的效果好坏取决于配置文件中对各种文件类型标志的确定,文件类型的标志确定的越准确,恢复的结果就比较好。

      scalpel使用方法

      scalpel的使用方法是:在配置文件scalpel.conf 中选择要恢复的文件类型,就是去掉相应的注释,当然也可以在配置文件中创造自己的文件类型标志,然后在命令行下使用命令:     “ scalpel.exe -o 恢复文件存储路径(此目录必须是空的) 要恢复的镜像文件路径”     即可。当然scalpel还有一些参数设置,这里只说了最简单的一种方式。

      

      scalpel源码

      scalpel的开源代码在github上有,这里放一下连接:

      https://github.com/sleuthkit/scalpel

  • 相关阅读:
    webpack中设置jquery为全局对象
    JS判断不同web访问环境,主要针对移动设备,
    js比较两个日期天数差
    原生js跨域
    我们项目中用到的jsonp跨域
    Js跨域解决方法总结
    js call的使用,js call 方法实现继承
    windows下配置bower路径
    兼容弹层代码
    自定义下拉列表框(2015.1.30)
  • 原文地址:https://www.cnblogs.com/jiangcsu/p/7422764.html
Copyright © 2011-2022 走看看