莫里斯蠕蟲
1988年爆發的電腦病毒
它的編寫者是美國康乃爾大學一年級研究生羅伯特·莫里斯。這個程序只有99行,利用了Unix系統中的缺點,用Finger命令查聯機用戶名單,然後破譯用戶口令,用Mail系統複製、傳播本身的源程序,再編譯生成代碼。最初的網路蠕蟲設計目的是當網路空閑時,程序就在計算機間“遊盪”而不帶來任何損害。當有機器負荷過重時,該程序可以從空閑計算機“借取資源”而達到網路的負載平衡。而莫里斯蠕蟲不是“借取資源”,而是“耗盡所有資源”。是通過網際網路傳播的第一種蠕蟲病毒。它既是第一種蠕蟲病毒,也是第一次得到主流媒體的強烈關注。它也是依據美國1986年的《計算機欺詐及濫用法案》而定罪的第一宗案件。該蠕蟲由康奈爾大學學生羅伯特·泰潘·莫里斯(Robert Tappan Morris)編寫,於1988年11月2日從麻省理工學院(MIT)施放到網際網路上。
11月2日晚上11點左右,哈佛大學的Aiken計算機實驗室成員Andrew Sudduth和同事 Paul Graham正在聊天,這時莫里斯打電話進來。莫里斯本科畢業於哈佛大學,Sudduth和Graham都是莫里斯的朋友。Graham接了電話,之後告訴Sudduth Morris承認釋放了一個正在網際網路上傳播的病毒。
半個小時后莫里斯再次打進電話,這次是Sudduth接的。莫里斯建議哈佛採取措施保護計算機。
3日凌晨2:30,恐慌的莫里斯第三次打來電話,他覺得自己犯了一個大錯,請求Sudduth代表他在用戶組裡匿名發帖,為其行為道歉,並給出方法更新計算機防止感染病毒。但這條消息當時沒有引起注意。
1製作過程
2黑客獲罪 造成的後果
蠕蟲構造
按照其作者的說法,莫里斯蠕蟲編寫的起因並不是想造成破壞,而是想測量網際網路的規模。然而,選擇在MIT施放蠕蟲,掩蓋了它其實是來自康奈爾的事實(湊巧的是,莫里斯MIT擔任副教授)。此外,莫里斯蠕蟲利用了Unix系統中sendmail、Finger、rsh/rexec等程序的已知漏洞以及薄弱的密碼。
蠕蟲代碼中一段非本意的效果(unintended consequence)加劇了其危害性,它使同一台計算機會被重複感染,每次感染都會造成計算機運行變慢直至無法使用。蠕蟲的主體只能感染DEC的VAX機上運行的BSD 4以及Sun 3系統,而程序中的一段C語言代碼會調用程序主體,使其在其它的系統上也能運行。
蠕蟲病毒的始作俑者——羅伯特·莫里斯
莫里斯是在家裡第一次接觸計算機。莫里斯的父親曾從NASA帶回一台原始的神秘的密碼機器,成為一家人的談資,激起了他的強烈興趣。他自己12歲就編出高質量電腦程序,18歲時,就具有在最負盛名的貝爾實驗室和哈佛大學當過程序員的赫赫經歷。難怪有人感嘆:他的簡歷,簡直像電腦名人錄中的一樣。
1988年冬天,正在康乃爾大學攻讀的莫里斯,把一個被稱為“蠕蟲”的電腦病毒送進了美國最大的電腦網路——網際網路。1988年11月2日下午5點,網際網路的管理人員首次發現網路有不明入侵者。它們彷彿是網路中的超級間諜,狡猾地不斷截取用戶口令等網路中的“機密文件”,利用這些口令欺騙網路中的“哨兵”,長驅直入網際網路中的用戶電腦。入侵得手,立即反客為主,並閃電般地自我複製,搶佔地盤。
用戶目瞪口呆地看著這些不請自來的神秘入侵者迅速擴大戰果,充斥電腦內存,使電腦莫名其妙地“死掉”,只好急如星火地向管理人員求援,哪知,他們此時四面楚歌,也只能眼睜睜地看著網路中電腦一批又一批地被病毒感染而“身亡”。當晚,從美國東海岸到西海岸,網際網路用戶陷入一片恐慌。當加州伯克利分校的專家找出阻止病毒蔓延的辦法時,短短12小時內,已有6200台採用Unix操作系統的SUN工作站和VAX小型機癱瘓或半癱瘓,不計其數的數據和資料毀於這一夜之間。造成一場損失近億美元的空前大劫難!蠕蟲傳播機制上的編程錯誤把一個可能是無害的智力練習變成了惡意的拒絕服務攻擊。蠕蟲本來可以在入侵一台計算機之前查詢其是否已經被感染,但這麼做會讓清除蠕蟲變得非常容易,只要設置一個進程在受到查詢時回答“是”就可以避免被感染。為躲過這種防禦措施,蠕蟲採用了麥可·拉賓(Michael Rabin)的座右銘“隨機性”作為對策。莫里斯讓蠕蟲在得到“是”的回答時,仍按1/7的幾率進行複製。事實證明這種複製幾率還是過高,蠕蟲的傳播非常迅速,重複感染了一些計算機。Morris聽到這個錯誤后評論說“他本來應該先在模擬環境中試一下”。
當警方已偵破這一案件並認定莫里斯是闖下彌天大禍的“作者”時,紐約州法庭卻遲遲難以對他定罪。在當時,對製造電腦病毒事件這類行為定罪,還是世界性的難題。前蘇聯在1987年曾發生過汽車廠的電腦人員用病毒破壞生產線的事件,法庭只能用“流氓罪”草草了事。
1990年5月5日,紐約地方法庭根據羅伯特·莫里斯設計病毒程序,造成包括國家航空和航天局、軍事基地和主要大學的計算機停止運行的重大事故,判處莫里斯三年緩刑,罰款一萬美金,義務為新區服務400小時。莫里斯事件震驚了美國社會乃至整個世界。而比事件影響更大、更深遠的是:黑客從此真正變黑,黑客倫理失去約束,黑客傳統開始中斷。大眾對黑客的印象永遠不可能回復。而且,計算機病毒從此步入主流。
通常的說法是莫里斯蠕蟲感染了大約6,000台Unix計算機。Paul Graham 宣稱:
“這個統計數據炮製出來時我在場,他們是這麼算的:有人估計約有60,000台計算機連上了網際網路,而蠕蟲大概感染了其中的1/10。”
美國的政府審計辦公室估算出蠕蟲造成的損失為1000萬至1億美元。
為了合作應對蠕蟲感染的危機,Gene Spafford 創建了名為“噬菌體”的郵件列表。
莫里斯受到審判,並被定罪違犯了1986年的《計算機欺詐及濫用法案》。經過上訴,他被判3年緩刑、400小時社區服務及10,000美元罰金。