認識硬盤主引導扇區
硬盤主引導扇區是一個敏感的區域,它的安全與否直接決定硬盤是否能夠正常使用。深入認識和靈活使用硬盤主引導扇區將有助于你的系統維護和許多特殊工作完成。一、與DOS引導扇區的區別對于DOS系統來說,有兩種不
硬盤主引導扇區是一個敏感的區域,它的安全與否直接決定硬盤是否能夠正常使用。深入認識和靈活使用硬盤主引導扇區將有助于你的系統維護和許多特殊工作完成。
一、與DOS引導扇區的區別
對于DOS系統來說,有兩種不同的引導扇區,即DOS引導扇區和硬盤主引導扇區。DOS引導扇區存在于軟盤的第一邏輯扇區或硬盤DOS分區的第一邏輯扇區,是用FORMAT命令對磁盤格式化時產生的,是引導DOS系統或正確使用磁盤的必要條件,在DOS下可用DEBUG方便地讀出。硬盤主引導扇區則指的是硬盤的物理地址0面0道1扇區,是用FDISK進行硬盤分區時產生的,它屬于整個硬盤而不屬于某個獨立的DOS分區,是硬盤正確引導和使用的必要條件。
二、扇區結構
硬盤主引導扇區占據一個扇區,共512(200H)個字節,具體結構如下:
- 硬盤主引導程序,位于該扇區的0-1BDH處;
- 硬盤分區表,位于1BEH-1FDH處,每個分區表占用16個字節,共4個分區表,16個字節各字節意義如下:
- 0:自舉標志,80H為可引導分區,00為不可引導分區;
- 1-3:本分區在硬盤上的開始物理地址;
- 4:分區類型,其中1表示為12位FAT表的基本DOS分區;4為16位FAT表的基本DOS分區;5為擴展DOS分區;6為大于32M的DOS分區;其它為非DOS分區。
- 5-7:本分區的結束地址;
- 8-11:該分區之前的扇區數,即此分區第一扇區的絕對扇區號;
- 12-15:該分區占用的總扇區數。
- 引導扇區的有效標志,位于1FEH-1FFH處,固定值為AA55H。
三、硬盤主引導扇區的作用
硬盤主引導扇區在各個DOS版本下其內容基本一致,主要完成的任務是:
- 存放硬盤分區表,這是硬盤正確讀寫的關鍵數據。
- 檢查硬盤分區的正確性,要求只能且必須存在一個活動分區。
- 確定活動分區號,并讀出相應操作系統的引導記錄。
- 檢查操作系統引導記錄的正確性,DOS引導扇區末尾也存在著一個AA55H標志,供引導程序識別。
- 釋放引導權給相應的操作系統。例如,當確認DOS操作系統引導記錄存在時,則調出DOS引導程序并執行。另外,當它發現引導故障時將給出部分提示信息,如:“Invalid partition table”表示硬盤分區表錯誤,沒有或存在兩個以上活動分區;“Error loading operating system”表示讀DOS引導記錄時出錯;“Missing operating system”表示DOS引導記錄無有效標志AA55H。
四、硬盤主引導扇區的應用
正是硬盤主引導扇區直接決定硬盤的安全性,所以利用它可以完成很多特殊的功能操作,簡單列舉如下:
- 清除硬盤引導功能:由于硬盤引導必須使用引導程序,并檢測活動分區的正確性,所以人為的修改或破壞引導程序部分,或者清除活動分區引導標志,都將使硬盤無法啟動。
- 加密整個硬盤:硬盤主引導扇區末尾的扇區有效標志AA55H是系統承認硬盤的前提,所以可以采取清除名修改此標志位達到加密硬盤的目的,即使從A驅引導系統也無法對硬盤進行操作,恢復AA55H即可解密硬盤。
- 加密單個硬盤分區:硬盤單個分區的加密可采取修改分區類型的方法,比如把擴展DOS分區的類型標志05H改為FFH,則DOS認為此分區為非DOS分區,無法對其進行訪問,包括此分區中的所有邏輯盤。當然修改或清除某一分區表的所有數據同樣具有加密單個分區的作用,但操作繁瑣并且具有危險性。
- 加入硬盤啟動口令識別:通過修改硬盤的主引導程序,在引導DOS操作系統之前,加入一段口令識別程序段,如口令正確則正常引導系統,否則拒絕引導,達到口令識別的目的。
- 先于DOS駐留內存程序:在主引導程序中安裝某些中斷服務程序,如時鐘中斷等,通過對INT