当前位置: 首页 > news >正文

取证工具prodiscover的基本操作

前言提醒

取证工具ProDiscover在网上讲解操作的文章实在太少,一是prodiscover是用于磁盘取证的工具,本身比较小众比不上其他的编程软件能用到的地方多,二是这个工具是用来恢复提取磁盘中被删除的文件,是比较隐晦的软件。

需要注意事项

prodiscover是使用于Windows环境下的专业软件,由于是国外的软件,所以能接触到的软件版本偏低,没有中文版,在国内的视频网站和热门的网站上是找不到讲解操作视频的,这边建议去外面。

本文章是分享经验不是标准过程,每个人在实验出现的问题是不一样的。

安装环境

这里建议安装在虚拟机上的Windows7或者Windows10的环境中,Windows11没试过,特别提醒安装在虚拟机的环境中,这样出现任何情况都不会影响到物理机,建议预留的磁盘剩余要足够大,这个软件的实验特别吃磁盘。这个软件的扫描磁盘和恢复不需要联网,在本地进行,所以安装在虚拟机即可。
在虚拟机Windows10 系统下安装成功的prodiscover的桌面图标
在虚拟机Windows10中安装成功后的prodiscover的桌面图标

软件和取证的磁盘

软件这里用的是在CSDN上找的,我的也上传了到这个账号的资源上了,如果不通过可以在CSDN上找

解压后的prodiscover软件
我自己上传的的prodiscover软件的链接prodiscover下载链接,在资源中

在这个账号的资源中
上面的链接失效的话,其他的CSDN上的下载位置:csdn上下载prodiscover软件的链接

这个账号
取证的磁盘也就是后面扫描的磁盘是U盘代替,因为U盘的空间小,插入虚拟机的Windows10中也是一个磁盘。这里特别提醒,选择的U盘空间能小就小,8GB或者16GB即可,里面的文件有被删过的

prodiscover 在扫描的时候能扫描到添加的磁盘,对于原本虚拟机中的Windows的唯一的磁盘C盘不一定能扫描到,也不放便取证恢复文件。

安装软件

获取prodiscover 的压缩包 解压安装程序这里出现找不到路径 更换路径到C盘,因为是虚拟机,也只有一个C盘。
在这里插入图片描述
更换路径后 点击 next 安装软件
在这里插入图片描述

选择接受协议 点击next
在这里插入图片描述

协议最底部 没有勾选选项 点击 next
在这里插入图片描述

用户名 username可以更改 这里选择默认电脑自己的开机命名
在这里插入图片描述

更改文件路径到C盘后 点击next 继续下一步

在这里插入图片描述

点击上方的anyone who uses the computer 否则会安装失败
在这里插入图片描述

安装完成
在这里插入图片描述

操作过程

打开软件点击file 选择 new project创建 新建项目这里命名 project number命名为001 project file name 命名为 Evidence1 命名不要出现中文

在这里插入图片描述

创建新项目的编号名字等 project number命名为001 project file name 命名为 Evidence1 这里要用英文和数字 不要使用中文。

在这里插入图片描述

准备一个U盘 里面的有文件被删除过 被取证的磁盘的空间要尽可能的小,因为扫描磁盘后需要占据与被扫描磁盘相等的空间,所以另外准备好比被扫描磁盘空间大很多的磁盘用来存放文件,可以是另外插入的磁盘,也可以是虚拟机本身的剩余空间。
准备被扫描的U盘

点击在view 下面的相机的图标,扫描需要取证的U盘
在这里插入图片描述

选择要捕获的磁盘, 选择后面生成的.eve磁盘镜像的存储位置等信息
Sourece Drive 点击 V 选择要取证的磁盘
Destination 点击 >> 选择创建生成的evidence的磁盘位置 创建 evidence.eve 文件 evidence.eve文件大小与被扫描的U盘大小相等。
在这里的的Destination 表示存放的目的地址 但是提前创建的话 不能创建后缀
是.eve的文件 所以是直接在这里点击 >> 选择创建的磁盘位置 创建 evidence.eve 文件
compresstion 选择No 不设置密码方面后续操作
在这里插入图片描述

点击OK 后开始捕获图像 下方是进度 时间取决于要取证的磁盘大小和文件类型数量
在这里插入图片描述
出现这个界面表示成功

在这里插入图片描述
点击上方的action 然后选择 image file 添加要恢复的镜像
在这里插入图片描述
点击image file 然后进入之前存放的文件夹 选择镜像 也就是之前的destion存放.eve文件的 evidence1.eve

在这里插入图片描述
点击 content view 下面的 images ,点击生成的.eve 后缀的文件也就是之前生成的evidence1.eve 可以在右边显示这个要恢复的磁盘内所有信息 Deletes 下面是YES 的就是被删除的文件,还有被删除的日期等信息。
在这里插入图片描述

点击左上角的文档标识的按钮 copy disk 表示复制这个要恢复的磁盘
在这里插入图片描述
选这个image
在这里插入图片描述

选择之前的生成的.eve 还有恢复后的要存储的磁盘 这里需要注意的是 存储恢复文件的磁盘的剩余空间必须要大于实验的U盘的空间 ,这也是前面提到的被扫描的磁盘选择插入的U盘,U盘的空间普遍不大,但是依然建议选择小U盘。

image file 是选择要恢复的镜像,也就是我们之前生成的evidence1.eve 点击Browse 选择 evidence1.eve 我们之前在选择的时候是存放在G磁盘
Map Disk to 中的 Disk Name 是 选择恢复后的文件要存放的磁盘
Map Disk to 中的 Image Name 是 选择要恢复的镜像,也就是evidence1.eve文件 我们之前在选择的时候是存放在G磁盘,所以这里的磁盘符号都是一样的。

选择好后点击确定
在这里插入图片描述

在上面页面点击确定后出现这个图片 表示现在要存储恢复文件的磁盘空余存储空间可能不足 此时要判定是否要继续恢复 如果剩余的空间足够 直接点击 OK,如果失败的话请重新选择足够大的磁盘。
在这里插入图片描述

开始恢复文件 下面是进度条
在这里插入图片描述

出现copy successful 表示恢复成功
在这里插入图片描述
选择deleted 是YES的表示被删除的文件 鼠标指向选择好是哪个文件要恢复,点击右键 弹出菜单 选择 copy all selected files 恢复
在这里插入图片描述
点击browse 选择要存放的磁盘,这里选择磁盘G,这里可以注意到被选中要恢复的文件前面的框是由√的
在这里插入图片描述

找到存储恢复文件的磁盘G,磁盘内的G-Drive 文件 里面是之间命名的evidence1.eve 文件,里面是存储的被恢复的文件
在这里插入图片描述
evidence1.eve 出现文件 表示恢复文件成功
在这里插入图片描述

存储恢复的磁盘,也就是磁盘G 被占用了取证U盘的空间大小左右的空间
之前的evidence1.eve 的文件大小正好是 U盘的内存大小
在这里插入图片描述

相关文章:

取证工具prodiscover的基本操作

前言提醒 取证工具ProDiscover在网上讲解操作的文章实在太少,一是prodiscover是用于磁盘取证的工具,本身比较小众比不上其他的编程软件能用到的地方多,二是这个工具是用来恢复提取磁盘中被删除的文件,是比较隐晦的软件。 需要注…...

flutter plugins插件【二】【FlutterAssetsGenerator】

2、FlutterAssetsGenerator 介绍地址:https://juejin.cn/post/6898542896274735117 配置assets目录 ​ 插件会从pubspec.yaml文件下读取assets目录,因此要使用本插件,你需要在pubspec.yaml下配置资源目录 flutter:# The following line ens…...

看懂UML类图

UML 统一建模语言(Unified Modeling Language,UML)是一种为面向对象系统的产品进行说明、可视化和编制文档的一种标准语言,是非专利的第三代建模和规约语言。UML是面向对象设计的建模工具,独立于任何具体程序设计语言。 类的表示 首先看那个…...

keras深度学习框架通过简单神经网络实现手写数字识别

背景 keras深度学习框架,并不是一个独立的深度学习框架,它后台依赖tensorflow或者theano。大部分开发者应该使用的是tensorflow。keras可以很方便的像搭积木一样根据模型搭出我们需要的神经网络,然后进行编译,训练,测试…...

React 中的 ref 如何操作 dom节点,使输入框获取焦点

聚焦文字输入框 .focus() 获取焦点 当用户点击按钮时&#xff0c;handleClick 函数会被调用&#xff0c;从而将焦点聚焦到文本输入框上。 // 焦文字输入框 import { useRef } from "react";const FocusForm () > {const inputRef useRef<any>(null);func…...

最短路Dijkstra,spfa,图论二分图算法AYIT---ACM训练(模板版)

文章目录 前言A - Dijkstra Algorithm0x00 算法题目0x01 算法思路0x02 代码实现 B - 最长路0x00 算法题目0x01 算法思路0x02 代码实现 C - 二分图最大匹配0x00 算法题目0x01 算法思路0x02 代码实现 D - 搭配飞行员0x00 算法题目0x01 算法思路0x02 代码实现 E - The Perfect Sta…...

AK 微众银行 9.3 笔试 Java后端方向

T1(模拟,二分) (没看清买的糖果只有前缀&#xff0c;一开始用二分写了&#xff0c;后来意识到也没改了&#xff0c;简单写的话&#xff0c;直接模拟就好了) #include <bits/stdc.h>#define endl \nusing namespace std;const int N 50010;int n; int a[N];bool check(…...

了解java中的通配符“?“

目录 通配符的作用 先看一段代码 用通配符"?"后,代码变化 结论 通配符上界 通配符下界 对通配符上下界的注释理解及其练习代码 简记: ? 用于在泛型的使用&#xff0c;即为通配符. 在Java中&#xff0c;通配符&#xff08;wildcard&#xff09;主要用于泛型…...

浙大陈越何钦铭数据结构07-图6 旅游规划【最小堆实现】

题目&#xff1a; 题目和浙大陈越何钦铭数据结构07-图6 旅游规划是一样的&#xff0c;不同的是用最小堆实现函数【FindMinDist】。 时间复杂度对比&#xff1a; 浙大陈越何钦铭数据结构07-图6 旅游规划&#xff1a; 创建图&#xff08;CreateGraph&#xff09;&#xff1a;时…...

OpenShift 4 - 用 Prometheus 和 Grafana 监视用户应用定制的观测指标(视频)

《OpenShift / RHEL / DevSecOps 汇总目录》 说明&#xff1a;本文已经在 OpenShift 4.13 的环境中验证 文章目录 OpenShift 的监控功能构成部署被监控应用用 OpenShift 内置功能监控应用用 Grafana 监控应用安装 Grafana 运行环境配置 Grafana 数据源定制监控 Dashboard 演示视…...

【LeetCode】剑指 Offer <二刷>(3)

目录 题目&#xff1a;剑指 Offer 06. 从尾到头打印链表 - 力扣&#xff08;LeetCode&#xff09; 题目的接口&#xff1a; 解题思路&#xff1a; 代码&#xff1a; 过啦&#xff01;&#xff01;&#xff01; 题目&#xff1a;剑指 Offer 07. 重建二叉树 - 力扣&#xf…...

Ceph IO流程及数据分布

1. Ceph IO流程及数据分布 1.1 正常IO流程图 步骤&#xff1a; client 创建cluster handler。client 读取配置文件。client 连接上monitor&#xff0c;获取集群map信息。client 读写io 根据crshmap 算法请求对应的主osd数据节点。主osd数据节点同时写入另外两个副本节点数据。…...

Netty-NIO

文章目录 一、NIO-Selector1.处理accept2.cancel3.处理read4.处理客户端断开5. 处理消息的边界6. 写入内容过多的问题7. 处理可写事件 一、NIO-Selector 1.处理accept //1.创建selector,管理多个channel Selector selector Selector.open(); ByteBuffer buffer ByteBuffer.…...

红外物理学习笔记 ——第三章

第三章 基尔霍夫定律&#xff1a;就是说物体热平衡条件下&#xff0c;发射的辐射功率要等于吸收的辐射功率 M α E M\alpha E MαE α \alpha α 是吸收率&#xff0c; M M M 是幅出度&#xff08;发射出去的&#xff09;&#xff0c; E E E是辐照度&#xff08;外面照过来的…...

使用 htmx 构建交互式 Web 应用

学习目标&#xff1a;了解htmx的基本概念、特点和用法&#xff0c;并能够运用htmx来创建交互式的Web应用程序。 学习内容&#xff1a; 1. 什么是htmx&#xff1f; - htmx是一种用于构建交互式Web应用程序的JavaScript库。 - 它通过将HTML扩展为一种声明性的交互式语言&a…...

S32K324芯片学习笔记

文章目录 Core and architectureDMASystem and power managementMemory and memory interfacesClocksSecurity and integrity安全与完整性Safety ISO26262Analog、Timers功能框图内存mapflash Signal MultiplexingPort和MSCR寄存器的mapping Core and architecture 两个Arm Co…...

htmx-使HTML更强大

‍本文作者是360奇舞团开发工程师 htmx 让我们先来看一段俳句: javascript fatigue: longing for a hypertext already in hand 这个俳句很有意思&#xff0c;是开源项目htmx文档中写的&#xff0c;意思是说&#xff0c;我们已经有了超文本&#xff0c;为什么还要去使用javascr…...

Java学习之序列化

1、引言 《手册》第 9 页 “OOP 规约” 部分有一段关于序列化的约定 1&#xff1a; 【强制】当序列化类新增属性时&#xff0c;请不要修改 serialVersionUID 字段&#xff0c;以避免反序列失败&#xff1b;如果完全不兼容升级&#xff0c;避免反序列化混乱&#xff0c;那么请…...

C++实现蜂群涌现效果(flocking)

Flocking算法0704_元宇宙中的程序员的博客-CSDN博客 每个个体的位置&#xff0c;通过计算与周围个体的速度、角度、位置&#xff0c;去更新位置。...

IDEA复制一个工程为多个并启动,测试负载均衡

1 找到服务按钮 2 选择复制配置 3 更改新的名称与虚拟机参数 复制下面的代码在VM参数中 -Dserver.port8082 4 最后启动即可...

001_C++语法基础

C语法基础 所有C语法要用英文区分大小写每个语句写完以分号结束 C标准输入输出头文件iostream 若想通过C实现数据的输入和输出&#xff0c;需要导入标准输入输出头文件 #include <iostream>标准输入输出头文件<iostream>中包含了cin输入语句和cout输出语句 标…...

对Excel表中归类的文件夹进行自动分类

首先把excel表另存为.txt文件&#xff08;注意&#xff1a;刚开始可能是ANSI格式&#xff0c;需要转成UTF-8格式&#xff09;&#xff1b;再新建一个.txt文件&#xff0c;重命名成.bat文件(注意&#xff1a;直接创建的如果是是UTF-8格式&#xff0c;最好转成ANSI格式&#xff0…...

LabVIEW液压支架控制系统的使用与各种配置的预测模型的比较分析

LabVIEW液压支架控制系统的使用与各种配置的预测模型的比较分析 模型预测控制在工业中应用广泛。这种方法的优点之一是在求解最优控制问题时能够明确考虑对输入和输出状态施加的约束。控制对象模型用于有限时间范围内最优控制的实时计算。所使用的数学设备允许从具有单输入和单…...

C++中位运算符使用

& 与 只有都为1结果为1 0 & 0 00 & 1 01 & 0 01 & 1 1 | 或 只要一个为1结果为1 0|00 0|11 1|01 1|11 ^ 异或 两个相同的数字为0&#xff0c;其余为1 0^00 1^01 0^11 1^10 ~ 取反 将进制位数进行取反 ~1-2 //0000 0001-->代…...

微机原理 || 第2次测试:汇编指令(加减乘除运算,XOR,PUSH,POP,寻址方式,物理地址公式,状态标志位)(测试题+手写解析)

&#xff08;一&#xff09;测试题目&#xff1a; 1.数[X]补1111,1110B&#xff0c;则其真值为 2.在I/O指令中,可用于表示端口地址的寄存器 3. MOV AX,[BXSl]的指令中&#xff0c;源操作数的物理地址应该如何计算 4.执行以下两条指令后&#xff0c;标志寄存器FLAGS的六个状态…...

人员闯入检测告警算法

人员闯入检测告警算法通过yolov5网络模型识别检测算法&#xff0c;人员闯入检测告警算法对未经许可或非法进入的人员进行及时识别告警&#xff0c;确保对危险区域的安全管理和保护。YOLO系列算法是一类典型的one-stage目标检测算法&#xff0c;其利用anchor box将分类与目标定位…...

python中super()用法

super关键字的用法 一、概述二、作用三、语法四、使用示例1.通过super() 来调用父类的__init__ 构造方法&#xff1a;2.通过supper() 来调用与子类同名的父类方法2.1 单继承2.2 多继承 一、概述 super() 是python 中调用父类&#xff08;超类&#xff09;的一种方法&#xff0…...

jmeter While控制器

一种常见的循环控制语句&#xff0c;用于重复执行一段代码块&#xff0c;直到指定的条件不再满足。 参数&#xff1a; 空LASTJMeter变量、函数、属性或任意其他可用表达式 &#xff08;jmeter提供的方法&#xff09;。判断变量值count_num小于等于20&#xff0c;推荐简单的几…...

3D数字孪生技术助力港口全新升级,提供实时数据进行智能调度

港口3D数字孪生平台是一种基于数字技术的虚拟模型&#xff0c;它可以模拟真实的港口环境&#xff0c;并对港口的运营、管理、安全等方面进行实时监控和优化。该平台带来了许多智能化提升&#xff0c;包括以下几个方面&#xff1a; 一、自动化操作和智能调度 数字孪生平台可以通…...

Qt日历控件示例-QCalendarWidget

基本说明 QCalendarWidget介绍&#xff1a; QCalendarWidget 是 Qt 框架中提供的一个日期选择控件,用户可以通过该控件快速选择需要的日期,并且支持显示当前月份的日历。 这里&#xff0c;我们继承了QCalendarWidget&#xff0c;做了一些简单封装和样式调整 1.使用的IDE&…...