電腦病毒如真病毒一般,遇強愈強,早前勒索軟件 WannaCry 肆虐全球便是一例。電腦病毒由 1983 年出現至今,現已成為流行病,防毒軟件遂變成一門生意。不像一般病毒是大自然演化而成,電腦病毒總需要一個發明者吧?其始作俑者不是黑客,也不是商家,而是學者,1983 年的 11 月 10 日,他把電腦病毒公諸於世。
30 多年前南加州大學研究生 Fred Cohen 和他的指導教授 Len Adleman(RSA 加密演算法的發明者之一。諷刺的是 WannaCry 就是利用這種方法惡意加密用戶檔案勒索)幫惡意程式起了「電腦病毒」這個名字。Cohen 將代碼插入到 Unix 指令中,在啟動電腦主機的 5 分鐘之內,就能控制系統。在其他 4 次嘗試中,代碼成功繞開當時所有的安全機制,在平均半小時內掌握電腦控制權。Adleman 就把自我複製的程式比喻為「病毒」,並於 1983 年 11 月 10 日在賓夕法尼亞州理海大學(Lehigh University)舉行的安全研討會上,向世人展示。
在電腦病毒正式命名之前
事實上,早在 Cohen 之前就有自我複製並不斷擴散到其它電腦的程式。程式設計師 Bob Thomas 在 1971 年參與技術公司測試,編寫程式以感染使用網絡的 PDP-10 電腦,電腦遭感染後,會顯示「I’m the creeper, catch me if you can !」
至於個人電腦最早的病毒則出現在 1982 年,賓夕法尼亞州的一個 15 歲的孩子 Rich Skrenta 編寫了 Elk Cloner 程式 —— 通過隱身在遊戲程式磁碟,以病毒感染 Apple II 電腦。被感染的電腦,每開啓遊戲程式 50 次就會突然重啟,並彈出惡搞提示,但因為病毒只限於朋友圈,當時又沒有關於電腦病毒的概念,故只被視為惡作劇。
電腦病毒正式被發現
電腦病毒是 Cohen 在課堂期間發現。他與身為電腦安全專家的指導老師討論鄰校加州大學洛杉磯分校(UCLA)一個分時系統(Timesharing system)中的木馬程式,Cohen 意識到該程式經編程後,可以自我複製,「我坐在教室裡,突然間發現如果這個木馬程式複製到其他程式中,那麼所有程式都會被感染,然後每個運行這些程式的人都會被感染並擴散開去。」
Adleman 回憶:「Cohen 說他發現這種新的電腦安全威脅,並開始描述我們現在稱為病毒的東西。他想進行一些實際的實驗,特別是想我使用在電腦上。」Cohen 堅持要再三確認電腦病毒的誕生,在確認後他坦言:「那一刻,我很了解這是個壞消息。我利用接下來 5、6 年的時間,設法保護電腦,以對抗病毒,並了解當中的局限。」他試圖找出防禦病毒的方法,後來亦一直堅持這方面的工作。
Cohen 歷年來撰寫超過 50 種專業出版物和 11 本書籍,在 2002 年獲得「年度技術安全行業專家獎(Techno-Security Industry Professional of the Year)」,成為資訊保護領域的重要人物。Cohen 說:「我編寫電腦上第一個病毒掃描程式。我知道這不會是一個有效的防禦措施,因為我也可以繼續編寫出更多的病毒,但同時我亦肯定病毒防毒程式會產生無限可能性—— 誤報、漏報,或是永遠有效。」
Cohen 強調自己相信有「良性病毒(Benevolent Viruses)」的存在,概念聽起來矛盾,但良性病毒最普遍的例子就是維護病毒(Maintenance viruses),成為自動化系統管理員完成工作,例如刪除舊文件,清理光盤空間和檢查錯誤。他在 1991 年寫了一篇文章,題為「仁慈病毒個案(A Case for Benevolent Viruses)」,文中指出不能忽略其對惡意程式之外的影響,「在電腦病毒的領域中,我們還沒有充分了解到其益處。」
公開電腦病毒的道德兩難
病毒有可能對電腦世界產生巨大的負面影響,作為學者,他們是否有義務分享他們的發現,抑或是應該保密?顯然他最後選擇公諸於世。
Adleman 說:「如果告訴人們有關電腦病毒的消息,他們可能會更有保護電腦的意識。至少我覺得電腦病毒是不可避免的,無論 Cohen 是否公開都會出現。所以最後,我們仍是決定將之發表,但請 Cohen 不能在他的論文中明確提出業餘者可以拿來製造病毒的代碼。不過,這種情況將來實在難以避免,然後我們就真的有麻煩了。」1986 年一對巴基斯坦兄弟就編寫出「Brain」感染 IBM 個人電腦,兩年後更出現大規模電腦蠕蟲(Computer worm)。
Cohen 則感嘆:「據我所知,80 年代末或 90 年代早期與電腦病毒有關的真正研究已經結束。這變成了一門生意 —— 修復中電腦病毒的漏洞,然後總有下一種病毒。」