硬盤主引導扇區是一個敏感的區域, 它的安全與否直接決定硬盤是否能夠正常使用。 深入認識和靈活使用硬盤主引導扇區將有助於你的系統維護和許多特殊工作完成。
一、與DOS 引導扇區的區別 對於DOS系統來說, 有兩(電腦沒聲音)種不同的引導扇區,即DOS 引導扇區和硬盤主引導扇區。 DOS 引導扇區存在於軟盤的第一邏輯扇區或硬盤DOS分區的第一邏輯扇區,是用FORMAT命令對磁盤格式化時產生的, 是引導DOS 系統或正確使用磁盤的必要條件,在DOS下可用DEBUG方便地讀出:
C>DDEBUG
-L 100 2 0 1 ;讀C盤0扇區到內存當前段的100H處 -D ;顯示DOS 引導扇區內容 硬盤主引導扇區則指的是硬盤的物理地址0 面0 道1 扇區,是用FDISK 進行硬盤分區時產生的, 它屬於整個硬盤而不屬於某個獨立的DOS 分區, 是硬盤正確引導和使用的必要條件。由於它不在DOS分區范圍之內,所以無法用上述方法讀出, 只有用相關的匯編程序代碼讀出:
C>DDEBUG
-A
XXXX:0100 MOV AX,0201H ;指定扇區數 XXXX:0103 MOV BX,0800H ;指定內存地址 XXXX:0106 MOV CX,0001H ;指定磁道和扇區號 XXXX:0109 MOV DX,0080H ;指定磁頭和驅動器號 XXXX:010C INT 13H ;讀磁盤操作 XXXX:010E INT 3-d800 ;顯示讀出內容 二、扇區結構 硬盤主引導扇區占據一個扇區,共512(200H)個字節,具體結構如下:
1.硬盤主引導程序,位於該扇區的0-1BDH處; 2.硬盤分區表,位於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:該分區占用的總扇區數。
3.引導扇區的有效標志,位於1FEH-1FFH處,固定值為AA55H。
三、硬盤主引導扇區的作用 硬盤主引導扇區在各個DOS版本下其內容基本一致,主要完成的任務是:
1.存放硬盤分區表,這是硬盤正確讀寫的關鍵數據。
2.檢查硬盤分區的正確性,要求只能且必須存在一個活動分區。
3.確定活動分區號,並讀出相應操作系統的引導記錄。
4.檢查操作系統引導記錄的正確性, DOS引導扇區末尾也存在著一個AA55H標志,供引導程序識別。
5.釋放引導權給相應的操作系統。例如,當確認DOS 操作系統引導記錄存在時, 則調出DOS引導程序並執行。
另外,當它發現引導故障時將給出部分提示信息,如:
“Invalid partition table”表示硬盤分區表錯誤, 沒有或存在兩(電腦沒聲音)個以上活動分區; “Error loading operating system”表示讀DOS引導記錄時出錯; “Missing operating system”表示 DOS引導記錄無有效標志AA55H。
四、硬盤主引導扇區的應用 正是硬盤主引導扇區直接決定硬盤的安全性, 所以利用它可以完成很多特殊的功能操作, 簡單列舉如下:
1.清除硬盤引導功能。
由於硬盤引導必須使用引導程序, 並檢測活動分區的正確性, 所以人為的修改或破壞引導程序部分, 或者清除活動分區引導標志, 都將使硬盤無法啟動。
2.加密整個硬盤。
硬盤主引導扇區末尾的扇區有效標志AA55H是系統承認硬盤的前提,所以可以采取清除名修改此標志位達到加密硬盤的目的, 即使從A 驅引導系統也無法對硬盤進行操作, 恢復AA55H即可解密硬盤。
3.加密單個硬盤分區。
硬盤單個分區的加密可采取修改分區類型的方法,比如把擴展DOS 分區的類型標志 05H改為FFH,則DOS 認為此分區為非DOS分區,無法對其進行訪問, 包括此分區中的所有邏輯盤。當然修改或清除某一分區表的所有數據同樣具有加密單個分區的作用, 但操作繁瑣並且具有危險性。
4.加入硬盤啟動口令識別。
通過修改硬盤的主引導程序, 在引導DOS 操作系統之前,加入一段口令識別程序段,如口令正確則正常引導系統,否則拒絕引導,達到口令識別的目的。
5.先於DOS 駐留內存程序。
在主引導程序中安裝某些中斷服務程序,如時鐘中斷等,通過對INT 21H或其它DOS關鍵數據的監視,完成病毒的實時檢測功能,因為此方法在引導DOS系統之前完成,所以其監視效果非常可靠。
6.實現同一硬盤多個操作系統的選擇啟動。
硬盤可以分成4個獨立的分區,裝入4個不同的操作系統,通過特殊的方法可以共享多個DOS版本,但各操作系統或各DOS版本間的切換是一件非常麻煩的事,通過修改硬盤主引導程序加入按鍵識別過程,可實現四個分區的自由選擇引導。
7.實現硬盤主引導扇區或DOS引導扇區的自我修復。
如果在硬盤其它空閒扇區保留一份完好的主引導扇區內容,而在主引導程序中每次啟動前進行主引導扇區的正確性檢查工作,當發現異常時,即調入原來完好的主引導扇區內容,就可以及時發現和清除病毒,對於系統有很好的保護作用。
認識硬盤主引導扇區