桌上型電腦的普及化,讓病毒呈等比級數孳生。個人電腦的盛行不但擴大了病毒可傳染的機器數量,也培養出科技水平高的新一代使用者,賦予他們製造這類程式的知識。
Rich Skrenta就是典型實例。1982年,他還是匹茲堡地區的九年級生,卻已對蘋果二號電腦(Apple II)瞭如指掌,喜歡用軟體來戲弄同學。當時,還是青少年的Skrenta把蘋果二號的程式拷貝給朋友,其中添加了他一些特製的「功能」,例如讓機器在使用次數達到某個數字時便自動關機,然後顯示嘲笑的訊息。
「幾次被我作弄後,沒人願意再接受我提供的軟體,」即將創立搜尋公司Topix.net且將出任該公司總裁的Skrenta說:「所以,我開始思索如何把我的惡作劇程式弄到他們的磁碟上去。」
於是他想到撰寫一個能自我繁殖的程式,可感染蘋果二號磁片。Skrenta的「複製者」(cloner)程式──他未使用「病毒」一詞──傳染的目標是蘋果二號系統磁碟常用的一個指令。他自創的程式,「Elk Cloner」,會計算某磁碟片使用的數目,累計使用到五次,就把電腦關機,或執行其他的「把戲」。每當電腦開機次數累計達第50次,「Elk Cloner」就會顯示一首詩。
四年後,兩位巴基斯坦籍的兄弟(Amjad和Basit Farooq Alvi)創造了第一隻感染IBM PC的電腦病毒,稱為「Brain」病毒。兩兄弟把這個程式當作行銷工具使用:每一份程式都會在電腦螢幕上閃礫一則訊息,為兩兄弟在巴基斯坦開的Brain電腦服務公司打廣告。
這則訊息說:「當心這隻病毒......請與我們接洽防疫事宜」。至今,此訊息仍張貼在兩兄弟的網站上。
這只是起步而已。儘管病毒和蠕蟲歷經十餘年的演化才達到可觀的數量,但接下來的幾年之間,數量卻飛快暴增。到1990年末,已被辨認出的病毒約200種,如今數目已躍增到超過7萬種。電腦安全協會說,雖然其中只有不到1%的病毒在網際網路上大肆感染電腦,卻已有80%以上的公司染上數位病毒惡疾。
賽門鐵克公司的Gordon說,不同於最早的老前輩,現在大多數病毒的作者都不了解病毒程式在網際網路上蔓延的能力有多厲害。「他們大體上只是好奇。他們通常是表達能力強的人,與他人的關係和互動風格各不相同,」她說。
但Cohen表示,今日網際網路病毒背後的複雜學理基礎,早在1980年代就奠定完成。其他的一切,他認為,都不過是技術細節罷了。
「現在我們所知的一切,當時老早就知道了,」他說:「現在我們看到的一切,只是根據舊學問而衍生的技術解決之道。」
數位病毒的形成
從理論到實際應用,自我複製感染的程式碼花了數十年時間才逐漸形成網路威脅,以下是主要發展歷程:
1982年,9年級的學生Rich Skerta撰寫了Elk Cloner程式,成為第一個感染個人電腦(Apple II)的病毒。Elk Cloner透過條列檔案的指令進行散佈,Elk Cloner有時會造成系統當機,在電腦第50次受到感染時,螢幕上會顯示一首詩。
為了研究電腦病毒的理論,研究生Fred Cohen和他的指導教授Len Adleman將病毒植入以圖形顯示檔案結構的程式。這個病毒花了8個小時完成,測試結果顯示,病毒只要30分鐘就可侵入一個系統。
用病毒打廣告
巴基斯坦的一對兄弟Amjad和Basit Farooq Alvi,在1986年撰寫了第一個IBM個人電腦的病毒Brain。許多病毒歷史的研究者相信,Farooq Alvi兄弟是為了替自己的公司Brain Computer Services打廣告。Brain病毒在電腦啟動的開機磁區進行覆寫。
病蟲首度現身
Xerox Palo Alto Research Center的研究員John Shoch和Jon Hupp在1982年的一篇論文當中,使用了「病蟲(worm)」這個名稱,描述他們用來更新乙太網路效能的一個程式。這個程式當中的一個程式臭蟲,結果造成研究中心當中100台電腦當機。論文當中,引用了1972年出版的科幻小說「The Shockwave Rider」當中感染全球網路的「tapeworm」程式,定下了病蟲一辭。
1988年11月康乃爾大學的研究生Robert Morris Jr.發布了一個入侵Unix系統漏洞的程式,感染了網際網路上大約5%的電腦。Morris Internet Worm讓網路管理員意識到,這種程式在未來可能成為一個嚴重威脅。
Sarah Gordon在1995年的時候,撰寫了Concept病毒,成為第一個利用巨集語言散佈的病毒。Gordon以微軟的WordBasic撰寫Concept,Concept看起來像是Word文件,但是打開之後,卻可以執行另一個有毒程式。Concept病毒僅僅是作為散佈和執行有毒程式的測試之用,並未真的搭配另一個程式。
1999年3月開始散佈的巨集病毒Melissa是第一個大型的郵件病毒。David L. Smith所設計的Melissa使用了許多之前病毒的程式碼,最初的病毒郵件,則包含了一個成人網站的程式。
依照陳盈豪英文縮寫所命名的Win95.CIH病毒,又稱車諾比(Chernobyl)病毒,在1998年開始出現, 並宣告病毒重回binary code 的時代。一直到2000年都還有利用CIH程式碼的巨集病毒繼續出現。以傳統形式出現的CIH,透過感染檔案和檔案的分享進行散佈,並在每月的26日發作,刪除硬碟資料。
2001年9月,Code Red引發攻擊的兩個月之後,Nimda對財金業造成嚴重攻擊。這個事件讓微軟警覺到病毒從多管道進行感染的可怕之處。Nimda和Code Red所使用的漏洞一樣,不過Nimda也透過硬碟的分享、電子郵件和網站等方式散佈。
第一個以閃電速度肆虐的病毒,則是2003年1月開始散佈Microsoft SQL Slammer。大多數的研究人員認為Slammer得透過有漏洞的網址,不過Slammer卻展現了他小巧及快速的威力。



