PC3000 军达成数据恢复论坛

 找回密码
 立即注册
查看: 299|回复: 0
打印 上一主题 下一主题

简化复杂问题:从配置丢失的RAID中提取数据的独特方法 [复制链接]

Rank: 8Rank: 8

该用户从未签到

金钱
0
元宝
16619
专业度
0
跳转到指定楼层
楼主
发表于 2024-6-18 11:23:09 |只看该作者 |倒序浏览
本帖最后由 JDCTS5 于 2024-6-18 11:36 编辑

简化复杂问题:从配置丢失的RAID中提取数据的独特方法

大家好!

今天我们想谈一谈配置丢失的RAID阵列,以及如何从中提取数据。本文对数字取证专家和数据恢复工程师都很有用。让我们从首先了解什么是RAID开始。

RAID。是什么

RAID是独立驱动器的冗余阵列。系统将其显示为具有块访问权限的虚拟存储设备。从本质上讲,RAID是一个虚拟驱动器。

1.jpg

组装RAID的目的是创建具有更高访问速度、更大容量和更高可靠性的存储。

为什么人们使用RAID?国内用户可以组装阵列来建立备份或存储照片和文件的个人档案,以及主页多媒体库(电影、音乐等)。公司使用RAID作为服务器上的数据存储。这可以是通用(共享)文档存储、备份存储、数据库、会计数据等。

简而言之,RAID是用于存储最有价值数据的高容量存储。

那么如何应对呢?

RAID镜像

有两种方法可以制作RAID的映像。

首先是在被检查的机器上获取图像。

2.jpg

这种方法的主要优点是不需要了解阵列是如何排列的。然而,这种方法有很多缺点,主要是在运行的被检查机器上做一些事情不好。那么,有哪些选择?

1. 我们可以运行服务器并从USB闪存驱动器或Live CD启动一些复制软件;尽管操作系统可能会在操作期间更改某些内容,这显然是不好的。

2. 可以从CD或flash驱动器启动操作系统并启动软件无法保证它将操作,因为例如,许多阵列都是软件阵列(包括广泛使用的NAS),因此,要查看RAID,您需要运行适当的软件。此外,若我们使用这种方法,我们将无法访问RAID中未使用的磁盘区域。

因此,总的来说,我们不能确定数据是否会保持不变。

第二种方法是分别制作每个驱动器的图像。然后以只读模式组装阵列

3.jpg

这是确保数据完整性的唯一方法,也让我们有机会研究HDD的所有区域(RAID很可能不使用整个磁盘,从开始到结尾,而只使用其内部部分。因此,可能有未使用的区域可以存储隐藏的数据)。

这种方法的主要缺点是需要组装阵列,即需要确定其配置。因此,为了正确地完成所有工作,我们需要定义配置。

RAID装配

要组装RAID,您必须确定:

§ 使用哪些驱动器:有时并没有使用所有磁盘(可能有备用或多余的磁盘用于系统),有时磁盘不足(1个驱动器可能损坏或被丢弃,但由于冗余,阵列仍能正常工作)等等。

§ 阵列中驱动器的顺序。有时它反映了磁盘在计算机内的放置顺序,但不要对此下注。

§ RAID级别和算法(如果有)

§ 用于分条的块大小

§ RAID中使用的开始和结束LBA(驱动器不一定在0到MaxLBA之间使用)

§ 延迟。重复是Compaq和HP阵列(HP收购了Compaq)的共同特点。

为什么参数的定义会成为一个问题?答案很简单——所有可能的配置数量都很大!仅凭驱动器的订单,我们就可以获得4个驱动器的20多种变体,5个驱动器的100多种变体,7个驱动器的数千种变体。我们仍然有许多其他参数,这些参数乘以可能配置的数量。

4.jpg

当然,也有一些简单的情况,例如:

§ 具有众所周知的RAID元数据格式的软件阵列

§ 少量成员和简单级别(如条纹或镜像)

对于一个没有经验的用户来说,所有其他案例都非常困难。此外,在现实生活中,你必须处理使其变得格外复杂的因素:

§ RAID元数据丢失、损坏或不正确(从以前磁盘寿命中遗留下来,或者是阵列重新初始化的结果)

§ RAID上的文件系统已损坏,很难使用其元数据定义配置(病毒或恶意因素可能会损坏文件系统)

§ 有些成员可能未被使用&它是热备盘或系统磁盘。

§ 成员的另一个常见问题&您可能会从许多不同的阵列中获得大量驱动器。因此,您需要了解哪个磁盘从哪个阵列首先

§ 下一个问题&可能会使用具有奇异配置的阵列,例如,从磁盘的开始发生异常移位或延迟,或其他任何情况。

§ 此外,通常有必要在破坏性重建后恢复数据&重建具有错误参数的数组的操作会导致数据损坏(重建本身可能是调查的原因)

在检查期间组装RAID是必要的操作。尽管这项任务可能非常非常困难。

成功的关键

什么能帮助我们应对所有的困难?它是几种想法和方法的共同结合:

§ 第一个是文件雕刻(数据提取程序(Data Extractor)中的RAW恢复模式),能够确定文件整数部分的大小

§ 第二个是对卡弗文件找到的结果进行统计处理。单个文件可能会给出错误的图片,但它们的集合显示了非常好的结果

§ 第三个——快速检查假设的能力——为此,我们需要一个工具来执行与RAID翻译器相关的所有转换,或者换句话说,我们需要实时RAID重建。建立每次假设检查的图像需要花费大量时间

接下来,我们将更详细地研究所有这些事情。

文件雕刻基础

文件雕刻(PC-3000中的RAW恢复模式)是一种使用文件格式知识来查找文件头的方法,而无需从文件系统获取信息。最简单和最常用的方法是搜索文件开始的签名。例如,PNG图片在文件的开始有签名%PNG。对于其他文件类型,签名当然是不同的。

5.png

通过了解文件格式,我们不仅可以找到标题,还可以从下面从估计文件的整数部分。

6.jpg

例如,PNG文件由一系列块组成,每个块都有一个签名、大小和校验和。也就是说,我们可以足够可靠地验证它。这意味着,如果文件没有损坏或碎片,我们可以从开始到结尾检查它,并说它是完整的,其大小为N字节。

如果文件是碎片的,或者它的一部分被重写了,那么我们可以说这是标题,首先几部分是完整的。它们占用K个字节。在损坏之后的某个地方。它可以是K+1字节,也可以是K+100字节——未知。但是首先个K字节是完全完整的。

对于不同类型的文件,检查整数部分的能力和这种检查的准确性是非常不同的。在这里可以检查整个文件,如本例从png。在某些地方,我们只能从开始检查几百个字节,例如BMP文件,而不管它是完整的还是损坏的。

能够为许多不同的文件类型查找标题和检查整数部分是PC-3000 RAID系统的一个独特功能,这是其他工具所没有的。

RAID成员上的文件雕刻

让我们看一个简单的RAID 5左同步(LS),它由3个成员组成。如果您曾经尝试过从RAID恢复数据,您应该熟悉此配置:

7.jpg

现在让我们看看它的一个成员,例如成员A:

8.jpg

RAID表描述了翻译器的重复规则。图中只显示了2个完整的重复和第3个的开始。由于它是RAID成员,它存储数据块和冗余块XOR。数据块不会像0、1、2、3、那样一个接一个其他,它们有间隙0、3、6等,因为其他块存储在其他成员上。

现在让我们来谈谈文件雕刻是如何在RAID成员上工作的。

9.jpg

成员存储数组的各个块,因此文件的整数部分受到块大小的限制。

§ 文件可能在数据块中的某个位置开始和结尾

§ 如果文件很大,它将在块的结尾中断,因为文件的其他部分存储在另一个成员上

在这里,我们可以看到概率极小的情况:

10.jpg

RAID成员上文件的整数部分:

§ 无法将从区块移动到另一个区块

§ 不能在XOR块内

这种情况当然存在,但其数量远小于正常情况(如前一张幻灯片所示)

结论是,我们只能在单个数据块中找到文件的整数部分。

雕刻数据的统计处理

RAID中的数据翻译器规则是周期性的。在我们的案例中,3个块中的每2个实际上是数据块,最后一个是XOR:

11.jpg

如果我们只是把每个块的每个扇区中有多少个整数部分加起来,我们会看到这样的情况:

§ 数据块中有许多文件的整数部分

§ XOR内部没有任何内容

§ 您可以看到块之间的边界,因为文件不跨越块边界

让我们在实践中检验一下理论。只有PC-3000 RAID系统具有统计处理雕刻数据并以图形方式显示结果的能力。在这张截图中,你可以看到从软件的直方图,该软件是在解决真实案例时获得的:

这张照片和上一张非常相似。数据块和XOR块清晰可见。红线显示零值和非零值彼此相邻的位置。它们有助于看到潜在的封锁边界。

这里同时有3个驱动器:

12.jpg

我们可以看到XOR块(块)位于不同成员上的不同位置,RAID 5应该是这样。块大小等于128个扇区,它显示在直方图上(只是不要忘记LBA从左到右增加,而不是自上而下。问题是这是在宽屏显示器上查看信息的一种更方便的方式)。

不同时期的柱状图

周期大小是磁盘数量乘以块大小和延迟。那么,如果我们犯了一个错误呢?我们会得到什么?以下是同一磁盘的直方图在不同时期的真实示例:

13.jpg

§ 在首先案例中,我们在块大小上犯了一个错误&我们将大小设置为所需的2倍,收到的周期为2倍,但尚不清楚这是RAID 5

§ 第二张图-所有参数都是修正的,很明显这是RAID 5

§ 最后一张图片——我们选择了错误的参与者数量——4而不是3,我们再次看到直方图破碎

因此,如果我们用错误的周期建立统计数据,我们会看到错误的直方图。

这可以用作快速直方图测试:计算周期并查看直方图。如果空区域可见(如XOR块中)-参数设置正确,否则-这可能是错误的,或者配置没有任何XOR、RS或HS块。在现实生活中,直方图是即时或几秒钟内构建的。所以,这真的是一个快速测试。

不同配置的示例

现在让我们来看看不同配置的一些模式。图片上的所有直方图都是基于真实案例的。

RAID 5,8个驱动器,块大小128个扇区

在这里,您可以看到构建在8个驱动器上的RAID 5配置,具有128个扇区块大小:

14.jpg

§ 为什么选择RAID 5?因为它只有一个——XOR

§ 为什么是8名成员?因为周期由8个块组成

§ 此外,通过红色辅助线之间的距离可以清楚地看到128个扇区的块大小

此外,您可以在XOR块中看到噪声。有些文件是找到在那里,这不是不可能的。然而,它们的数量明显少于数据块中的数量。

RAID 6(或5EE),6个驱动器,块大小256个扇区,开始LBA已移位

这是RAID 6或5EE,由6个驱动器组成:

15.jpg

§ 为什么选择RAID 6?因为有2个块。一个是XOR,其他是Reed-Solomon(或者一个Hot-Spare块,如果它是5EE)

§ 6个驱动器,因为在此期间有6个块

§ 一个峰值的长度是256个扇区,这是块的大小

在这张图中,你可以看到在开始和结尾有两个部分:

16.jpg

之所以会发生这种情况,是因为RAID不像以前那样从0开始,它有一些变化。开始的蓝色部分的大小是64个扇区(红线上方有提示)。这意味着RAID从一些LBA开始,应该是这样的:N*BlockSize+64,N=0,1,2。在我们的案例中,它是1088(=4*256+64)对于某些HP和Compaq阵列来说,这是典型的起始LBA。

RAID 5,4个驱动器,延迟16,块大小128个扇区

在这里,您可以看到延迟值等于16的RAID 5:

17.jpg

我们如何确定这一点?在这里,您可以看到最右边的¼是一个包含服务数据的区域。有很多红线——这是噪音,它创建了XOR中找到的小文件。我们总共有4个驱动器,因此我们建议这是一个由4个驱动器组成的RAID 5。(对于由8个驱动器组成的RAID 6,可以看到类似的直方图)。剩余的区域充满了数据,但可以清楚地看到,在一个区域内有许多块。让我们放大其中一个区域。

现在你可以看到在一个区域内有16个块:

18.jpg

这意味着延迟是16,块大小是128个扇区。

RAID 0(或10或1E),块大小128个扇区

下面是RAID 0的一个示例:

19.jpg

然而,RAID 10或1E,或者另一个级别,如果我们没有确定正确的周期,将看起来完全相同。如果您操作此配置,您应该首先查找RAID-5或6的直方图。那么我们将能够说它是0、10或1E。这些级别没有XOR、Reed-Solomon或HS块,所以我们看不到空的块。此外,我们不能说RAID中有多少个磁盘,因为我们在不同数量的驱动器中看到了相似的模式。

JBOD或非RAID驱动器

现在看看JBOD或只是一个非RAID驱动器的直方图是什么样子的。您可以看到根本没有块:

20.png

一个驱动器未使用,一个驱动器丢失

未使用的驱动器是指不属于特定RAID阵列的驱动器。它可以是备用驱动器,也可以是用于存储操作系统数据的驱动器。

在图中,您可以看到有4个驱动器属于RAID 5,由块大小为512个扇区的5个驱动器制作而成。最后一个是陌生人。此驱动器的柱状图与其他驱动器不同。结论:最后一个驱动器未使用。

我们只有4个成员从,所以失去了一个成员。

21.png

同样的想法也适用于从不同阵列的驱动器——它们的直方图会有所不同。

因此,我们看到每个RAID级别都有一个特殊的直方图,可以说明很多配置,甚至可以称为其指纹

我们能从直方图中得到什么?

因此,仅直方图就为我们提供了许多关于阵列的信息:

§ 块大小

§ RAID级别

§ 成员计数

§ 延迟

§ 一组可能的启动LBA

§ 丢失和未使用的驱动器

但驱动器订单怎么办?

这里是一个RAID 5的例子,它由5个成员和所有成员的直方图组成。在您看来,有多少驱动器订单是可能的?

22.jpg

所有驱动器的直方图允许我们设置XOR对角线。总共,我们在RAID 5中使用了4种算法。对于每个算法,我们都可以使用这个对角线来指定精确的顺序。数据Extractor RAID版有很多关于如何找到正确选项以及如何检查它的方法。我们将不详细介绍,因为这是另一文章的主题。但是,简而言之,最简单的方法是尝试所有4个选项。

23.jpg

要做到这一点,您需要能够在现场建立RAID,并查看各种配置,而不是为每个配置制作一个映像。PC-3000 RAID系统具有快速更改RAID参数并立即观察结果的能力。因此,完成4种配置只需不到一分钟的时间。

RAID 6和5EE的情况也是如此,但几乎没有更多的选项——对于每个算法,您需要选择哪个块——XOR或RS——首先。

总之,所提出的使用文件雕刻结果的统计处理方法——也就是直方图——将数百万个选择减少为几个可能的选择。换句话说,它使复杂的RAID数据恢复问题简单!

如果您有任何疑问,请立即联系ACE实验室技术支持

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|PC3000 数据恢复 ( 京ICP备09023376号-1 )

GMT+8, 2025-6-18 02:01 , Processed in 0.221294 second(s), 15 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部