?? page234.html
字號:
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=gb2312">
<title>第8章 文件句柄功能與磁盤</title>
</head>
<body>
<style type="text/css">
body {
background-color: #c0c0c0;
}
table {
background-color: #c0c0c0;
line-height: 24px;
}
</style>
<!導航條>
<p><a href="content1.html">目錄</a> <a href="page233.html">上一頁</a> <a href="page235.html">下一頁</a> <a href="page238.html">下一章</a></p>
<table border=0 align="center" width=800 frame="box" rules="none">
<!標尺行>
<tr>
<td width=3%></td><td width=6%></td><td width=1%></td>
<td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td>
<td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td>
<td width=1%></td><td width=6%></td><td width=3%></td>
</tr>
<!頁眉行>
<tr height=60 valign="bottom">
<td></td><td>-234-</td><td></td> <!頁碼>
<td colspan=6>PC機匯編語言實戰(zhàn)精解</td><td colspan=4></td><td colspan=6 align="right"><img src="icons/flag.gif"></td> <!書名>
<td></td><td></td><td></td> <!右側(cè)空白>
</tr>
<!頁眉線>
<tr valign="top">
<td></td><td colspan=20><hr></td><td></td>
</tr>
<!正文>
<font face="宋體" lang="ZH-CN" size=3>
<tr height=20><td colspan=22></td></tr> <!頂部空白>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18>
序,只要它存儲在磁盤的BOOT扇區(qū)內(nèi),都會在操作系統(tǒng)啟動之前被調(diào)入內(nèi)存并由CPU執(zhí)行,我們剛剛做過的那個實驗恰好說明了這一點。由于這個原因所以有些人就編制了一些"特殊"的程序取代了合法的引導程序,這些"特殊"的程序在進入內(nèi)存運行的時候會使用特殊的技巧將自己隱藏在內(nèi)存的某個"角落"中,并時刻監(jiān)視系統(tǒng)的運行。一旦時機成熟,它們就會象吃了興奮劑一樣瘋狂運行,控制住整個PC系統(tǒng)。或者在屏幕上畫個小球來回彈跳,或者將硬盤格式化后在顯示一些信息將用戶大罵一番,甚至于顯示一個征婚廣告攪亂用戶的視線。這一類特殊的"引導程序"在國際上有一個通用的名字--計算機病毒。可不要小看這一個扇區(qū)512個字節(jié)的容量,它造就了個人電腦中一項專門的技術(shù)--病毒防治。很長一段時期內(nèi)正邪兩股勢利在這一扇區(qū)中進行過激烈的碰撞,硝煙一直彌漫至今仍未散去。真不知道在大家的系統(tǒng)中是否有計算機病毒,如果你的機器染了毒,那么你在完成前面的實驗時就可能會出現(xiàn)很多問題。所以一旦大家發(fā)現(xiàn)自己的電腦運行情況與筆者給出的情況有出入,那么建議大家在否定筆者的結(jié)論之前能夠仔細地思考一番,也許真就是病毒作的怪。<br>
至此我們對操作系統(tǒng)在軟盤上的第一個保留扇區(qū)已有了一些了解,有關(guān)計算機病毒的更多內(nèi)容大家可以參閱相關(guān)書籍。硬盤上0面0磁道第一個扇區(qū)也有一個引導程序,但硬盤的"邏輯"構(gòu)成與軟盤不同。因為硬盤是分區(qū)存儲的,所以硬盤上有多個引導程序。位于0面0磁道第一扇區(qū)的引導程序稱為"主引導程序"(MAIN BOOT),各個分區(qū)的頭部各有一個"分區(qū)引導程序"。主引導程序的任務(wù)就是將"活動"分區(qū)的分區(qū)引導程序調(diào)入內(nèi)存執(zhí)行,操作系統(tǒng)的啟動運行由活動分區(qū)引導程序具體完成。下面給出的這個程序可以將硬盤主引導程序讀入內(nèi)存,我們將讀入的數(shù)據(jù)寫入A盤的0面0磁道第一扇區(qū),將軟盤的BOOT程序蓋掉,大家能推斷出用這片軟盤引導系統(tǒng)的結(jié)果嗎?
</td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18>
C:\ASM\>DEBUG[Enter]<br>
-A100[Enter]
</td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=2>
123D:0100<br>
123D:0102<br>
123D:0104<br>
123D:0106<br>
123D:0108<br>
123D:010A<br>
123D:010C<br>
123D:010F<br>
123D:0110<br>
123D:0111<br>
123D:0113
</td>
<td colspan=2>
MOV<br>
MOV<br>
MOV<br>
MOV<br>
MOV<br>
MOV<br>
MOV<br>
PUSH<br>
POP<br>
INT<br>
INT
</td>
<td colspan=14>
AH,02<br>
AL,01<br>
DL,80<br>
DH,00<br>
CH,00<br>
CL,01<br>
BX,0200<br>
CS<br>
ES<br>
13<br>
20
</td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18>
-G=100[Enter]<br>
-W200 0 0 1[Enter]
</td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18>
對于病毒而言,硬盤的主引導扇區(qū)可以說是"兵家必爭之地"。所以筆者建議大家在保證系統(tǒng)無毒的情況下將硬盤主引導程序讀出保存至文件中,對于以后分析一些"未知"病毒會有幫助。<br>
除了引導扇區(qū)之外,在DOS的保留扇區(qū)內(nèi)還有一些值得我們注意的地方。比如下面這個程序所反映的內(nèi)容:
</td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=2>
CATALOG.<br>
code<br>
<br>
<br>
main<br>
<br>
</td>
<td colspan=2>
ASM<br>
segment<br>
assume<br>
org<br>
proc<br>
mov
</td>
<td colspan=6>
<br>
<br>
cs:code,ds:code<br>
100h<br>
far<br>
bx,80h
</td>
<td colspan=8>
<br>
<br>
<br>
<br>
<br>
;BX寄存器指向命令行參數(shù)計數(shù)值
</td>
<td></td><td></td> <!右邊距>
</tr>
</font>
<!頁腳線>
<tr valign="top">
<td></td><td colspan=20><hr></td><td></td>
</tr>
<!頁腳>
<tr height=60 valign="top">
<td></td><td></td>
<td colspan=9><i>Copyright © 2004-2005 <a href="mailto:webmaster@nucstorm.com">Chunk Lee</a></i></td>
<td colspan=9 align="right"><i><a href="http://www.nucstorm.com" target="_top">www.nucstorm.com</a></i></td>
<td></td><td></td>
</tr>
</table>
<!導航條>
<p align="right"><a href="content1.html">目錄</a> <a href="page233.html">上一頁</a> <a href="page235.html">下一頁</a> <a href="page238.html">下一章</a></p>
</body>
</html>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -