检视文章

MS-DOS 7.0 輕鬆學 for Windows 95 - 7:病毒終結者-6

MS-DOS 7.0 輕鬆學 for Windows 95 - 7:病毒終結者-6

7.jpg

認識電腦病毒

電腦病毒Computer Viruses,其實是一種古靈精怪的常駐型“電腦程式”。病毒程式就像任何電腦程式一樣,都是由CPU負責執行程式指令,只不過DEL、FORMAT等「正常程式」是經過使用者授權,而「病毒程式」則是不經過使用者同意,就把檔案刪掉或直接格式化硬碟。

誕生

由於電腦病毒具有自我複製、傳染潛伏,甚至還有隱形、變形蟲等“特異功能”,再加上新品種病毒誕生的速度極快,估計全世界每天有4隻新病毒誕生,已知病毒超過7000種以上!有些病毒作者還利用「病毒產生器」,一種快速產生電腦病毒的軟體程式製造新病毒,導致電腦使用者難以避免中毒。

傳染

通常病毒會躲在磁碟的“開機磁區”或“軟體程式”裡頭,當電腦開機或執行程式時,病毒會再伺機感染到其他程式、磁片或另一部電腦。本來只有一個程式、一張磁片或一部電腦中毒,最後會變成所有的程式、磁片和電腦都中毒了。

潛伏

從電腦感染病毒到發作的這段時間,我們稱為「潛伏期」。潛伏期因病毒喜好而異,有些會在幾周或幾個月之後發作,有些會在某個特別的紀念日,比如3月6日或13號星期五。有的病毒會算算自己複製了幾份、做了幾件壞事或開機幾次等等。

病發

當病毒程式自己認為到了發飆或發作的時機,就會立即展現那「無比強大的超級威力」,破壞硬碟所有資料,使電腦無法開機或不能使用等,因此要抓毒、解毒就必須利用潛伏期。

電腦病毒的種類

常見的電腦病毒,我們可以依病毒基因特性,大致分為開機型、檔案型、隱形、多型、複合型、變種、特洛伊木馬、巨集病毒等8大類型:

開機型病毒Boot sector virus

由於硬碟和任何一張磁片都有開機磁區,即使不是DOS開機磁片也有開機磁區。開機型病毒專門感染開機啟動程式,使病毒比DOS更早載入記憶體執行,並躲在記憶體的某個角落,偷偷控制整個電腦系統,感染你所使用的任何磁片。開機型病毒最著名就是:米開朗基羅Michelangelo、石頭病毒Stoned、磁碟殺手DiskKiller等。

檔案型病毒File infectors

畢竟磁片和硬碟只有一個開機磁區,不同的開機型病毒要搶佔同一個位置一點會大打出手,因此Program virus檔案型病毒則針對為數眾多的執行檔下手,專門感染程式檔案。當你執行某個中毒程式就會先啟動病毒,並常駐在記憶體以便感染以後執行的程式檔,最後將導致整部硬碟和磁片都是病毒。最有名的檔案型病毒代表作,就是:黑色十三號星期五Friday 13th。

隱形病毒Stealth virus

就像隱形戰機F-117A、F-22利用尖端科技與地形避開雷達的偵測,「騙人專家」的隱形病毒會自我隱藏以免被抓毒軟體或使用者發現,甚至會自我防禦以抵抗抓毒軟體的分析或刪除,非常容易瞞過抓毒程式。而一般病毒只要用掃毒程式抓毒、檢查硬碟的開機磁區,或比對程式檔感染前後的長度,就很容易發現病毒的蛛絲馬跡,可說遜斃了,不過對User依舊有效!

多型病毒Polymorphic virus

一般病毒通常有某些特徵碼,抓毒程式就利用這些特別的記號來找出病毒並予以消滅,但所謂「道高一尺,魔高一丈」為了躲避抓毒程式的「追殺」,多型病毒會自動改變極機密的病毒程式碼,使病毒幾乎沒有辨識特徵,即使是相同的程式檔感染同一隻病毒,在外觀上也找不到相同的病毒碼,每次傳染都會自我改變。多型病毒就像變形蟲般不斷的變化自己,所以又稱為編碼型病毒或千面人病毒。

Mutation Engine變體引擎或Polymorphic Engine多型引擎等病毒產生器,用來製造病毒簡直如虎添翼。目前技術難度最高就是多型病毒,很多抓毒軟體對此病毒相當頭大,一套抓毒軟體不見得可以抓光全部的多型病毒。

複合型病毒Multipartite virus

集各家特異功能於一身的超級電腦病毒,就稱為Complex Virus或Multipartite Virus複合型病毒。比如說大榔頭Invader病毒和龍舌蘭Tequila病毒,就同時擁有開機型和檔案型雙重功能,更可怕的是Tequila還具有隱藏和多型的能力,可輕鬆瞞過一般的抓毒軟體,中毒後很難查覺硬碟已經中毒了,往往使用者眼睜睜看著心愛的電腦病發,才知道電腦中毒陣亡了!

這類超級病毒我們稱為「整人專家」,專整使用者和設計抓毒軟體的程式設計師。遇到超級病毒請特別小心,別被整人病毒整慘了。雖然複合型病毒十分可怕,不過功能愈強,病毒程式的體積自然比一般病毒要龐大些,要佔用較多的記憶體和磁碟空間,反而是這類病毒的致命傷。

變種病毒Variant virus

其實電腦病毒也需要修正程式設計上的bus錯誤,或推出新的「功能加強版」,以便「對抗」新的抓毒軟體,這時新病毒的功能、辨識特徵(稱為Signature病毒簽名)等,可能和前版的舊病毒略有不同,但抓毒軟體仍需以不同的方法來解毒。我們把這種改良進化後的新版本病毒稱為變種病毒。

特洛伊木馬Trojan horse

還記得木馬屠城記的故事嗎?傳說在Trojan War特洛伊戰爭,希臘士兵藏在一隻巨大的中空木馬,並把木馬留在城門外佯裝撤退。不明究裡的特洛伊人把木馬拖進城,躲藏的士兵便趁黑夜爬出木馬並大開城門讓其餘希臘大軍進入,因此輕易攻破特洛伊城並終止長達10年的戰爭(典故參考Webster's New World Dictionary英英字典)。

特洛伊木馬是一種隱藏毒藥的程式,表面上偽裝成一個有用的程式,利用Internet或BBS網路下載到你的電腦,該程式可能很好用、很有趣或很好玩,但實際上藏有病毒、賊、或其他有害的程式。當我們玩這類程式,就會偷偷摸摸刪除檔案,說不定等遊戲玩完硬碟也完了,也可能在不知不覺中偷走重要資料,並經由使用者在Internet閒逛的時間,把資料回傳到間諜手中。

簡單的說,Trojan horse不算是電腦病毒,沒有複製傳染能力,但會像特洛伊城的木馬,引誘您接觸這匹可怕的木馬(執行程式)。其實特洛伊型程式的解毒方法很簡單,直接刪掉該程式即可,不一定需要抓毒軟體。

巨集病毒Macro virus

巨集病毒是首先附在一般資料文件內的電腦病毒。唉,事實果真如果我們幾年前在「MS-DOS 6.22新時代利器」一書預料的「任何能執行電腦程式的地方,就一定有病毒的蹤影」。以往用PE2、記事本等文字編輯程式,打出來的“純文字”檔案,是證絕對不可能附著任何電腦病毒,只要用最簡單的type指令,就可以清清楚楚的看到文字檔內的所有資料。

然而像Word、Excel、Access、AmiPro、WordPro等高階的文書處理、試算表或資料庫軟體,為了提供更強大的自訂與資料處理能力,同時支援了類似BASIC語言的巨集程式,允許User在文件內使用BASIC發展所需的增益集程式,還可以把程式夾帶在文件內,以便大家享用你製作的文件。

這原本是立意優良的好主意,本書就是使用Word 7.0來打字編排的,我們也錄製了幾個簡單的巨集程式,幫作者更自動化的編寫文章,沒想到就是有人利用BASIC強大功能,什麼都可以做的弱點來撰寫病毒。由於BASIC語言簡單易學,幾乎所有的電子與資訊相關科系的學生都有學過BASIC,所以用Word提供的巨集來寫病毒,可說是「一點都不難!」。

跨平台病毒

由於這些套裝軟體可支援多個作業平台,巨集病毒也就隨隨便便同時橫行在Windows 3.1/95/NT等視窗系統上。雖然巨集病毒威力不小,但終究病毒得靠製作該文件的軟體才能執行,像是台灣NO.1病毒就必須靠Word才能執行,因此只要不在發作當天啟動Word,就不會終生遺憾、遺憾終生…

嚇你的,沒那麼嚴重啦!其實只要在病毒潛伏期之間,先啟動Word並打開可能含有病毒的 .DOC文件,然後用「工具」功能表的「巨集」和「刪除」指令,把AutoOpen、AutoNew、AutoExec等巨集統統刪掉即可,不需要任何的解毒軟體。不過要是已經有非常多的Word文件已經感染巨集病毒,那麼還是找個抓毒軟體來清除所有的巨集病毒吧。

解析電腦病毒程式

電腦病毒還可分為測試性病毒和破壞性病毒兩種。測試病毒是用來測試抓毒軟體的防毒功力,比較不具有損毀資料的能力。破壞病毒則擁有強大的殺傷力,一旦發作就會摧毀使用者辛苦建立的資料,與電腦來個兩敗俱傷!

雙輸策略

在這場病毒攻防戰裡,往往電腦病毒和抓毒軟體是雙贏的大贏家,使用者不僅是無辜受害者,而且是最大的輸家:

・電腦中毒 → 買抓毒軟體 → 再中新品種病毒 → 再買更強大的抓毒軟體 → 還中巨集病毒 → 還買解毒軟體 → 咦怎麼會拚命中毒?→ 不信!再拚命買防毒軟體,我@#$%&*…

請直接唸加底線的黑體字,好玩吧,哈哈哈哈!

想要扭轉這種被動的局面,最好對病毒有更深一層的了解,除了認識電腦病毒,還要知道病毒能做什麼,以及「破壞電腦」的極限,最後你會發現,其實病毒也不過如此而已。至少從米開朗基羅之後,我們就再也不曾感染過任何電腦病毒,沒有安裝解毒劑,一樣平安無事!

底下我們把討論主題集中在6個焦點:磁碟的開機磁區、損壞的磁群與磁軌、電腦軟體程式、電腦的主記憶體、電腦週邊設備、病毒會破壞硬體設備?為您解析電腦病毒程式,到底在電腦裡頭做什麼事。

要事先聲明的是,這些主題的內容十分枯燥無味,而且需要一點電腦軟硬體底子,並不適合剛學電腦的初學者閱讀,要是您看到某一段卡住了,請想想您還有那些電腦知識是需要補強,充電之後再回來閱讀會更輕鬆簡單。

磁碟的開機磁區

在磁碟片或硬碟的第0軌、第0面的第0磁區,就是所謂的開機磁區(BootSector,啟動磁區)可用來啟動作業系統,像是MS-DOS、Windows、OS/2等。硬碟的開機磁區還包含一份Partition Table硬碟分割表,記錄著硬碟劃分區域的大小,以及指定可開機的分割區Active Partition。

當我們打開電腦的電源開關,主機上的BIOS基本輸出入系統的START啟始程式,就會執行開機磁區所記錄的Boot啟動程式,再由這個迷你的Boot程式來啟動整個作業系統。如果用一般資料片開機,通常會看到這樣的提示訊息:

Non-System disk or disk error

Replace and press any key when ready

其實這段訊息就是由開機磁區的Boot程式所產生的。為了掌握整部電腦的控制權,開機型病毒會變更開機磁區的內容,使病毒比作業系統更早啟動。

開機型病毒

一般抓毒軟體無法趕在開機型病毒之前更早啟動,這是因為美國法規不希望非作業系統公司撰寫開機程式。而電腦病毒發作的時機,幾乎都是設在電腦剛開機時立即病發,以免功敗垂成。

某些開機型病毒會把開機磁區和分割表,搬到硬碟的其他位置,即使病毒尚未發作,要是使用者用無毒的磁片重新開機,也會使MS-DOS或一般抓毒軟體找不到硬碟!前面曾提到硬碟消失就是這個緣故。其實硬碟所有的資料都在原來位置上,只是重要資料被大搬家之後,一般人看不到罷了。

表面上看起來,開機型病毒造成硬碟消失的問題頗為嚴重,事實上站在抓毒軟體的角度,清除開機型病毒要比檔案傳染型病毒容易得多也比較安全,至少防毒軟體“本尊”不會中毒。理由很簡單,因為磁碟機只有一個開機磁區,也就是說,病毒間接告訴你「我躲在這裡」,要抓病毒就到開機磁區找就對了!

檔案配置表

在開機磁區之後,就是磁碟機的檔案配置表File Allocation Table,簡稱FAT。FAT是“減肥”時的重要資料,啊不是啦,FAT是用來記錄各檔案使用Cluster磁群的情形。

如果FAT被破壞,我們就不知道某一個檔案究竟是使用那些磁群,因為任何一個檔案所佔用的磁群可以是連續的,也可以是任意零散的磁群。也就是說,當FAT損毀,整部硬碟的檔案資料就很難找回來了!

為此MS-DOS準備兩份內容相同的FAT,但這兩份FAT是連續放在開機磁區之後,緊接著就是根目錄和檔案。由於重要資訊幾乎都放在第0軌,要是第0軌受損或是被徹底格式化,往往使整張磁片都無法使用!

通常硬碟的開機磁區、分割磁區內容都是固定不變的,除非更換作業系統,因此只要事先將重要資料備份在「急救磁片」就可以簡單的救回整部硬碟。由於FAT會隨著檔案的建立、刪除、修改而不斷改變,你還必須養成經常備份磁碟影像(如Mirror或Image)或建立Rescue Disk救援磁片的習慣。

磁碟的損壞磁群與磁軌

用Defrag或其他可以顯示「磁碟地圖」的軟體,要是發現增加不明的Bad Cluster損壞磁群或新磁軌就要特別注意了!bad磁群或新磁軌很可能是病毒為了躲藏在磁碟,又不希望被破壞而故意製造的。高級病毒幾乎不再用這種技巧,這等於告訴使用者和抓毒軟體,病毒就藏在這裡,太明顯了。所謂“磁群”就是磁區的組合,MS-DOS會把幾個磁區組成一個磁群單位。

電腦軟體程式

軟體程式並不限於 .COM和 .EXE檔,其他類型的程式檔雖然不能直接在MS-DOS命令列或Windows執行,但可以經由不同的方式直接或間接執行,比如 .SYS、 .OVL、 .OVR、 .BIN以及 .APP、 .CMD等。

檔案型病毒會修改程式檔最前面的啟動程式碼(即電腦的機械指令碼),並且將整個病毒附在程式檔的最前面或最後面,或前後都有。所謂先下手為強,當使用者執行受感染的程式時,病毒就會比程式更早啟動,等病毒啟動完畢,如果不進行破壞,才會執行真正的軟體程式。

我們常說程式中毒了就是這個意思。當您拷貝或交流該程式時就會連同「免費附贈」的病毒一起帶給另一位使用者。不同的檔案型病毒幾乎互不相識,如果這些病毒會感染同一個程式且相安無事,那麼往後執行的任何程式,就會「同時感染幾種不同的病毒」。以後如果聽到某某電腦感染了好幾隻病毒,千萬不要大驚小怪,這已經不是什麼新聞了。

檔案型病毒

解檔案型病毒的方法說起來很簡單,只要把程式檔案去頭或去尾,脫掉病毒所附加的程式碼即可,但實際執行卻困難重重。主要的問題在於不知道新的病毒究竟附加了那些東西,病毒本身有多大?

比對病毒資料碼可以找出感染的已知病毒以及病毒大小,這樣抓毒軟體就會知道,只要刪掉那些資料碼即可正確解毒,但問題是這種解毒法無法適用於所有病毒,比如同樣大小的程式感染同一隻多型病毒,檔案長度可能會不同。若遇到未知的新病毒就只有刪掉檔案一途。

另一個問題是可執行程式檔的種類眾多,同樣是 .EXE至少可以分為DOS、Windows 3.1/95/NT、OS/2幾種。要是抓毒軟體無法100% 解毒還原中毒程式,就會使解毒後的程式檔損壞不能再用,這個問題最容易發生在感染了未知病毒。還好,程式檔都是由原版磁片安裝到硬碟的,即使不能正確解毒也無所謂,只要再安裝一次原版軟體即可。

電腦的主記憶體

其實傳統記憶體才是病毒生存和發展的舞台,躲在開機磁區或程式裡的病毒,只不過是一般資料碼罷了,和其他未執行的程式一般無二,完全無法發揮作用!除非用受感染的磁碟開機或執行程式,使病毒有機會載入電腦內啟動執行。

中斷向量

病毒為了偷偷干擾電腦的正常運作,會想盡各種手段搶系統的中斷控制權,比如計時器、磁碟、DOS、鍵盤等中斷向量號碼。所謂“中斷向量”是指電腦CPU發生中斷暫停時,提供中斷服務的程式位址。

比如當軟體程式需要使用磁碟、印表機、DOS時,就會像打電話一般「撥中斷號碼」給CPU,如果CPU有空就會為程式(也可能是病毒)提供服務。IBM PC有256條連線的中斷號碼,其中內含16條IRQ硬體專線的中斷號碼。電腦中毒後,某些中斷就改由病毒為您服務啦!

這麼多的中斷號碼,病毒可以自由選擇要提供中斷的服務,「服務項目」當然包括傳染和複製病毒、檢查時間是否適合發作,減慢電腦速度,使磁碟、印表機無法使用,偶爾還會來點特別服務,譬如顯示漂亮圖形或精采文字,刪除檔案、格式化硬碟等。如何,服務周到吧?我才不要!

常駐程式

要藏在記憶體偷偷服務,唯一的方法就是「常駐」,也唯有常駐才能擁有合法的永久居留權,病毒會請MS-DOS劃分一個小的保護區做為病毒的家。這就是Vsafe電腦警衛要監督常駐功能的原因。不幸的是,開機型病毒可輕鬆躲避任何系統監督程式,因病毒會是最早啟動的非法電腦程式。

病毒也需要佔用記憶體和系統資源,有時會與某些應用程式發生衝突,因為MS-DOS不能隨意停掉任何一個常駐程式,要在記憶體裡找出非法入境的常駐程式,立即消滅而且不影響系統正常運作就不是簡單的事了。因此,我們再三叮嚀必須用無毒磁片開機就是這個緣故。

週邊設備故障

要是發現電腦某些功能異常或無法使用,比如硬碟、軟碟、印表機、螢幕、滑鼠等週邊設備,就要特別注意了,這很可能是病毒故意引起的問題,而非真的硬體設備故障。

比如磁碟機突然無法使用,出現Sector not found找不到磁區或是General failure reading drive A,A: 磁碟機發生一般讀取失敗,諸如此類的錯誤訊息,不見得是磁碟機故障,說不定就是病毒的傑作。

類似情形也可能發生在印表機無法操作、螢幕會消失錯亂、鍵盤、滑鼠等周邊設備。還有一個容易被忽略的硬體80X87數學輔助處理器,也是靠13號中斷向量與CPU溝通。硬體無法使用的原因,說穿了其實很簡單,IBM PC大多數的硬體操作都經由中斷向量,病毒只要攔截這些周邊的中斷向量程式,即可輕鬆掌控整個電腦系統。

要確定硬體是否真的故障,方法很簡單,只要用無毒的開機磁片重新啟動電腦,再試一次就會知道正確答案。問題是,你到底有沒有一張保證無毒的開機磁片?

病毒會破壞硬體設備?

曾經聽說某種電腦病毒,可以用盡各種惡劣的手段來破壞電腦,使電腦過熱燒毀、積存高壓爆炸、磁碟機磨損、寫入資料到有貼防寫貼紙的磁片、螢幕頻率錯亂燒壞等,千萬不要相信這類超級大謊言!這只能騙(嚇唬?)不懂電子硬體的初學者!

假設我們也可以設計一種更超級的病毒,不僅能使電腦燒毀爆炸,還可以產生高壓電並送給連接到電腦的所有周邊,燒掉螢幕、印表機、鍵盤、滑鼠、甚至經由數據機連同電話和電信公司全部燒毀炸掉!您相信嗎?哈哈哈哈… 真有人相信!

謠言止於智者,請不要隨便信以為真!試問看電視會看到將電視燒毀嗎?不會吧!如果會,那一定是該電視設計不良,遜斃了!我們的意思是,如果電腦硬體設備本來就很遜,受不了病毒發作時激烈的操作而壞了,只能說是一分錢一分貨嘛!我們以專業的電子硬體素養向您保證:

世界上沒有任何的軟體程式能破壞電腦硬體!

簡單的說,任何病毒都無法以「燒毀」、「磨損」或「爆破」等任何方式破壞電腦的主機、介面卡、記憶體、CPU、鍵盤、螢幕、滑鼠、硬碟、軟碟、CD-ROM、印表機、磁片、光碟片...等所有週邊設備,無法透過網路或數據機破壞遠程電腦,更無法射穿防寫貼紙!病毒只能「破壞,即刪掉或清除」記憶體、硬碟、軟碟裡頭的「資料」,純軟體的破壞行為,與硬體無關。

動腦DIY

photoobjs66.jpg

使用BIOS防毒功能

* 新的BIOS也可以防止硬碟感染開機型病毒!請重新開機並進入BIOS Setup,然後選取ADVANCED CMOS SETUP或是BIOS FEATURES SETUP,應該會看到類似的選項:

BootSector Virus Protection:Enabled

Virus Warning              :Enabled

這兩種選項可以避免資料寫入開機磁區,而預防感染開機型電腦,對其他類型病毒則沒有作用。Enabled表示打開這個功能,設為Disabled則表示關閉。請不要關閉這個選項,並同時把開機磁碟的優先順序改為 C, A 。例如:

System Boot Up Sequence: C:, A:

Boot Sequence          : C, A

* 若故意用已感染開機型病毒的磁片開機,在開機時BIOS就會在畫面上閃爍著:

      BootSector Write !!!

Possible VIRUS: Continue (Y/N)? _

要寫入資料到硬碟的開機磁區!要繼續執行嗎?當然不要!請取出所有磁片並按 n 重新開機即可。有機會的話,您可以試試BIOS防毒功能能否阻止硬碟被格式化?答案應該是肯定的喲!

電影小百科

典藏在Microsoft Cinemania電影百科的魔鬼終結者2,是一部電腦3D動畫的經典名著,搭配強大的卡司陣容:飾演終結者的Arnold Schwarzenegger是我最喜歡的電影偶像、飾演未來領導者John Connor的Edward Furlong以及飾演John母親Sarah的Linda Hamilton與Robert Patrick飾演的超級液態金屬人T-1000 cyborg組合成電腦與人最酷最完美的演出,影片張力十足絕無冷場!

photoobjs32.jpg

Cyborg是由CYBernetic與ORGanism縮寫的新字,一般字典可能沒有收錄。要是您還沒有看過魔鬼終結者2,LD加長完整版,不妨再回味回味,裡頭有許多精采鏡頭值得您再次欣賞這部超級的動作經典名片!

直到現在,閒暇時我還是會不由自主地翻閱漫畫,或許是我一直喜歡看漫畫的緣故。也許你會認為漫畫不過是小朋友課外讀物。幾年前我曾在日本住了一個多月,那個時候我才深深體會日本人各個年齡層為什麼這麼喜歡漫畫。

圖片確實比文字更容易溝通,溝通品質更快速簡單而有效!我想漫畫家應該稱為商業型的藝術家吧。日本漫畫的題材相當廣泛,從國內常見的漫畫、商業漫畫,電腦漫畫等,像是MS-DOS入門、Internet都畫成“辦公室”漫畫。漫畫,可說是學電腦的另一種捷徑,有沒有興趣試試。

slamdunk01.png slamdunk02.png slamdunk03.png

slamdunk04.png slamdunk05.png slamdunk06.png

slamdunk07.png slamdunk08.png slamdunk09.png

slamdunk10.png

蘇言霖 2013/09/26 0 1895
评论
排序依据: 
每页:
 
  • 目前还没有评论
评分
0
文章资讯
蘇言霖
「超級懶貓級」社群網站站長
2013/09/26 (3837天前)
动作