萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 電腦故障排除 >  >> 硬碟故障

誰動了我的硬碟?四招硬碟加密術:改分區表、開機密碼、多用戶管理、邏輯碟寫保護

硬碟資料安全不容忽視,本文介紹四種不同層級的加密/保護手法。

一、修改硬碟分區表資訊 (低階物理鎖)

分區表位於 0柱面0磁頭1扇區 (MBR)。關鍵位元組:

  • 第一分區表項第 0 字節 80h 表示 C 槽為啟動分區。改為 00h → 無法從硬碟開機,但軟碟開機後仍可存取。
  • 第 4 字節為分區類型旗標,第一分區通常 06h (大於 32MB 基本 DOS 分區)。修改此處可加密:
    • 改 00h:分區標示為未使用,無法從 C 開機,軟碟開機後原 C 槽消失,D 變 C、E 變 D...。
    • 改 05h (擴展分區旗標):無法從硬碟開機,軟碟開機後所有邏輯碟均不可存取,等同整碟加鎖。
  • MBR 有效標誌為扇區最後兩字節 55AAh。改為 0000h 同樣可整碟加鎖不可存取。

操作工具:Norton DiskEdit 直接修改該扇區;或 Debug 環境用 INT 13h 子功能 02h 讀入記憶體修改後用 03h 寫回。進階做法:備份分區表項後全歸零,他人不知分區資訊無法解鎖。

二、對硬碟開機加密碼 (引導程式級鎖)

將原 MBR 與分區資訊存入硬碟未使用的隱含扇區 (如 0柱面0磁頭3扇區)。用 Debug 寫入 <512 bytes 程式 (實際 ~100 bytes) 至 MBR (0柱面0磁頭1扇區)。程式功能:執行時先輸入密碼,錯誤進入死迴圈;正確則讀取隱含扇區的原 MBR 並轉去執行。
因 BIOS 啟動時呼叫 INT 19h 讀取 MBR 到 0000:7C00h 執行,我們偷梁換柱置換了 MBR。軟碟開機也因 MBR 無分區資訊而無法存取硬碟。可將部分程式駐留高端記憶體監視 INT 13h 防止 MBR 被改寫。

三、對硬碟實現用戶加密管理 (多用戶權限控制)

參考 UNIX 多用戶機制,在 DOS 下改良硬碟管理系統:

  • 分區劃分:公用 C 槽 (超級用戶管理,可讀寫更新系統)、專用 D/E/F... (特別用戶以密碼使用自有分區保護資料)、一般用戶僅能使用公用分區。
  • 後兩類用戶無法對 C 槽寫入,防止公共機房系統/軟體被破壞。
  • 開機需軟碟金鑰盤,否則硬碟鎖定不可用。實現方式利用分區表邏輯鏈結結構,以組合語言編程達成。

四、對特定邏輯碟實現寫保護 (軟體模擬寫保護缺口)

軟碟有實體寫保護缺口,硬碟無硬體支援,但可攔截 INT 13h 實現。DOS 寫操作最終皆呼叫 INT 13h 子功能 (如 03h 寫扇區)。攔截 INT 13h,當 AH=03h 且柱面號 (由 CL 高兩位與 CH 組成) 落在目標邏輯碟範圍內 (例:E 槽起始柱面 E5h~163h) 時直接返回不執行寫入,即可實現該邏輯碟寫保護。

copyright © 萬盛學電腦網 all rights reserved