首页 / 知识
修改Windows的MBR
2023-04-13 22:25:00

Modifying the MBR of Windows我需要修改Windows的MBR,我真的很想从Windows进行此操作。 这是我的问题。我知道可以通过调用CreateFile在物理设备上获取句柄。 MBR是否始终位于\\。\ PHYSICALDRIVE0上?另外,我仍在学习Windows API以直接从磁盘读取。是我将需要使用readabsolutesectors和writeabsolutesectdors这两个函数来读写包含MBR的磁盘扇区吗?
根据自己的经验进行编辑。
编辑以解决Joel Coehoorn。
编辑Cd-MaN。
附言对于Cd-MaN。 操作系统启动后,MBR通常是出于病毒原因而受到保护的,这是书中最古老的病毒技巧之一,可以追溯到使病毒从软盘传播到软盘。 即使不受限制,您也必须编写低级代码-它不是文件系统的一部分,但存在于硬盘驱动器上的特定位置。 因此,您几乎只能编写低级代码(大多数程序以汇编形式实现)或针对16位DOS的C代码。 这些程序大多数都使用BIOS接口(我相信是13h)来直接访问磁盘的扇区。您可以使用一些内联程序集或编译器提供的接口以C语言访问它们。但是,如果没有操作系统的合作,通常将无法访问BIOS,因此,您的程序将再次仅限于DOS。如果您可以访问这些磁盘,则几乎可以在家中闲逛-BIOS的好处是您不必担心系统中存在哪种类型的HD-甚至RAID卡也经常将自身插入BIOS例程中,以便可以访问它们不知道ATA或SATA控制器在内存中的位置,并在该底层执行命令。 但是,如果绝对必须在操作系统内访问它,则几乎必须编写设备驱动程序来访问BIOS或HD控制器所在的内存空间。不过,我不建议这样做,因为这非常棘手-现代计算机将HD控制器放在内存中的不同位置,具有不同的IRQ,并且每个芯片组都变得更加深奥,因为它们可以提供最小的接口到BIOS进行启动,然后再找到Windows的特定驱动程序。他们跳过了所有其他被认为与其他控制器兼容的接口,因为兼容成本更高。 您可能会发现,在Windows中的驱动程序级别,您将拥有直接(或直接伪造)访问驱动器扇区的方法,但是由于上述病毒问题,它们也可能受到很好的保护。 祝好运! 修改引导程序是一个坏主意。以下是一些可能的陷阱:
确实应该考虑其他选择(例如在Windows启动期间通过设置为在启动时或Windows启动后加载的驱动程序修改硬件寄存器)。如果修改就像写入端口一样简单,即:
然后存在所有版本的Window都可以执行此操作的驱动程序(可以从某个端口读取/向某个端口写入值),可以从用户模式调用该驱动程序。 也许PXE引导方案可以为您提供帮助?只需在您制作的PXE映像上引导即可,该映像会修改您需要修改的硬件寄存器,然后将控件返回到主引导记录或活动分区的引导记录。 这样,您不必修改启动记录。 |
最新内容
相关内容
linux清空操作命令?
linux清空操作命令?,系统,数据,命令,名称,不了,文件夹,文件,环境,回收站,目录,删除文件夹中所有文件的linux命令(创建和删除文件和文件夹的linlinux时间命令修改?
linux时间命令修改?,时间,系统,信息,命令,大陆,国家,终端,时分,时区,日期,linux修改系统时间命令1、首先输入date的时候,系统输出的是linux的当linux路由表修改命令?
linux路由表修改命令?,网络,系统,地址,信息,数据,通信,发行,命令,文件,终端,如何理解ip路由和操作linux的路由表【答案】:简:路由表是用来决定如linux修改地址命令?
linux修改地址命令?,地址,系统,代码,网络,服务,信息,密码,命令,管理,基础,linux设置ip地址?打开Linux终端系统,然后在系统中输入如下代码。然后linux操作命令论文?
linux操作命令论文?,管理,系统,设计,网络,企业,基础,机电设备,技术,发展,机电,跪求有关linux的起源,发展,现状,应用领域和发展前景的小论文!年linux内核总调用命令?
linux内核总调用命令?,工作,地址,系统,信息,管理,策略,命令,目录,时间,基础,如何在Linux内核里增加一个系统调用?在一个进程中创建3个线程,名字linux编程调用命令?
linux编程调用命令?,系统,标准,管理,工作,基础知识,情况,环境,设备,基础,首页,linux下怎样用c语言调用shell命令可以通过system函数,调用shell修改主机名命令linux?
修改主机名命令linux?,系统,地址,服务,主机名,网络,情况,名称,查询系统,异常,观察,linux(CentOS7)下如何永久修改主机名1、Centos7修改主机名linux修改账户的命令?
linux修改账户的命令?,密码,系统,状态,名称,信息,用户,命令,位置,软件,管理,Linux修改用户密码的命令是什么?命令:passwd [-k] [-l] [-u [-f]]linux操作命令cp?
linux操作命令cp?,系统,文件,命令,源文件,基本知识,时间,目录,文件夹,选项,目标,linux复制命令1、linux系统使用cp命令即可将一个文件夹里面的linux操作命令及用法?
linux操作命令及用法?,工作,地址,系统,管理,信息,命令,目录,网络,文件,操作,Linux下Grep命令的详细使用方法?查找root目录下包含Linux的文件,命linux中修改密码命令?
linux中修改密码命令?,密码,系统,服务,名称,软件,信息,时间,状态,命令,用户,linux怎么设置用一天内不能重复改密码的命令?黄色下划线:chage -m