硬盘加密的几种方法 |
您所在的位置:网站首页 › patchwall读音 › 硬盘加密的几种方法 |
硬盘加密的几种方法 .txt 没有不疼的伤口,只有流着血却微笑的人有时候
给别人最简单 的建议
却是自己最难做到的。
一、修改硬盘分区表信息
硬盘分区表信息对硬盘的启动至关重要,如果找不到有效的分区表,将不能从硬盘启动 或即使从软盘启动也找不到硬盘。通常,第一个分区表项的第 0 子节为 80H ,表示 C 盘为活 动 DOS 分区,硬盘能否自举就依 * 它。若将该字节改为 00H ,则不能从硬盘启动,但从软盘启 动后,硬盘仍然可以访问。分区表的第 4 字节是分区类型标志,第一分区的此处通常为 06H , 表示 C 盘为活动 DOS 分区,若对第一分区的此处进行修改可对硬盘起到一定加密作用。
具体表现在:
1. 若将该字节改为 0 ,则表示该分区未使用,当然不能再从 C 盘启动了。从软盘启动后, 原来的 C 盘不见了,你看到的 C 盘是原来的 D 盘, D 盘是原来的 E 盘,依此类推。
2. 若将此处字节改为 05H ,则不但不能从硬盘启动,即使从软盘启动,硬盘的每个逻辑 盘都不可访问,这样等于整个硬盘被加密了。另外,硬盘主引导记录的有效标志是该扇区的 最后两字节为 55AAH 。 若将这两字节变为 0 , 也可以实现对整个硬盘加锁而不能被访问。 硬盘 分区表在物理 0 柱面 0 磁头 1 扇区,可以用 Norton for Win95 中的 Diskedit 直接将该扇区 调出并修改后存盘。或者在 Debug 下用 INT 13H 的 02H 子功能将 0 柱面 0 磁头 1 扇区读到内 存,在相应位置进行修改,再用 INT 13H 的 03H 子功能写入 0 柱面 0 磁头 1 扇区就可以了。
上面的加密处理,对一般用户来讲已足够了。但对有经验的用户,即使硬盘不可访问, 也可以用 INT 13H 的 02H 子功能将 0 柱面 0 磁头 1 扇区读出,根据经验将相应位置数据进行 修改,可以实现对硬盘解锁,因为这些位置的数据通常是固定的或有限的几种情形。另外一 种保险但显得笨拙的方法是将硬盘的分区表项备份起来,然后将其全部变为 0 ,这样别人由 于不知道分区信息,就无法对硬盘解锁和访问硬盘了。
二、对硬盘启动加口令
我们知道, 在 CMOS 中可以设置系统口令, 使非法用户无法启动计算机, 当然也就无法使 用硬盘了。但这并未真正锁住硬盘,因为只要将硬盘挂在别的计算机上,硬盘上的数据和软 件仍可使用。要对硬盘启动加口令,可以首先将硬盘 0 柱面 0 磁头 1 扇区的主引导记录和分 区信息都储存在硬盘并不使用的隐含扇区,比如 0 柱面 0 磁头 3 扇区。然后用 Debug 重写一 个不超过 512 字节的程序 ( 实际上 100 多字节足矣 ) 装载到硬盘 0 柱面 0 磁头 1 扇区。该程序 的功能是执行它时首先需要输入口令, 若口令不对则进入死循环 ; 若口令正确则读取硬盘上存 有主引导记录和分区信息的隐含扇区 (0 柱面 0 磁头 3 扇区 ) ,并转去执行主引导记录。
由于硬盘启动时首先是 BIOS 调用自举程序 INT 19H 将主硬盘的 0 柱面 0 磁头 1 扇区的主 引导记录读入内存 0000 : 7C00H 处执行,而我们已经偷梁换柱,将 0 柱面 0 磁头 1 扇区变为 我们自己设计的程序。这样从硬盘启动时,首先执行的不是主引导程序,而是我们设计的程 序。在执行我们设计的程序时,口令若不对则无法继续执行,也就无法启动了。即使从软盘 启动,由于 0 柱面 0 磁头 1 扇区不再有分区信息,硬盘也不能被访问了。当然还可以将我们 设计的程序像病毒一样,将其中一部分驻留在高端内存,监视 INT 13H 的使用,防止 0 柱面 0 磁头 1 扇区被改写。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |