• 内容安全实验——实验一 硬盘分区恢复实践


    内容安全实验——实验一 硬盘分区恢复实践


    前言

    这系列文章均为上课时老师要求写的实验作用,若有错误,还请大家指出。实验过程有参考一些博客,具体链接找不到了。


    提示:以下是本篇文章正文内容,下面案例可供参考

    一、实验目的

    1、了解硬盘逻辑结构;
    2、了解MBR、FDT的结构和内容;
    3、借助Winhex工具,能够计算分区大小,并通过修改分区表,找到丢失分区,完成硬盘分区表的修复,恢复硬盘数据。

    二、实验环境

    Windows,Winhex

    三、实验原理

    1、硬盘结构

    在这里插入图片描述

    2、硬盘主分区表结构简介

    在这里插入图片描述

    在这里插入图片描述
    引导标志。若值为80H表示活动分区,若值为00H表示非活动分区。
    本分区的起始磁头号、扇区号、柱面号。其中:

    1. 磁头号——第2字节 ;
    2. 扇区号——第3字节的低6位 ;
    3. 柱面号——为第3字节高2位+第4字节8位。

    在这里插入图片描述
    本分区的结束磁头号、扇区号、柱面号。其中:

    1. 磁头号——第6字节;
    2. 扇区号——第7字节的低6位;
    3. 柱面号——第7字节的高2位+第8字节。

    3、扩展分区

    一个主分区定义为扩展分区-可进一步分区,满足需求
    扩展分区:不是一个实际意义的分区,是一个指向下一个用来定义分区的参数的指针,这种指针结构形成了一个单向链表。这样在主引导扇区除了主分区外,只需存储一个被称为扩展分区的分区信息。就是指向下一个分区(逻辑磁盘)的起始位置。
    在这里插入图片描述

    4、扩展MBR

    虚拟MBR(扩展MBR,Extended MBR,EBR)没有引导和错误提醒信息部分。
    用以描述分区的扇区形成一个“分区链”,通过这个分区链,就可以描述所有的分区-逻辑锁
    在这里插入图片描述

    5、扩展分区和逻辑盘

    在这里插入图片描述

    三、实验步骤

    完成丢失分区恢复。

    场景:误Ghost后的分区恢复。
    经常有用户在使用Ghost做系统的时候操作失误,造成硬盘变成一个C盘,原来硬盘上的其他分区丢失,即整个硬盘变成一个分区,硬盘上其他分区及分区中的资料全部丢失。对Ghost不熟悉或者是对英语不太熟悉的用户很容易在还原系统的时候误操作,比如,在还原分区的时候这样操作:Local—Disk—From Inage.这样操作后,Ghost就认为是用户想把镜像文件还原到整个硬盘中,这样一来,软件就将之前某一个分区的镜像文件还原到整个硬盘中了,操作完成后,整个硬盘就只剩一个分区了。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    恢复前最初始的分区:

    在这里插入图片描述
    在这里插入图片描述
    利用Winhex打开待修复磁盘。
    在这里插入图片描述
    在这里插入图片描述
    问题1:通过搜索引导区标志来查找第二个分区开始位置。 Winhex中搜索相关设置截图。

    在这里插入图片描述
    在这里插入图片描述
    问题2:第一个分区的逻辑驱动器的大小是多少扇区?描述分析过程。
    答:从上图中可以看出
    第一个分区的逻辑驱动器的大小为:036E8E00(既是第二分区的起始地址,又是第一分区的大小)

    问题3:第二个分区的EBR在哪个扇区?也就是该扩展分区的开始扇区。
    在这里插入图片描述
    问题4:为了重建分区表,查看找到的EBR,第二个分区的逻辑驱动器的开始扇区是多少?逻辑驱动器的大小是多少扇区?该分区大小是多少?
    答:
    倒数第一个四字节:00017848(H):
    转为十进制:96327 驱动器的总扇区

    倒数第二个四字节:0000003F(H)
    转为十进制:63: 逻辑驱动器的起始扇区

    将起始扇区+驱动器总的大小:63+96327=96830

    修改分区表:将扩展分区的信息填入分区表,卸载并重新加载镜像,可以看到丢失的分区已经找到(硬盘共有2个分区)。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    修改数据,保存:

    在这里插入图片描述
    在这里插入图片描述
    恢复后:

    在这里插入图片描述


    总结

    本次实验老师在课上讲的已经很详细了,一开始还没有了解清楚第一分区和第二分区它们之间的关系时还是很懵的状态,后来老师一遍又一遍的讲解过后彻底捋清楚了就感觉有很简单了。
    通过本次实验我了解硬盘逻辑结构、MBR、FDT的结构和内容;同时也学会了借助Winhex工具,计算分区大小,并通过修改分区表,找到丢失分区,完成硬盘分区表的修复,恢复硬盘数据。

  • 相关阅读:
    c++多态
    数据库实验八 视图
    使用记账软件记录生活收支明细,如何防止收支不被他人修改
    架构描述语言(ADL)
    C语言中strcpy()
    【机器学习】聚类【Ⅲ】高斯混合模型讲解
    IDEA-2023-jdk8 HelloWorld的实现
    内裤洗衣机有用吗?最好用的四款内衣洗衣机测评
    【C语言】文件相关操作
    Claude是否超过Chatgpt,成为生成式AI的一哥?
  • 原文地址:https://blog.csdn.net/weixin_51153624/article/details/125632554