CIH病毒

電腦病毒

CIH(英語又稱為Chernobyl或Spacefiller)是一種電腦病毒,其名稱源自它的作者,當時仍然是台灣大同工學院(現大同大學)學生陳盈豪的名字拼音注音Chen Ing-hau)縮寫。它被認為是最有害的廣泛傳播的病毒之一,會破壞用戶系統上的全部資訊,在某些情況下,會重寫系統的BIOS。因為CIH病毒的1.2和1.3版發作日期為4月26日(第一版病毒創造出來的時間),正好是前蘇聯(位於今日烏克蘭)核電廠災害「車諾比核事故」的紀念日,故曾被認為病毒作者撰寫動機和車諾比事件有關,因此CIH病毒也被稱作車諾比(Chernobyl)病毒。

CIH
技術名稱Win32.CIH, Win95.CIH
別名Spacefiller、PE_CIH
家族CIH
分類系統病毒
感染系統Microsoft Windows 95
Microsoft Windows 98
Microsoft Windows Me
子類型PE格式
發現時間1998年9月
來源地台灣
作者陳盈豪(Chen Ing-hau)
病毒製作者CIH,2020年攝。

歷史

編輯

1998年9月,山葉公司為感染了該病毒的CD-R400驅動提供一個韌體更新。1998年10月,用戶傳播的Activision公司遊戲SiN的一個演示版本因為在某一用戶的主機上接觸被感染檔而受到感染。這個公司的傳染源來自IBM1999年3月間發售的已感染CIH病毒的一組Aptiva品牌個人電腦。1999年4月26日,公眾開始關注CIH首次發作時,這些電腦已經運行一個月了。這是一宗大災難,全球不計其數的電腦硬碟被垃圾資料覆蓋,甚至破壞BIOS,無法啟動。至2000年4月26日,亞洲報稱發生多宗損壞,但病毒沒有傳播開來。2001年3月發現Anjulie蠕蟲病毒,它將CIH v1.2植入感染的系統。

針對CIH病毒可能篡改主版BIOS的特性,2000年以後生產的很多主機板配備了所謂的「反CIH系統」,其原理就是通過一個硬件跳線使得BIOS晶片(EEPROM或Flash)不能獲得寫入數據所需的電壓,功能類似於磁帶的「消磁防止擋舌」和軟碟的「防寫」系統。該系統置於「打開」則有效的從硬件上阻止CIH對BIOS的篡改,反之需要升級主機板韌體時,則必須將該跳線置於「關閉」。

這個病毒在2001年死灰復燃。一個VBS檔案裏的ILOVEYOU蠕蟲病毒變種包含了CIH病毒的掛鈎常式,並用珍妮花·露柏絲的裸照偽裝,從而使該病毒在互聯網上載播開來。

一個修改版本是CIH.1106,發現於2002年12月,但是沒有嚴重的破壞性。

只有CIH感染大量發信的電腦蠕蟲(如求職信病毒)所使用的程式,或有Anjulie蠕蟲病毒參與時,CIH才會被看成是一個威脅。但是CIH病毒只在Windows 9598Windows Me系統上發作,影響有限。現在由於人們對它的威脅有了認知,且它只能運行於舊的Windows 9X作業系統,CIH不再像他剛出現時分佈那麼廣泛傳播。

病毒特徵

編輯

CIH以可移植可執行檔案格式Windows 9x作業系統上載播。CIH不會在Windows NT內核的作業系統上執行或傳播。如Windows 2000Windows XPWindows 7等。

由於CIH會感染可執行檔案,它會佔據一般的可執行檔案剩餘的位置。因此,CIH又有一個綽號叫「空間填充者(Spacefiller)」。這個病毒大小不到1KiB,但是檔案不會增大。它使用從處理器Ring3到Ring0跳轉的方法觸發系統呼叫。

CIH會感染Windows的PE(Portable Executable)執行檔案,並且把它不到1KiB(1024 bytes)的程式碼分割成幾個部分,分別寫入PE執行檔案中各個段所尚未填滿的地方。因此被感染的執行檔案大小並不會增加。因為Windows 95Windows 98Windows ME等等這些非Windows NT的核心,存在有處理結構化例外處理(SEH, Structured Exception Handling)的問題,以及Windows 95/98/ME沒有保護中斷描述表(IDT, Interrupt Description Table)的機制(正確保護模式下的應用程式無權改動。Windows NT系列則有保護,因此病毒無法順利執行),CPU會用最高的權限Ring 0直接去執行這個SEH所指向的程式碼。因此一開始病毒被執行後,他會置換掉原本程式或Windows預設的SEH地址,透過觸發代碼異常中斷而讓CPU切換回Ring 0模式去執行這部分CIH所設計的程式順利取得Ring 0權限。由於CPU處在Ring 0模式下,CIH可以任意地存取Windows內核部分和系統API的掛鈎,進而繼續感染其他檔案,或是發作時候對硬件做些直接I/O動作。

當它發作時,是非常危險的。首先病毒會在硬件軟件中從第0磁區開始寫入零數據。這樣經常刪除了分區表的內容,將有可能死機。

第二個,它也會嘗試將垃圾資訊寫入Flash BIOS。如果保護跳線是關閉的,這一過程會在基於Intel 430TX晶片組的機器上起作用,上述晶片組將允許電腦程式刷寫Flash BIOS。

對於第一個,如果數據很重要,可以將硬碟交給一些專業恢復數據的公司,這將有可能使數據恢復;或者在某些情況下,可以使用Fix CIH頁面存檔備份,存於互聯網檔案館),一個由史蒂夫·吉布森編寫的免費軟件。否則,必須執行FDISK重新劃分分區。不過,當第二種情況發生時,電腦將無法啟動。需要請技術人員重寫或更換Flash BIOS晶片。

CIH v1.2(CIH.1103)

編輯

這是最常見的版本,它的發作時間為4月26日。 它包含這個字串:CIH v1.2 TTIT

CIH v1.3(CIH.1010A和CIH1010.B)

編輯

這個版本的CIH也是在4月26日發作。 它包含這個字串:CIH v1.3 TTIT

CIH v1.4(CIH.1019)

編輯

它在每月26日發作。它仍然存在,雖然它並不常見。 它包含這個字串:CIH v1.4 TATUNG

CIH.1106

編輯

它還是個變化很小的一個變種,出現在2002年12月。

參見

編輯

外部連結

編輯