大道小說網 十 杜鵑蛋 文 / 冷可然
杜鵑蛋——一部經典黑客小說
書評內容:
littman說:「我們(美國)創造了黑客,就像我們創造了牛仔、槍手和黑幫。既使他們不是ziyou與minzhu的一部分,也肯定是這塊土地的產物。」當人們邁向信息時代,黑客——這類後現代的電子化牛仔,也紛紛從幕後走向主流。這個魔鬼與天使揉和而成的群體,將冒險精神和毀壞慾望摻雜起來,形成了未來社會最強大的威脅力量。越來越成為媒體關注的焦點以及著書立作的新「英雄」。
一台pc,一個modem,一個電話線,憑借這些簡單的工具就能神出鬼沒,興風作浪。黑客的形象集合了頑童、惡魔和英雄。而黑客的追捕者,同樣是電腦技術超群的個人。雙方在迷宮般的網絡中演繹鍵盤上「貓與老鼠」的遊戲,極富傳奇色彩。有關黑客的書籍開始像現代武俠書一樣熱銷起來。
黑客曾是一種榮耀,一種美好的傳統。它代表著60—70年代反權威卻奉公守法的計算機英雄。這群電氣工程師和計算機革新者,才華橫溢,行為孤僻,也有個性缺陷。他們沉湎於技術和計算機,視工作為一種藝術。stevenlevy的《黑客:計算機革命的英雄》(1984)一書將我們帶回了那段令人懷念的美好歲月。本書敘述了50年代後期至80年代中期的黑客史,尤其詳述了黑客發祥地——麻省理工學院的「原型火車俱樂部」(modelrailroadclub)成員的活動情況。他們早期秘密穿梭於笨拙的穿孔大型機,並從xeroxparc偷取大量技術,開啟了計算機革命的歷程,促成了pc的誕生,使計算機真正走向大眾。這群人中有richardgreenblatt、billgasper、captaincrunch、stevewoz甚至billgates。他們ziyou不羈,反抗既有體制,卻嚴格遵循黑客道德準則:zi誘使用,信息免費,打破權威,推動分權。他們認為計算機既可創造藝術與美,也能使生活更美好。levy追溯了黑客真正的歷史傳統和嚴謹祖訓,使本書為後來的許多黑客帶來了積極的影響。
但隨著計算機和電話逐步從精英標誌變成全民xing的基礎設施,黑客不再是一種修煉,而成為一種職業。不再是一種遊戲,而成為一種犯罪。如果說levy的書還是一本充滿理想色彩的舊派武俠小說,那麼,c.stoll的《杜鵑蛋》(1989)堪稱新派武俠的開山之作。它第一次把黑客活動與國家安全聯繫在一起。黑客極具破壞性的黑暗面也浮出海面,並且永遠改變了黑客的形象。迄今仍是經久不衰的暢銷書。
stoll是勞倫斯伯克利實驗室的天文學家和系統管理員。1986年夏,一個區區75美分的帳目錯誤引起了他的警覺,在追查這次未經授權的入侵過程中,他開始捲入一個錯綜複雜的電腦間諜案。神秘的入侵者是西德混沌俱樂部的成員。他們潛入美國,竊取敏感的軍事和安全情報。出售給克格勃,以換取現金及可卡因。一場網絡跨國大搜索開始了,並牽涉出fbi、cia、克格勃、西德郵電部等。《杜鵑蛋》為後來的黑客作品奠定了一個主題:追捕與反追捕的驚險故事。而且也開始了新模式:一個堅韌和智慧的孤膽英雄,成為國家安全力量的化身,與狡猾的對手展開傳奇的較量。
與武俠小說天馬行空的想像力不同,黑客作品的作者本人往往就是主角之一。因此使故事更具真實性和趣味xing。《杜鵑蛋》的作者就是此書的主人公。圍繞作者(追捕者)與黑客之間,究竟誰是真正的黑客,誰是真正的英雄,也富於爭議。因為他們同為計算機天才,往往是這個行業一枚硬幣的兩面。stoll協助中央情報局擒獲黑客,雖激動不已,卻也時時感到良心上的不安。而另一黑客事件更使當事人及作者陷入極大的爭議。
johnmarkoff是《紐約時報》的著名記者,他與電腦安全專家下村勉一同追捕聯邦法院追緝的頭號電腦黑客—kevinmitnick。markoff充分運用媒體力量,將這位盜竊了10億美元的商業秘密以及上萬個信用卡密碼的黑客,塑造成滿懷陰險的噩夢般的黑客象徵。使這一事件不僅僅成為正義與邪惡的較量,而且成為轟動一時的媒體事件。在大獲成功後,markoff與k.hafner合著了《電腦怪客》(cyberpunk1991)一書,獲得數以百萬計的收益,並引起好萊塢的極大興趣。除mitnick外,書中還詳述了88年11月製造互聯網蠕蟲事件的羅伯特-莫裡斯以及德國混沌計算機俱樂部的黑客潘戈(即《杜鵑蛋》中的主角)。本書資料詳實,揭開諸多隱秘,並對黑客文化作了深入剖析,加上一流的寫作,使其成為經典。但markoff與政府的合作以及運用媒體實現個人商業目的,也招至業界廣泛的批評。
而下村勉也與markoff一起出版了《拆解》(takedown,)一書,講述了他們的追蹤過程。顯然在本書中,markoff並沒有參與多少寫作工作,使文筆稍遜。更大的缺憾,是過多陳述下村勉的個人經歷,而真正的主角—mitnick,到最後才姍姍登場。
jonatnanlittman後發制人,出台《逃亡者遊戲》(thefugitivegame,1996)。對mitnick事件進行了嚴謹而客觀的披露。此書基於200多頁與獄中的mitnick的談話。沒有花哨,也沒有英雄,更不是一場正義與邪惡的較量。而將對陣雙方當作同樣具有豐富內涵的正常人。有興趣的人,可以將其與《takedown》互相參照閱讀。
1997年,littman出品另一部黑客作品:《巡夜人》(thewatchman)。這次的主角是臭名昭著的電腦黑客和電話巨客kevinpoulsen。他是美國第一位被指控為間諜罪的計算機犯罪。在這場驚險的鍵盤上的貓與老鼠的故事中,這位從小個性狂野而古怪的人物遭到了作者的批評,也贏得了同情。人們可以將其當作一流的偵探小說。
現代黑客的故事才剛剛拉開序幕,有關黑客的書仍在源源不斷地出台。國內很早就翻譯了《杜鵑蛋》和《電腦怪客》。《逃亡者遊戲》也於98年底推出。而胡泳的《黑客》(人大,1997)則綜合了以上多本國外作品。另一本曾在媒體大為宣傳的《數字化犯罪》(遼寧教育,1998)則帶有明顯的炒作。作品本身平淡無趣。
《逃亡者遊戲》:追擊頭號黑客
對於歷史上最臭名昭著的黑客凱文-米特尼克(kevinmitnick)來說,2002年的聖誕節提前來到了。2002年,他終於重新獲得許可可以再度網上衝浪。而且,他還推出了一本暢銷書《欺騙的藝術》(theartofdeception:controllingthehumanelementofsecurity)。此書大獲成功,在amazon和ebay上熱銷,成為凱文-米特尼克重新引起人們關注的第一炮。
從13歲起,無線電就是米特尼克的愛好之一。現在,他仍然用自製電台和朋友通話。正是這一愛好引發了他對計算機黑客這個行當的興趣。凱文曾經是美國政府最著名的通緝犯之一。他因為非法侵入sun、motorola等公司的計算機系統而被判5年徒刑。現在,米特尼克正在享受重生之後平靜的中年生活。在一次閒聊式的採訪中,39歲的米特尼克對自己的前途充滿信心。他表示,他將開設公司,業務是幫助客戶防護黑客攻擊。這種改邪歸正的商業模式也引發了激烈的爭論。
凱文的黑客生涯到其後來入獄時差不多就有15年之久。他的作案時間之長、作案次數之多、破壞力之大,他的技術之jing、經歷之傳奇,都讓全世界為之震驚,也使電腦警察們汗顏。以他為主角的書籍已經超過10本,作者包括好幾個當年在網上展開「貓捉老鼠」大戰的參與者。而專門從事犯罪調查的撰稿人喬納森-利特曼(jonatnanlittman)後發制人,於1996年拋出一本《逃亡者遊戲》(thefugitivegame)。作為一個局外人,利特曼可以拋卻當事者的偏見,對凱文事件進行嚴謹而客觀的披露。此書基於200多頁與獄中的米特尼克的談話,沒有花哨,也沒有英雄,更不是一場正義與邪惡的較量,而將對陣雙方當作同樣具有豐富內涵的正常人。利特曼在書中揭示了一個黑客典型的雙重性格;他死裡逃生的經歷;符合他大學文化程度的各種偽造的身份;他的黑客技術和練達的「社交藝術」;他的報仇雪恥的固執觀念。這是對奇怪的黑客式的叛逆文化認知的旅程。正如凱文自己所言:「我嚮往得到美國聯邦法院的工作!我能夠發現錯誤,發現掌握安全保護系統的人。我在計算機上只需花費兩天的時間,便能在程序下找到任何人。」他是一個ziyou的電腦編程人員,用的是舊車,住的也是他母親的舊公寓。他也並沒有利用他在電腦方面公認的天才,或利用他的超人技藝去弄錢,儘管這對他並不是十分困難的事。而且,他也沒有想過利用自己解密進入某些系統後,竊取的重要情報來賣錢。他對電腦有一種異乎常人的特殊感情,當洛杉磯的檢察官控告他損害了他進入的計算機時,他甚至流下了眼淚。一位辦案人員說,「電腦與他的靈魂之間似乎有一條臍帶相連。這就是為什麼只要他在計算機面前,他就會成為巨人的原因。」當然,同情並不能成為一本書籍的主要情緒,這一點利特曼也頗為克制。
富有戲劇性的是,本書起筆於米特尼克被捕之前。從1994年春天開始,正在逃亡的米特尼克不斷地給他打電話。此後9個月內,總共打了數十個電話,直到1995年2月米特尼克被捕。這個特殊的局面成為利特曼寫作的動力,隨後他採訪了與此案相關的各類人士:特工人員、聯邦警探、助理檢察官、黑客同行等。
基於這些真實和詳實的材料,利特曼為讀者高超地再現了這個電子世界中的驚險故事。當然,作者同時也引發了很多思考,比如,關於網絡秘密、**權與法律強制實施之間相互牽制的問題,以及各個團體成員和法律實施能否按照保安專家的主張,使用非法的或未立憲的手段來逮捕米特尼克?這位被判決偷盜成百上千張信用卡、完全可以發大發其財的人,為什麼一直住在簡陋的公寓內,幹著一份普通的工作?本書破除了圍繞本案的神話、傳說和曲解,因為其的超脫和真實,獲得了黑客界和大眾的共同認可。
利特曼說:「我們(美國)創造了黑客,就像我們創造了牛仔、槍手和黑幫。即使他們不是ziyou與minzhu的一部分,也肯定是這塊土地的產物。」
當人們邁向信息時代,黑客——這類後現代的電子化牛仔,也紛紛從幕後走向主流。這個魔鬼與天使揉和而成的群體,將冒險精神和毀壞慾望摻雜起來,形成了未來社會最強大的威脅力量,越來越成為媒體關注的焦點以及著書立作的新「英雄」。一台pc,一個modem,一個電話線,憑借這些簡單的工具就能神出鬼沒,興風作浪。黑客的形象集合了頑童、惡魔和英雄。而黑客的追捕者,同樣是電腦技術超群的個人。雙方在迷宮般的網絡中演繹鍵盤上的「貓與老鼠」的遊戲,極富傳奇色彩。有關黑客的書籍開始像現代武俠書一樣熱銷起來。
利特曼意猶未盡。1997年,他出品另一部黑客作品:《巡夜人》(thewatchman)。這次的主角是臭名昭著的電腦黑客和電話巨客kevinpoulsen。他是美國第一位被指控為間諜罪的計算機犯罪。在這場驚險的貓和老鼠遊戲中,這位從小個性狂野而古怪的人物遭到了作者的批評,也贏得了同情。人們可以將其當作一流的偵探小說。
現代黑客的故事才剛剛拉開序幕,有關黑客的書仍在源源不斷地出台。國內很早就翻譯了《杜鵑蛋》和《電腦怪客》。《逃亡者遊戲》也於1998年底推出。而胡泳的《黑客》則綜合了以上多本國外作品,內容非常豐富。當然,黑客的故事還將越演越烈,黑客書籍也將層出不窮。
smiletotem對小說標題的註釋
杜鵑蛋(cuckooegg)方式:一種進行計算機竊密常用的攻擊方式手段。杜鵑總是在別的鳥窩裡下蛋,讓別的鳥孵出自已的小鳥。這種方式是將別有用心的程序藏入或偽裝成某些實用程序的更新版本或備份文件,甚至是遊戲程序,然後將這些程序通過合法渠道送入系統,一旦這些程序開始運行,其中的別有用心的程序即起作用,以達到不可告人的目的
杜鵑蛋
我是一個奇才嗎?一周以前,我還是一個天文工作者,正心滿意足地設計光學望遠鏡。回顧
當時的情景,我是生活在充滿學術氣氛的幻想世界裡。這些年來,我從來沒有為將來籌劃過,
一直到我的補助金用完的那一天為止。
我真幸運,我的實驗所重新錄用了在那裡工作過的天文工作者。我不是站在失業者的隊伍
裡,而是從勞倫斯一伯克利實驗所的凱克天文台,調到同一幢樓底層的計算機中心。
我可以冒充行家,用計算機做很多運算,給天文學家們留下深刻印象,也許可以很快讀出
數據,令我的同事們無法理解。儘管如此,我是一個計算機奇才嗎?我不是,我是一個天文學工
作者。
那時怎樣呢?在我冷漠地盯著我的計算機終端的時候;我還在想著行星軌道和天體物理學。
作為新來的人,我選擇了窗戶對著金門橋的一間小屋。這間辦公室沒有通風設備,有一面牆是
書架。我忍受著幽閉和恐怖感,希望我在辦公桌邊睡覺時不會引起人注意。我的辦公室左右兩
邊是兩個計算機系統人員的辦公室。韋恩-格雷夫斯和戴夫。克利夫蘭都是這個系統的老手。
他們經常為一點小事爭吵,這使我很快就熟悉了我的鄰居。
韋恩認為所有的人不是不能勝任工作,就是懶惰成xing,但是他卻和這裡工作的其他人來往
頻繁。他對這個系統瞭解得一清二楚,從磁盤驅動系統軟件一直到微波天線。人們勸韋恩不要
迷戀數字設備公司的「瓦克斯」計算機,而他卻非要它不可,既不要國際商用機器公司的,又
不要尤尼克斯公司的,也不肯要麥金托什公司的。
戴夫-克利夫蘭,在我們使用「尤尼克斯」系統的人員中是一位和善的菩薩,總是耐心地
聽著韋恩滔滔不絕地評論各種計算機的優劣異同。很少會議沒有韋恩的推銷宣傳:「瓦克斯計
算機是一切地方的科學家的選擇,它可幫助你用12種方法編製有效的程序。」戴夫反駁說:「看,
你的話只使迷戀瓦克斯計算機的人高興,而世界上其他的人卻要聽我的。」戴夫從來沒有讓他
滿意地發一通脾氣,這樣,韋恩的怨氣最後漸漸消散,其是咕噥一陣罷了。
妙極了。工作的第一天,我夾在兩個人中間,他們不時的爭論已經在破壞我的幻想了。
韋恩、戴夫和我要一起管理這些計算機,它們是全實驗所的一種公用事業設備。我們管理
12台計算機中央處理機——這是解決物理學問題的巨大運算工具,大約共值600萬美元。我們期
望使用這些計算機的科學家們看到的是一個簡單而功能很強的計算系統,就像供電公司一樣可
靠。這意味著得讓這些計算機晝夜不停地運轉。而且正像供電公司一樣,我們對使用的每個計
算週期都要收費。
在4,000名實驗所僱員中,也許有四分之一使用計算機主機。這l,000筆帳,每筆都天天
登記,分類帳保存在計算機內。用計算機計算一小時收費300美元,因此,我們的帳目,必須分
毫不爽,所以我們總是跟蹤打印的每一頁、磁盤上的每塊空隙和處理機的每分鐘處理時間。另
有一台計算機用於收集這些統計數字,把每月的帳單送到實驗所各個部門。
這樣,碰巧在我開始工作的第二天,戴夫閒逛時來到我的辦公室,含含糊糊地提到尤尼克
斯計算機會計系統出現一個差錯。一定有人用了幾秒鐘的計算時間而沒有付錢。計算機帳上收
支不很平衡。上月的帳單是2387美元,差了75美分。
要是出現幾千美元的誤差,那是顯而易見的,不難發現。但是美分欄裡的誤差出於一些埋
藏很深的問題,所以找到這些錯誤自然是對初露頭角的軟件奇才的一次考驗。戴夫說我應當考
慮這個問題。
「一級盜竊案,嘿?」我回答說。
戴夫說:「把它弄清楚,克利夫,你會讓每個人驚愕的。」
好吧,這看起來倒像一場有趣的遊戲,於是我鑽研起記帳程序來了。我發現我們的會計軟
件是由早就離開的夏季大學生編寫的程序拼湊起來的東西。不知怎麼地,這些大雜燴竟然工作
得很不錯,用不著管它。我在研究這些混合的程序時,發現這個軟件是用assemblerfortran
和cobol語言編寫的,這些是最老的計算機語言,也許還是古典的希臘語、拉丁語和梵語。
就像大多數自製軟件一樣,誰也沒有費心去查證我們的會計系統。只有蠢人才會在沒有地
圖的情況下闖進這樣的迷宮中去摸索。
儘管如此,現在有一個機會來探索這個系統。戴夫讓我看了看每次有人與計算機聯機時,
這個系統是怎樣記錄的:記錄下該用戶的名字及其終端設備。每次聯機時,該系統便蓋下時間
印記,記錄用戶執行什麼任務、用戶用了多少秒時間以及他何時與計算機斷開。
戴夫解釋說,我們有兩套duli的會計系統。普通的尤尼克斯會計軟件只把有計時印記的記
錄存入文件存儲器裡。但是為了滿足某些官僚的要求,戴夫建立了第二套會計製表系統,它保
留下關於誰使用計算機的更詳細的記錄。
在這些年裡,接連幾批帶著厭煩情緒的暑期學生編寫了一些分析所有這些會計信息的程序。
一個程序專門收集數據,把它存入文件檔案。第二個程序能讀出這個文件,並且計算這次運算
收費多少。第三個程序可收集所有這些收費記錄,打印出帳單,供郵寄到各個部門。最後一個
程序把所有用戶收費加起來,把這總數和計算機的內部會計程序所得出的結果相比較。這兩種
由不同程序並行保存的會計文件,應當得出同樣的答案。
一年來,這些程序工作正常.沒有出過什麼差錯,可是這一周的工作情況卻不十分理想。
可能造成這種情況的一個明顯原因是捨入誤差。每項會計輸入很可能都是正確的,但加在一起
時,十分之幾美分的差額就會逐漸增加,一直積累到75美分的誤差。通過分析這些程序如何運
算,或用不同的數據檢驗它們,我應該能證明我的這個看法。
我不是設法瞭解每個程序的代碼,而是寫了一個短程序來核實這些數據文件。在幾分鐘內
我就核對了第一個程序:的確,它正確地收集了會計數據。第一個程序沒有問題。
檢驗第二個程序時,我用的時間比較長。在一個小時內,我拼湊了足夠多的臨時編碼以證
明這個程序實際上是有效的。它只是把時間間隔加起來,然後乘以我們對計算機時間的收費額。
結果是,這個程序沒有出現75美分的誤差。
第三個程序工作情況非常好。這個程序查對了特許用戶的名單,找到他們的研究所帳戶,
然後打印出一份帳單。是四捨五八造成的誤差嗎?不是,所有的程序都記錄下金額,直至百分之
幾美分。奇怪,這75美分的誤差是在哪兒發生的呢?
我為設法瞭解一個細小的問題花了幾個小時。我犯了倔強脾氣了:該死的東西,如果有必
要,我要在那裡呆到夜裡12點。
後來搞了幾個試驗xing程序,我開始真正相信這個當地編製的會計程序的大雜燴了。毫無疑
問,收支並不平衡,這些程序雖然不是萬無一失的,但是不會把幾十分錢遺漏掉。那時,我已
找到特許用戶的清單,並且弄清了這些程序是如何使用數據結構給不同的部門開帳單的。大約
下午七時,一個叫亨特的用戶引起我的注意。這個傢伙沒有一個確實的開帳地址。
哈!在過去∼個月裡,亨特用了75分錢的計算機時間,但是沒有人為他付款。
這就是我們的帳上收支不平衡的根源。不知什麼人把一個用戶加到我們的系統裡,把事情
弄糟了。一個細小的誤差造成了一個小小的問題。
這是該慶賀的時候。於是我打開我的筆記本,把這第一個小小的勝利寫在頭幾頁裡,正當
這時.我的愛人馬莎順路來看我。我們深夜來到伯克利的羅馬咖啡館,喝著克皮奇諾咖啡,共
同慶賀這個勝利。可是對我來說,這是一個未知的領域,我能摸索著找到問題的答案真不容易。
值得自慰的是,我學會了使用會計製表系統,並且練習了幾種過時的計算機語言。第二天,我
給戴夫發了一個電子郵件,向他指出了這個問題,藉以為自己誇耀一番。
中午前後,戴夫順道來訪,放下一摞手冊,並且漫不經心地提到,他從來沒有增加過一個
名叫亨特的用戶——這一定是其他系統的一個管理人員干的。韋恩粗率地搭話說:「這不是我,
rtfm。」他講的話大多數都是以字的頭一個字母的縮略詞結束的。這個縮略詞的意思是「看看
這一摞亂糟糟的手冊吧」。
但是我早就讀過這些手冊。按理操作人員要是加一個新用戶是不會不記帳的。在其他計算
機中心,你只消同一個特許帳目系統接通,讓這個系統增加一個用戶就成了。由於我們除此之
外還必須作幾種簿記登記,我們不能使用這種系統。我們的系統是很複雜的,所以我們有幾個
特殊的程序,能自動做文件工作和操縱管理系統。
我向周圍查閱了一下,發現大家都認為這個自動化系統非常優越,誰也不能用人工加一個
新用戶。這個自動化系統不會犯這種錯誤。
嗯.我想不出這個大錯是誰犯的。誰也不知道亨特其人,也沒有給他立帳戶。所以我從這
個系統抹去了這個名字。如果他抱怨,我們可以正經八百地給他立個帳戶。
一天之後,一台叫「船塢長」的不明不白的計算機給我們發來一個電子信件。這台計算機
的系統管理人聲稱,我們實驗所有人在週末曾企圖闖入他的計算機。
「船塢長」的回電地址可能在任何地方,但是從種種跡象來看,是在馬里蘭州。這個電子
郵件經過了另外12台計算機。每台計算機都留下了一個郵戳。
戴夫答覆這封信件時,不置可否,只說;「我們要調查一下。」啊,這是當然的,在我們
的所有其他問題都消除以後,我們會調查的。
我們實驗所的計算機與12個網絡上的其他數千個系統有聯繫。我們的任何科學家都可以與
我們的計算機聯機,然後和遠方的某個計算機連接。一旦連接上,他們輸入帳戶名字和口令,
就能與遠方的計算機聯機。在原則上,保護網絡上計算機的唯一東西是口令,因為帳戶名字是
容易推斷出來的。
「船塢長」發來的電子信件是很奇特的,戴夫把它遞給韋恩附帶提了一個問題:「誰是『船
塢長』?」韋恩把它轉交給我,他猜測「這很可能是某家銀行」。
最後,韋恩又把這封電子信件交給我。我猜想,「船塢長」是某個海軍船塢。這件事並不
重要,但是看來值得花幾分鐘去調查一下。
這封信提供了我們的尤尼克斯計算機系統上的某個人試圖與「船塢長」的計算機聯機的ri
期和時間。我剛剛檢查過會計製表系統,翻閱過這些文件,查找從星期六早晨8時46分以後的記
錄。同樣,發現了這兩個會計製表系統不一致。普通的尤尼克斯會計文件表明,在8時25分有一
個叫斯文特克的用戶請求聯機,歷時半小時,他什麼也沒做,然後就斷機了。在這段時間沒有
蓋上計時印記的活動。我們自製的軟件也記錄了斯文特克的活動,但它表明,他從8時31分直至
上午9時1分一直在使用這個網絡。
咦,又出現一個會計問題。計時印記不一致。從一個系統看有活動而另一個會計系統則說
一切都處於休止狀態。
另外一些事情似乎更為緊迫.所以我擱下了這個問題。在浪費了下午的時間去追查某個cāo
作人員的錯誤以後,我不打算再去碰這個會計製表系統。
在和戴夫一起用午餐時,我提到在「船塢長」報告這次闖入事件以後,斯文特克是唯一的
聯過機的人,戴夫驚訝地瞪著眼說:「是喬-斯文特克嗎?他在劍橋,英格蘭的劍橋。他回來干
什麼?」原來,喬-斯文特克曾在本實驗所擔任尤尼克斯系統的領導人,很受人尊敬。他是一位
軟件奇才,在過去10年裡他編製了12種重要的程序。喬在一年前已赴英格蘭,在整個加利福尼
亞計算機行業留下顯赫的聲譽。
戴夫不能相信喬回到了本市,因為喬的其他朋友沒有一個接到他的信。戴夫說:「他一定
是從什麼網絡進入我們的計算機的。」
我問戴夫:「那麼,你認為,喬應對這個問題負責羅?」
戴夫回答說:「完全不是這樣。喬是個老派的黑客(hacker)。是一個聰明、機敏而有才幹
的程序編製人員。不是那些玷污了『黑客』這個名詞的小流氓。不管怎樣,斯文特克不會想要
闖入馬里蘭州的一台計算機的。如果他真想這樣做,他是會成功的.而不留下任何痕跡。」
真奇怪:喬-斯文特克已經在英格蘭呆了一年,然而卻在星期六清晨出現了,企圖闖入馬
裡蘭州的一台計算機,後來又斷機,結果使會計製表系統出現不平衡。在門廳裡,我向韋恩提
起此事,他聽說,喬現在正在英格蘭度假。他躲到邊遠的林區去休養,離任何計算機都很遠。
「忘記『船塢長』那個電報吧。斯文特克將訪問伯克利實驗所,rsn,那時他將澄清這件事。」
rsn嗎?確實沒有多久了。這是韋恩的「我不能肯定什麼時候」的說法。
我所擔心的不是斯文特克,而是帳目不平衡。這兩個會計製表系統為什麼記錄不同的時間
呢?為什麼某一個活動在一個文件裡有記錄,而在另一個文件裡卻沒有呢?
回過頭再看看那一天下午的會計製表系統記錄。我發現,這兩個時間印記之間相差5分鐘,
是近幾個月我們的各計算機時鐘發生偏移所致。其中一個計算機的時鐘每天要慢幾秒鐘。
但是斯文特克的活動應當在兩個系統的帳目中都有記錄。這是否和上周的會計問題有關呢?
在我上周查找原因的時候,我是不是把事情搞糟了呢?或者是否有什麼別的解釋?
那天下午,我去開會,聽完了一次關於星系結構的令人厭煩的枯燥講演。這位博學的教授
不僅講話單調,而且在黑板上寫滿了一列列長長的教學方程式。
我竭力打起精神,怕睡著了,腦子裡翻來覆去地考慮我遇到的問題。有什麼人在增加新帳
戶時把事情弄糟了。一周以後,斯烹特克要求聯機,企圖闖入馬裡蘭的某台計算機。關於這件
事的會計記錄似乎被竄改了。斯文特克這個用戶找不到。另外,不知什麼地方又有差錯。這幾
乎像是有什麼人在躲避我們的記帳程序似的。
我想知道,需要怎麼做才能不花錢白白使用我們的計算機?是不是有人可能找到了一個繞過
我們的會計製表系統的辦法?
大計算機有兩類軟件;用戶程序和系統軟件。自己編寫或設立的程序是用戶程序,例如,
我的天文學程序,是用來分析一個行星的大氣的。
光是用戶程序沒有多大用處。它們不能與計算機直接談話,而是要求操作系統操縱計算機。
在我的天文學程序要記錄什麼的時候,它不是直接在我的螢光屏上打出一個詞,而是把這個詞
傳給操作系統,操作系統再告訴硬件寫出一個詞。
操作系統與編輯程序、軟件庫和語言解釋程序一起組成系統軟件。這些程序不需要你去編
寫,它們是和計算機配裝在一起的。這些程序一旦建立,誰也不得竄改。
記帳程序是系統軟件。要修改它或繞過它,你必須是系統管理人,或設法在操作系統內獲
得特權地位。
好,你怎樣才能獲得特權地位呢?明顯的辦法是用系統管理人的口令和我們的計算機聯機。
我們好幾個月沒有改變過我們的口令了,但是誰也不會洩漏它。一個局外人絕對猜不出我們的
秘密口令「wyvern」——在猜測我們的口令時,有多少人會想到神話中的飛龍呢?
但是即使你成了系統管理人,你也愚弄不了記帳軟件。這個名詞,知道的人太少了,文件
上的記載也太少了。不管怎樣,我已看到這個記帳軟件是可行的。
等一等——我們的自製軟件也工作正常。有人增加了一個新帳戶,但沒有使用。也許他們
不知道此事。如果有什麼人從外界闖進來,他們是不會知道我們的局部革新措施的。我們的系
統管理人和操作人員都知道這一點。喬-斯文特克即使在英格蘭,也肯定知道。
但是,從外界來的什麼人——一個精明的程序編製人「黑客」——會怎麼樣呢?
「黑客」一詞有兩個截然不同的意思。我所認識的一些自稱「黑客」的人是軟件奇才,他
們設法創造性地設計了他們擺脫困境的辦法。他們知道操作系統的一切細微的缺點。他們不是
那種一周工作40小時的呆笨軟件工程師,而是具有創造性的程序編製人員,他們不滿足計算機
的要求是不離開機器的。一個「黑客」簡直和計算機化為一體,他瞭解計算機就像瞭解一個朋
友似的。
一些天文學工作者就是這樣看待我的。「克利夫,與其說他是個天文學家,倒不如說是個
擅長計算機的『黑客」』(搞計算機這一行的人當然有不同的看法:「克利夫不是什麼程序編製
人,倒是了不起的天文學家!」我在研究生院學到的東西使我把雙方都騙了。)
但是,常見的用法是,「黑客」是指那些闖入別人的的計算機的人。11982年,在一批學
生使用終端設備、調製解調器和長途電話線,闖入洛斯阿拉莫斯實驗所和哥倫比亞醫療中心的
計算機以後,計算機界的人們突然開始明白我們聯成網絡的系統是脆弱的。
每隔幾個月我就聽到一次關於別人的計算機系統被闖入的傳聞;通常這類事都發生在大學
裡,人們往往認為這是學生或青少年干的。一些聰明的高中學生有時會闖入有最高安全措施的
計算機中心。通常這是無害的,所以也不予追究,只當作是一個「黑客」的惡作劇。
電影《戰爭演習》真的可能發生嗎?有哪個少年「黑客」可能侵入五角大樓的一台計算機,
挑起∼場戰爭?
我不相信會有那種事,的確,在大學裡.在計算機上瞎弄一通是容易的,那裡沒有必要采
取安全措施。畢竟,大學裡連大樓都很少鎖門。在我的想像裡,軍月計算機的情況是完全不同
的——它們會像軍事基地一樣有嚴密的安全保衛。即使你真的闖進一個軍用計算機,要是以為
你就能發動一場戰爭了,那也是荒謬的。我想這些事情完全不會由計算機控制。
我們勞倫斯伯克利實驗所的計算機並不特別安全可靠,但是我們必須不讓外人接近計算機,
並且努力防止人們不正當地使用他們。我們並不擔心有人損害我們的計算機,而只是希望我們
的資助機構能源部不要干擾我們。如果他們要我們把計算機漆成綠色的,那我們就得定購油漆
刷子。
但是為了使訪問科學家們滿意,我們為這些客人設立了幾個計算機帳戶。任何人有了「客
人」帳戶名字和「客人」的口令,都能使用該系統解決他們的問題,只要他們使用的時間不超
過幾美元的計算時間。一個「黑客」很容易闖入這個帳戶——它是完全開放的。使用時間只限
一分鐘,這算不上是闖入。但是從這個帳戶,你可以觀察這個系統的各個方面,閱讀任何公開
的文件,並且看到誰在聯機。我們認為這為人們提供了方便,完全值得冒這個小小的安全風險。
我仔細考慮這種情形,總不相信會有一個「黑客」在我的系統內閒蕩。沒有人對粒子物理
學感興趣。如果有什麼人願意閱讀我們的科學家的論文,那他們大多數人是會高興的。這裡沒
有什麼特別的東西能引誘一個「黑客」——沒有時髦的超級計算機,沒有色情行業的秘密,沒
有保密的數據。的確,勞倫斯一伯克利實驗所最好的工作條件就是公開的學術氣氛。
在50英里以外,勞倫斯利弗莫爾實驗所做著保密工作。研究製造核彈和星球大戰計劃。現
在,那個實驗所可能是某個「黑客」要闖入的目標。但是利弗莫爾的計算機和外界沒有聯繫,
外界無法和它們接通。保護這些計算機的保密數據的辦法是與外界隔絕。
如果有什麼人的確闖入了我們的系統,他們能得到什麼呢?他們可以閱讀任何公開的文件。
我們的大多數科學家是這樣存儲他們的數據的,以便他們的合作者能夠閱讀。一些系統軟件也
是公開的。
雖然我們稱這種數據是公開的,但是外人也不應闖進來任意查閱。其中有些數據是屬於個
人所有的,或有版權的,就像我們的軟件庫和文字處理程序一樣。另外一些數據庫不是供每個
人使用的——如我們僱員的地址清單和關於進行中的工作的不完全的報告。儘管如此,這些數
據也算不上敏感材料,更遠遠不是保密材料。
不,我不是擔心有人作為客人進入我們的計算機,然後帶著什麼人的電話號碼離開。我真
正擔心的中心問題比這種情況要重大得多:一個陌生人能成為一個超級用戶嗎?
為了同時滿足一百個用戶的要求,計算機操作系統把硬件設備分開,很像一幢公寓把一座
樓分隔成許多套房間一樣。公寓的每套房屋之間互相無關,自成單元。一套房屋的住戶也許在
看電視,同時另一套房屋的住戶也許在打電話,第三套的住戶可能在冼盤子。公用設施服務——
電力,電話和水——由公寓綜合設施提供。每個居民都抱怨服務落後,房租昂貴。
在一台計算機裡,一個用戶可能在解一道數學題,另一個用戶可能在向多倫多發一封電子
郵件,而第三個用戶則可能在寫一封信。計算機的實用程序由系統軟件和操作系統提供。每個
用戶都抱怨軟件不可靠,文件編製模糊不清,而且費用過高。
公寓裡的隱密是用鎖和鑰匙控制的。一個居民如果沒有鑰匙就進不了另一套公寓房間,而
且(如果牆壁堅實),一個住戶的活動打擾不了另一個住戶。在計算機裡,確保用戶**的是cāo
作系統。沒有掌握正確的口令,你就進不了某人的領域,而且(如果操作系統運行良好),一個
用戶的程序不會干擾另一個用戶的程序。
但是公寓房間的牆壁決不是很堅實的,我的鄰居舉行晚會,喧鬧聲象雷鳴似的傳入我的臥
室。而我的計算機如果同時有100多人使用,它的速度還會放慢下來。所以,我們的公寓需要有
管理員,我們的計算機也要有系統管理人或超級用戶。
公寓管理員有萬能鑰匙,能進入任何房間。系統管理人根據一個特許帳戶能閱讀或修改計
算機上的任何程序或數據。特許用戶可以避開操作系統的保護,隨意使用計算機。他們需要這
種權力來維持系統軟件,調節操作系統的功能,同意人們使用這台計算機。(譬如指令計算機:
「嗨,給巴巴拉開一個帳戶。」)
特許用戶懂得要小心從事。如果他們只獲得閱讀文件的特許權,他們不可能造成很大破壞。
但是如果得到超級用戶許可證,你就可以改變該系統的任何部分——沒有任何保護措施防止超
級用戶的錯誤。
的確,超級用戶擁有極大的權力:它既可進行橫向控制,又可進行縱向控制。當實行日光
節約時間的時候,它可校正系統時鐘。是一套新的磁盤驅動系統嗎?它是唯一能夠把必要的軟件
插入這個計算機的系統。對特許帳戶——超級用戶、系統管理人來說,不同的操作系統有各種
不同的名字,但是這些帳戶必須永遠小心翼翼地防備局外人。
如果一個外界的黑客變成我們系統的特許帳戶,情況會是怎樣呢?首先,他可能增加新的用
戶帳戶。
一個擁有超級用戶特權的黑客大概會把計算機當作可由他任意擺佈的犧牲品。有了我們系
統的萬能鑰匙,他就能隨意關機,隨意使該系統變得不可靠。他可以閱讀、書寫或修改計算機
裡的任何信息。在他從這個擁有特權的高高在上的地位進行活動時,任何用戶的文件都躲不過
他的耳目。系統文件也將由他支配——在任何電子郵件還沒有發出之前,他都可以先閱讀。
他甚至能夠修改會計文件,把他自己的痕跡抹掉。
這時,關於銀河結構的講演正談到引力波問題,話語單調乏味。可是我突然恍然大悟,明
白我們的計算機發生了什麼情況。我一直等到提問題時間,提了一個象徵性的問題,然後就抓
起我的自行車,往山坡上騎去,前往勞倫斯伯克利實驗所。
準是有一個超級用戶「黑客」。某人闖入了我們的系統,找到了萬能鑰匙,使自己獲得特
權,成為一個超級用戶「黑客」。這個人是誰?是怎樣打進來的?從那裡來的?主要用意何在?
從加利福尼亞大學到勞倫斯—伯克利實驗所只有四分之一英里的路程,但是迴旋加速器路
坡度很陡,騎自行車走完這段路需要15分鐘。這輛舊的10速自行車根本沒有一個低速檔,因此,
當我騎到最後幾百英尺時,我的膝關節感到有些酸痛。我們的計算機中心夾在三座粒子加速器
中間:一座是歐內斯特-勞倫斯首次提純了一毫克的可裂變鈾的184英吋迴旋加速器;一座是發
現了反質子的高能質子同步穩相加速器;以及6個新元素的誕生地——海拉克加速器(重離子直
線加速器)。
今天,這些加速器都過時了——它們的兆電子伏能量早就被千兆電子伏的粒子對撞機超過
了。它們再也不會獲得諾貝爾獎了,但是物理學家們和研究生們仍然要等上半年的時間才能得
到使用加速器she束的時間。要是研究奇異的核粒子,探索象夸克—膠子等離子體或介子冷凝物
這些名字古怪的新形式物質,我們的加速器不管怎麼說都是很不錯的。當物理學家不使用這些
加速器時.這些加速器的she束就被用來從事生物醫學方面的研究,其中包括治療癌症。
在第二次世界大戰期間曼哈頓工程(美國的原子彈試制工程的代號)進入到最緊張階段的ri
子裡,勞倫斯實驗所的迴旋加速器是測量核反應截面和鈾原子截面的唯一手段。自然,這個實
驗所籠罩著一層神秘的氣氛,它成了建造原子彈工廠的典範。
50年代,勞倫斯—伯克利實驗所的研究工作一直是保密的,直到愛德華-泰勒組建了勞倫
斯一利弗莫爾實驗所為止。從利弗莫爾實驗所到伯克利實驗所乘汽車要走一個小時。所有的保
密工作都劃歸利弗莫爾實驗所負責,而不保密的科研工作仍由伯克利實驗所進行。
也許是故意造成混亂,兩個實驗所的名字都是以加利福尼亞大學第一位獲得諾貝爾獎的人
的名字命名的。這兩個實驗所都是研究原子物理學的中心.又都是由原子能委員會的下屬機構
——能源部——提供經費的。它們的相似之處大概到此為止。
我到伯克利實驗所去工作不需要得到任何安全許可——那裡沒有任何保密研究工作,眼下
也不會簽訂任何軍事合同。另一方面,利弗莫爾實驗所卻是設計核彈和星球大戰用的激光束的
中心。這兒根本不是一個留著長頭髮的前嬉皮士的地方。我所在的伯克利實驗所,靠著微薄的
科學補助和大學撥給的靠不住的贊助經費勉強維持,而利弗莫爾實驗所卻不斷擴大規模。自從
泰勒設計出氫彈以來,利弗莫爾實驗所的保密研究工作從來沒有出現過經費不足現象。
伯克利實驗所從此再也沒有大宗軍事合同了。然而開放也得到了回報。我們作為純粹的科
學家被鼓勵去研究任何奇怪的現象,而且可以隨時發表我們的研究成果。我們的加速器同設在
瑞士的歐洲原子核研究委員會的龐然大物或設在伊利諾伊州的費米實驗所相比,可能是微不足
道的,然而,它們卻編出大量數據,而且我們還有一些相當不錯的計算機分析這些數據。事實
上,值得當地人自豪的是,一些物理學家記錄了別的地方的加速器上取得的數據,然後再到勞
倫斯—伯克利實驗所來,用我們的計算機分析他們取得的結果。
從數字分解能力來說,利弗莫爾的計算機使我們的計算機相形見絀。他們經常購買最大的、
運算速度最快的和最昂貴的克雷計算機。他們需要用這些計算機計算出在一次熱核爆炸的最初
幾毫微秒中發生的事情。
由於利弗莫爾實驗所的研究是保密的,因此他們的計算機大部分是與外界隔絕的。當然,
他們也有一些不保密的系統,做—些普通的科研工作。但是對於它們的保密工作,那可不是給
普通人看的。這些保密的計算機與外界沒有任何聯繫。
從外部向利弗莫爾輸人數據根本是不可能的。一個用利弗奠爾的保密計算機設計核彈引爆
裝置的人.必須親自去實驗室.帶上錄在磁帶上的數據。他不能使用分佈在全國各地的數十個
網絡,而且也不能從家裡同實驗所的計算機網絡聯機,以便瞭解他的程序效果如何。由於利弗
莫爾使用的計算機常常是第一批出廠的產品,因此他們常常得自己編製操作系統程序,這樣便
構成了一種奇妙的「軟件生態學」,這種現象在他們實驗所以外是從未見到過的。這就是生活
在一個保密的天地中要忍受的不便。
雖然我們的計算機沒有象利弗莫爾實驗所的計算機那樣大的分解數字的能力,但是它們也
不是等閒之輩。我們的「瓦克斯」計算機運算速度很快,使用簡便,受到物理學家們的歡迎。
由於我們購買了數字設備公司的vms操作系統,並從大學裡搞來了尤尼克斯系統(unix),因此我
們就沒有必要編製自己的操作系統了。作為一個開放型實驗室,我們的計算機可以和任何地方
的計算機聯網,而且我們支持世界各地科學家的工作。每當午夜出現問題時,我只消從家裡撥
通勞倫斯—伯克利實驗所的計算機就可以解決了,既然打一個電話就可以解決問題了,當然也
就無需騎自行車到實驗所去。
但是這一次我還是去了,蹬著自行車去上班了,一路上都在疑惑覺得好像某個惡作劇的黑
客進入了我們的系統。這恰恰可以解釋我遇到的一些會計上的問題。如果外界的什麼人撬開了
我們的「尤尼克斯」操作系統的鎖,竊取了超級用戶特權的話,他就有能力有選擇地抹掉某些
會計記錄。更糟糕的是,他可以利用我們的網絡聯繫去跟別的計算機搗亂。
我把自行車停放在一個角落裡,一路小跑奔到這間亂糟糟的屋裡。這時已經五點多了,一
般人都在家裡。我怎麼能斷定是不是有黑客潛入我們系統惡作劇呢?這個麼!我們只消給這個可
疑的帳戶發一份電子信,就說:「喂,你是真的喬-斯文特克嗎?」。或者我們可以取消喬-斯
文特克的帳戶資格,然後再看看我們遇到的麻煩是否就此結束了。
當我在辦公室桌上發現了一張便條時,我腦子裡有關這個黑客的種種猜測都暫時放在一邊
了。這張便條寫道:天文小組需要知道,如果他們放鬆對反光鏡規格的要求,望遠鏡看到的圖
象質量會降到什麼程度。這就意味著要用一個晚上製作模型,這種試驗都是在計算機內做的,
從編製來說,我不再為天文小組工作了,可是「血濃於水」呀(「血濃於水」是丘吉爾在第二次
世界大戰期間演說中的詞。這裡的意思是說他本來是搞天文的,雖然調去幹計算機,但同天文
小組還是有感情的),到了午夜,我已為他們繪製好了曲線圖
次日上午,我迫不急待地向戴夫-克利夫蘭解釋了我疑心有「黑客」搗亂的想法。「我願
意和你打賭,從甜點心到炸麵包圈,輸什麼都行,肯定有一個黑客搗亂。」
戴夫的身子靠在椅背上,閉上了雙眼,低聲喃喃地說:「是呀,當然要甜點心了。」
差不多一眼就可以看出,他是個喜歡胡思亂想的人。他負責的是一台尤尼克斯系統,他對
系統的管理很懶散。自從他用尤尼克斯系統同vms系統爭奪科學家用戶以來,他就從來沒有把他
的系統的保險栓擰緊過。他認為要是那樣做,物理學家們會反對,把他們在這裡的業務轉移到
別處去。他採取了信任自己用戶的做法,他管理的是一個公開的系統,他把全副精力都用於改
善他們的軟件上,而不是去編製安全鎖。
有人辜負了他的信任嗎?
馬爾夫-阿奇利是我的新上司。他少言寡語,但很敏感。馬爾夫對我們這個組管得很鬆,
可是不知怎麼回事,這個組卻能使這些計算機保持正常運轉。馬爾夫和我們科的科長羅伊-克
思形成了鮮明的對比。羅伊今年55歲,看上去和羅德尼.丹吉菲爾德一樣很像一位大學教授。
他帶著勞倫斯實驗所那種了不起的氣派從事物理學的研究,讓質子和反質子在一起蹦跳撞擊,
觀察這些對撞後的拋棄物質。
羅伊對待他的學生和下屬很像對待他的亞原子粒子一樣:讓他們循規蹈矩,給他們打氣鼓
勁,然後讓他們去攻擊一些固定不變的目標。他的研究工作要求分解大量數字,因為每次加速
器開機。他的實驗室便產生百萬次的運轉事件,多年來不斷拖延和提出種種推托的借口使他對
計算機專業灰心了。因此當我敲他的房門時,我肯定我們會談論相對論xing物理學,而不會談計
算機問題。
這時,戴夫和我可能猜出羅伊對我們的問題的反應了。「活見鬼了,你們為什麼把門戶大
敞開?」
我們的上司的反應也許是可以預料得到的,但是我們應該如何反應呢?戴夫首先想到的是取
消這個有嫌疑的帳戶,不再理睬它就算了。我認為我們應當向闖入我們系統的任何人發一個電
話,臭罵他一頓,要他滾開,否則我們就要給他的父母打電話了。如果說有人偷偷闖入我們的
系統,不管怎麼說,他一定是山下面學校裡的學生。
但是我們卻不能肯定有人偷偷地闖入了我們的系統。要是那樣,就可能說明我們的計算中
存在某些問題——有人知道了系統管理人員的口令,同我們的機器聯了機,成了一個新帳戶,
並且竄改了會計系統。但是如果他們已經可以使用系統管理人員的帳戶,他們為什麼還要用一
個新的帳戶呢。
我們的上司從來都不想聽壞消息。但是我們盡量克制住自己。我們沒有明確的證據說明的
確有一個黑客,我只有一些間接的線索,是從一些會計上的小小錯誤中推斷出來的。即使真的
有人聞進我們的系統,我們也不知道他打入的範圍有多大,也不知道這是誰幹的。羅伊-克思
對我們大發脾氣:「你們為什麼要浪費我的時間?你們什麼事情也不知道,而且你們一點兒證據
也沒有。回去把情況弄清楚,我要看證據。」
那麼怎麼才能把黑客挖出來呢?我想事情很簡單:只需要盯住觀察使用斯文特克帳戶的任何
人並設法追蹤他們是怎樣聯機的就行了。
我在星期四那天一整天都在觀察向我們的計算機登記聯機的人。我編製了一個程序,每當
有人同尤尼克斯系統計算機聯網時,我的終端機便發出呼叫聲。我無法看到每個用戶在幹什麼,
但是我可以看到他們的名字。每隔幾分鐘,我的終端機便發出呼叫聲,我便去看看是誰登記使
用我們計算機。有幾位是朋友,有些是在撰寫研究論文的天文學家,也有的是在埋頭寫論文的
研究生。大多數帳戶都是陌生人,所以我不知道我怎樣才能判斷出哪一條連接線路可能是個黑
客。
星期四中午12點33分,斯文特克登記和我的計算機聯網了。我感到一陣抑制不住的興奮,
接著他在一分鐘後消失了,我又大失所望。他在什麼地方?他留給我的唯一的蛛絲馬跡是他的終
端機的標識符號:他使用的終端機接口是tt23。
有人坐在一台計算機終端後面,手指放在鍵盤上就同我們的實驗所連接上了。我的尤尼克
斯計算機顯示他用的接口地址為tt23。
很好,這是個開頭,我的問題是推算出哪條具體的線路與邏輯名字tt23相一致。
我們實驗所的終端機和撥入電話調製解調器的指定代碼都是「tt」,而網絡連接都以「nt」
為代碼出現。我推測這個傢伙要麼是我們實驗所裡的人,要麼就是通過一條和調製解調器相接
的電話線進入的。
有那麼幾秒鐘,我感覺到有人猶猶豫豫地進入我們的計算機進行試探。從理論上說,從計
算機順著這條線追查到闖入的人應當是可能的。這條連接線遙遠的那一端一定有個人。
要追蹤這條線得用半年的時間,不過我的第一步是追蹤在這座大樓以外的連接點。我疑心
有一個撥號調製解調器和某條電話線相連接,但是可以想像,這也許是實驗所裡的什麼人。多
年來,聯網的終端機遠遠超過5d0台,而只有保羅-默裡一個人在追蹤它們。幸運的是,我們本
國製造的硬件連接裝置有記錄證明比我們土造的會計軟件要好一些。
保羅是一個離群索居的硬件技師,他整天在密密麻麻的電話線當中埋頭工作。我發現他正
在一塊電子儀器板後面,把一個粒子探測器接到整個實驗所在用的「以太」計算機網絡系統上。
「以太」計算機網絡是同千百台小型計算機相連接的電子流水線。有幾英里長的桔黃色的以太
網電纜曲曲彎彎佈滿了我們的實驗室,而保羅對每一條電纜都一清二楚。
我去找他時他正在焊接一條線,他罵我把他嚇了一跳。他拒絕給我幫忙,後來當我證明我
有正當需要來找他瞭解情況時,他才答應給我幫忙。唉,活見鬼,硬件技師不懂得軟件問題,
而軟件操作人員對硬件又一竅不通。
我業餘擺弄無線電很多年,學會了焊接技術,因此保羅和我至少有一個共同之處.於是我
也拿起他的多餘的一把烙鐵。我焊了幾分鐘之後,他的臉色才稍微平和下來一點,斜著眼看了
我一下。他擺脫了這些「以太」計算機網絡電纜,領著我在勞倫斯一伯克利實驗所的通信交換
室轉了一圈。
在這間滿屋都是線路的房子裡,電話、內部聯絡機,無線電收音機和計算機都由一大堆亂
七八糟的電纜,線路和光纖以及配電板連結在一起。這個令人可疑的tt23接口進到這個房間裡
來,由一個輔助計算機將它轉接到一千台可能的終端機中的某一台上去。任何人撥號進入實驗
所將被隨意分派到一個尤尼克斯端口。下次我再發現可疑的人的話,我一定要跑到交換室去,
通過檢查交換計算機把連接切斷。要是他在我切斷之前就消失了的話,那就難辦了。而且即使
我真能做到了這一點,我也只是能指出進入我們實驗所的那根雙股線,距離找到「黑客」還差
遠著呢。
不過幸運的是,中午的這次聯網留下了一些蛛絲馬跡。保羅一向搜集有關有多少人使用過
這個交換室的統計材料。而且碰巧他又把上個月各次聯網的端口號碼都記錄下來了。由於我知
道斯文特克在tt23端口活動的時問,因此我們可以推測出他是從哪個端口進來的。打印的統計
數字表明:在12點33分時出現過l分鐘的1200波特的聯網活動。
呵,1200波特!這可非同小可。波特率是測量數據經過一條線路時的速度的。而1200波特的
意思是每秒1200個字符——一分鐘要打印幾頁文字。
通過電話線的撥號調製解調器以1200波特速度運行。在這裡,實驗所的每個工作人員都是
高速操作的:用9600波特或19200波特,只有通過調製解調器聯繫的人才讓他們的數據以1200
波特的速度慢慢泡蘑菇。撥號線路不用通報姓名而且使用方便,這對陌生人是極有吸引力的。
就這樣,一點一滴的線路開始湊在一起了。我不能證明我們系統中有一個「黑客」,但是確實
有人通過電話撥號接到我們實驗所來了,並且使用了斯文特克的帳戶。
然而,以1200波特速度聯網很難證明有一個「黑客」進入我們的系統中。這次不完全的追
蹤,特別是沒有超出我們大樓範圍之外的追蹤,絕不會使我們的上司相信發生了離奇古怪的事
情。我需要找到有一個關於有「黑客」的不容置疑的證據。但是怎麼樣才能找到呢?
羅伊-克思領我參觀過同高能質子同步穩相加速器連接在一起的高能粒子探測器。這些探
測器找到了大量的亞原於相互作用,而且9999%都可以用物理學定律加以說明解釋。花費時問
探索每一個粒子的蹤跡會使你得出結論,認為所有粒子都按已知的物理學規律運動,沒有什麼
可發現的了。否則的話,你可以把所有可以解釋的相互作用拋在一邊不管,而只去考慮那些不
大符合典型規則的相互作用。
高能物理學家的遠親天文學家們就是依據類似方針工作的。大部分恆星都是枯燥乏味的。
要有進步就得研究如類星體、脈衝量、引力鏡等稀奇古怪的現象,這些現象看來和我們從小到
大一直信而不疑的模式是不相符的。知道水星上的環形山的統計數字,你就會知道在太陽系的
早期,這顆行星是多麼經常遭到隕石的轟擊。但是研究一下那些被縱橫交錯的懸崖和山脊阻斷
的環形山,你就會瞭解這顆行星在最初的幾十億年中,隨著漸漸玲卻而收縮的情況。把原始數
據收集起來,撇開意料中的數據。剩下來的數據就會對你的理論提出挑戰。
好吧,讓我們用這種思維方式來觀察進入我們計算機的某個人吧。我在辦公桌上放上一台
終端機,另外還可以借用兩三台。假設我只觀察進入計算機中心的通信量。進入這個系統的線
路大約有500條。這些線路大都以9600波特的速度傳輸信息,換句話說就是每秒鐘150個字左右。
如果在同一時間使用一半線路,我必須每分鐘閱讀遠遠超過一萬頁的數據。就是這樣。我絕沒
有辦法在我的終端機上監控這樣龐大的通信量。
不過這些高速線路是勞倫斯伯克利實驗所的人用的。我們早就在追蹤和一條1200波特線路
相連的可疑的連接線了。這種連接線較少(我們沒有錢安裝太多打進來的電話線),而且這種電
話線傳送速度也比較慢。50條1200波特的線路,每分鐘可能打出100頁紙的數據,在我的終端機
熒屏上,這也太快,無法進行觀察。如果有50個人同時出現,我可能耳不暇接,無法觀察,但
是也許我能夠把他們所有相互關係都打印下來,等我空閒的時侯再來閱讀這一大堆材料。如果
找到一張有打印材料的紙,那會成為有人在附近遺巡的確鑿證據。要是我們找不到可疑的東西,
我們就可能把這整個項目丟下不管了。
我要把每個1200波特連接期間發生的每一件事情都記錄下來。這在技術上將是非常困難的
——由於我不知道這個「黑客」使用哪條線路,因此我必須監視48條線路。更叫人傷腦筋的是
監視我們自己人的來往通信構成道德上的問題。我們有權監視經過我們線路來往的信息嗎?
我的情人馬莎就要結束在法學院的學習了。我們在一起吃著意大利餡餅,一邊吃一邊談論
有人偷偷闖入我們的計算機會產生什麼影響。我當時很想知道我收聽輸入我的終端的通信會有
多太麻煩。
「嗯,這個嘛」,她咀嚼著一塊意大利式白奶酪,燙得直哈氣,後也說不清楚。「你又不是
代表政府,所以你無需搜查證。最壞不過也只是侵犯**而已。一個人撥通一台計算機,大概
沒有權利堅持這台計算機的主人不得查看他的通信。所以我看不出你為什麼不能這樣做。」
於是我就問心無愧地開始建造一個監視系統。我們共有50條1200波特的線路,而一個「黑
客」可能使用其中任何一條。我沒有專門用來記錄傳輸信息的設備。
但是要記錄一個「黑客」的活動有一個簡便易行的辦法。把尤尼克斯系統修改一下,以便
在任何時候,一旦一個可疑的人申請使用計算機時,這個系統就把所有鍵盤的活動記錄下來。
這是很吸引人的,因為我只要把幾條編碼線加在尤尼克斯「守護神」軟件上就可以了。
這些「守護神」軟件本身只是把從外界輸入的數據複製到操作系統中去的程序,是尤尼克
斯操作系統的耳目。(在古代希臘,「守護神」是低級的神靈,介於神和人之間,我的「守護神」
軟件介於象神一樣的操作系統和終端機與磁盤這個塵世之間。)
我可以像管道中的t型連結節一樣,把守護神軟件輸出的數據分成兩股,這樣黑客發來的通
信將同時分別輸入操作系統和打印機。使用軟件的解決辦法既簡單又漂亮。
戴夫-克利夫蘭說:「你自己冒險同『守護神』鬼混吧,只是要尊重他們的定時需要。」
韋恩也警告我說:「喂,你要是捅出了大漏子來,你肯定會把系統毀掉。那將使這個系統
變得一塌糊塗,你根本沒有辦法跟蹤將發生的一切。你只能等著,等到儀表盤上打印出『應急
核心態中斷』的字樣——到那時你可別來找我哭訴!」
戴夫插嘴說:「嘿,要是你這位黑客有點使用尤尼克斯系統的經驗,他必定會注意到這些
『守護神』軟件身上的變化。」
這番話說服了我,一個敏銳的系統使用人員是會注意到我們已改變了操作系統。一旦這位
黑客得知有人在監視他,他就會搞亂我們的數據庫,溜之大吉。我們的線路竊聽器必須是完全
發現不了的,甚至連那些權力極大的超級用戶也探測不出來才行。要暗中設下既無聲息又看不
到的監視器來捕捉「黑客」的活動。
也許只用磁帶把電話線通信的情況錄下來就能奏效,但是磁帶錄音機會使人感到不對頭,
不相配的部件太多了。我們還必須把磁帶重新倒回去,而且要等到「黑客」中斷聯繫後很久我
們才能夠觀察到鍵的活動。最後的問題是,我到哪裡去找那50台磁帶錄音機呢?
大概另外只有一個地方可以觀察我們來往的信息,這就是在調製解調器和計算機之間進行
觀察。調製解調器把電話聲調變成電子脈衝,以適合我們的計算機和它們操作系統中「守護神」
的要求。這些調製解調器的線看上去像是扁平的25股導線,在開關室的假地板下象蛇一樣曲曲
彎彎地鋪開。一台打印機或者個人計算機可以與這些線中的每一根線相連接.把通過的每一個
敲鍵活動都記錄下來。
部件不匹配嗎?是的,可以工作嗎?也許。
我們所需要的一切是50台電傳打字機、打印機和便攜式計算機。最初的幾台容易得到一隻
要向實驗所供應處領取就行。戴夫、韋恩和系統小組的其他人員雖把他們的便攜式終端機借給
我們,但是很不情願。到了星期五傍晚,我們已經和交換室的12台監控器連接上了。另外的三
四十台監控器要在實驗所人員都下班走光了之後才會騰出來。我進入一個又一個辦公室,把秘
書們辦公桌上的個人計算機都挪用過來。到星期一要吃苦頭了,但是道歉總比事先允許容易一
些。
地板上擺著40多台過時的老式電傳打字機和便攜式終端機,看上去真像是計算機工程師惡
夢中的景象。我就睡在它們中間,照看著這些打印機和計算機。每一台機器都在收集不同線路
上傳來的數據,一旦有人撥通我們的系統,我就會被計算機上發出的嗒嗒嗒的打字聲驚醒。每
隔半小時,其中就會有一台監控器上的紙或磁盤用完了,所以我必須不時上紙換磁盤。
星期六早晨,羅伊-克思把我叫醒,他問:「喂.你的黑客在哪裡?」
這時我仍在睡袋裡,身上一定發出一股山羊的氣味。我愚蠢地眨了眨眼晴,含糊不清地嘟
囔說看看那50卷就知道了。
他氣呼呼地說:「哼,在你開始擺弄這些打印出來的東西之前,你先把這些打印機還回去。
你像個瘋子似的在這兒到處亂跑,把人家工作用的設備一股腦兒都搜羅到這裡來,你已經惹得
12位天文學家大發雷霆了。工作做好了嗎?沒有,你以為這是什麼地方,是你個人的玩具箱嗎?」
我睡眼蒙隴把每一台打印機搬回去還給了各自的合法主人。前49台打印機打出來的記錄紙
上沒有使人感興趣的東西。第50台上拖著80英尺長的打印出來的數據。就在那無晚上,有人通
過操作系統中的一個漏洞偷偷地鑽進了我們的計算機。
一個「黑客」曾在我的系統裡閒逛了3小時,閱讀了他想閱讀的任何資料。我的1200波特的
「德賴特」打印機在80英尺長的單行計算機打字紙上保存了他的對話,但是他並不知道。這裡
保存了他發的每個指令、每個打印錯誤和計算機的每個應答。
這台打印機記錄了tym公司的通信信號,我不認識它,但我們收到的1200波特信號有一
些不是撥入的調製解調器信號。它們倒是來自tym通信公司的,這家公司把全世界的計算機
相互連接了起來。
存貝爾系統被拋棄之前,它壟斷了通信事業。美國電話電報公司主聯接紐約和芝加哥的唯
一線路。電話系統使用調製解調器就能處理數據,但是長途電話服務既費錢,噪音又大,因此
它不適用於計算機。到70年代末,其它一些公司插足進來,提供了數據電話之類的專門服務。
tym公司創立了一個網絡,把各大城市的計算機相互連接起來。
tym的設計簡單而精緻:建立一個數字通信中樞,任何人從當地打一個電話就可和中樞
連接,然後把數據送到這個網絡裡的任何計算機。tym將把許多用戶的數據壓縮成幾個數據
包,把這些包送往全國各地,可以節省費用。這個系統不受噪音的影響,每個用戶願意傳送多
快就可傳送多快。顧客節約了錢,因為他們從當地打一個電話就能和一個遙遠的汁算機聯繫。
為了滿足全國科學家的要求,勞倫斯—伯克利實驗所訂用了tym的系統。當在紐約卅i
斯托尼市魯克的研究人員想要和我們的計算機連接時,他可撥當地tym的號碼。一旦他的調
制解調器和tym連接上,他只要請求接通勞倫斯—伯克利實驗所就行了。然後他就可以像置
身於伯克利實驗所一樣工作了。
遠方的物理學家們喜歡這一服務,我們高興地發現他們把研究經費都花在我們的計算機上,
而不是在家裡用自己的計算機進行研究。
有人闖了進來,用的是tym的線路。由於tym把全國連接了起來,我們的黑客可能在
任何地方。
不過,目前強烈吸引我的不是這個黑客來自何方,而是他在這三小時裡幹了些什麼。我的
猜測是正確的:有人利用斯文特克的帳戶闖入我們的尤尼克斯計算機。
不只是闖入。這個黑客還是一個超級用戶。
這個黑客從我們系統的一個漏洞偷偷鑽了進來,成了一個超級用戶∼他甚至從來沒有向系
統管理人的帳戶登記註冊。他像一隻杜鵑鳥。
杜鵑總是在別的鳥窩裡下蛋。它是一種借窠育兒的寄生蟲:讓別的鳥飼養它的小杜鵑鳥。
小杜鵑鳥的生存依賴於其他鳥類的無知。
我們的神秘客人在我們的計算機裡放了一個象杜鵑蛋一樣的程序,讓這個系統把它孵出來,
給予它特權。
那天早晨,這個黑客寫了一個簡短程序在掠取特權。通常,尤尼克斯不會讓這樣的程序工
作,因為除了給予一個用戶的權利以外,這個系統決不會給予其他特權。但是通過一個特許帳
戶使用這個程序。他就會成為一個享有特權的帳戶。他的問題是要把這種特殊程序——杜鵑蛋
——偽裝起來,以使這個系統能把它孵出來。
每隔5分鐘,尤尼克斯系統執行它自己的名叫「atrun」的程序。而atrun還得安排其他工作,
並做例行的清除任務。這種程序以特權的方式工作,得到操作系統的全權和信任的支持。如果
用一個偽造的atrun程序代替,它就會在5分鐘內得到執行並享有本系統的全部特權。因此,atrun
放在這個系統的保護區內,只有系統管理人才能使用。除了系統管理人,誰也不准改動atrun。
這正是杜鵑的巢穴:在5分鐘裡,他將用他的蛋交換這個系統的atrun程序。
為了進行這種侵襲,他需要設法把他的杜鵑蛋程序移入受保護的系統巢穴裡。所以設置這
個操作系統屏障的具體目的就是為了防止這一點。普通的複製程序不能繞過這些屏障;你無法
發出指令讓系統「把我的程序複製在系統空間裡」。
但是有一個我們從來沒有注意到的未知的因素。一個ziyou職業的計算機程序編製人員裡查
德-斯托爾曼大聲疾呼;信息應當ziyou。他的軟件是免費提供的,設想得很出色,編寫得很jing
致。
在過去10年裡,斯托爾曼創造了一種效力很強的編輯程序稱為「gnu-emacs」。但是gnu遠
不只是一個文字編輯程序。它很容易按照你個人的愛好加以特製。其他程序可以在這個基礎上
編製。甚至可把它自己的信箱也編在裡面。自然,我們的物理學家們要求使用gnu程序;為了多
出售一些計算週期,我們欣然採用了這種程序。
只有一個問題:在這種軟件裡有一個故障。
根據它安裝在我們的尤尼克斯計算機裡的情況,gnu-emacs編輯程序讓你可以從你自己的通
信目錄裡提出一個郵遞文件,以異常的方式發給其他任何人。它並不檢查接受這封信的人是誰,
或甚至他們是否想要這個文件。它只是給這份文件重新取名,改變它的所有權標籤。這樣你就
把這個文件的所有權從你手裡轉移給我了。
把一份文件從你的地區送到我的地區不會有什麼問題。但是你最好不要把一個文件移入受保
護的系統地區:只有系統管理人才允許進入那裡。斯托爾曼的軟件最好能確保不會發生這種事。
gnu程序並不進行核查。它讓任何人都可以把文件移入保護系統空間。這個黑客知道這一點,
而我們卻不知道。
這個黑客利用gnu程序以他的特殊atrun文件換取了這個系統的合法atrun文件。5分鐘以
後,這個系統孵出了他的蛋,這樣他便控制了我的計算機。
他曾利用這一技術從計算機騙取了權力。他把他的偽造的程序安置在這個系統內。尤尼克
斯系統一執行他偽造的atrun程序,他就成了超級用戶。這整個操作取決於他是否能把一份文件
隨心所欲地移到任何地方去。
gnu是我們系統在安全方面的漏洞。一些流行的軟件的一個不引人注目部分存在一個難以捉
摸的故障。我們的系統程序編製人盲目地安裝了這個程序,我們從來沒有想過它可能破壞我們
整個系統的安全。
現在我明白了。我們的朋友一定是進入一個客戶的帳戶,利用gnu的漏洞取得了他的特權。
在我面前,頭幾英尺打印紙表明,這只杜鵑在準備巢穴下蛋,並且等待別的鳥把它孵出來。
以後70英尺打印紙表明,剛會飛的杜鵑在拍動翅膀試飛了。
作為超級用戶,他控制了我們的系統。他做的第一件事是抹去他的足跡:他把atrun的適當
複製品轉回到原來所在的地方。然後他把我們的全部用戶的電子郵件、書面新聞、閒話和情書
列入清單。他瞭解過去一個月的計算機改變、贈款建議和新的租用情況。他尋找系統管理人文
件裡的改變,他發現,我剛剛開始工作。他核查了我的薪金和個人簡歷。更加令人不安的是,
他認識到我是系統管理人,並且瞭解我的帳戶名稱。
為什麼會找到我頭上來呢?不管怎樣,從現在起,我最好使用不同的名字。
每隔10分鐘,這個黑客就發一次指令,詢問「誰」,以便把每個與這台計算機聯機的人都
列入清單。很明顯,他擔心有人可能看見他聯機,也許正在注視著他呢。後來他查找了操作系
統的任何變化——如果我像起初打算做的那樣,修改了『守護神」軟件,以記錄他的對話,他
一定會發現的。我覺得像是一個玩捉迷藏的孩子,尋找的人就在離他躲藏的地方幾英吋處走過。
在頭一個小時內,他編寫了一個程序來審閱每個人的郵件,查找有無提到他的活動。他尋
找「黑客」和「安全」的字樣。
一位科學家已開始實行一項程序,把週末的一項實驗的數據彙編起來。這項計劃用「收集」
這個名字,它每隔幾分鐘就搜集一次信息,並把它記錄下來送給一個文件存儲器。這個黑客看
見了這個程序,花了10分鐘設法瞭解它所做的一切,然後把它毀掉了。
喲!這裡有人在每隔幾分鐘往後面察看一次,查看周圍是否有什麼人。他破壞了他認為可能
是監視他的任何工作。他拆看我的郵件,查看是否有什麼人寫了關於黑客的事。韋恩是對的:
如果你站在明處.他會知道你在注視他。從現在起,我必須讓人難以捉摸,不露行跡。
這個黑客不往後看時,他是在閱讀文件。他通過研究幾位科學家的指令文件和手稿,發現
了進入其他實驗所計算機的道路。每天晚上,我們的計算機自動地呼叫另外20台計算機,以互
換郵件和網絡新聞。當這個黑客看了這些電話號碼以後,他瞭解了20個新的目標。
下面是來自一個工程師的郵遞文件:
「嗨,埃德爾
我將在今後幾個星期去度假。如果你需要使用我的什麼數據,只要請求跟瓦克斯計算機上
我的帳戶聯繫就行了。帳戶的名字是威爾遜,口令是馬裡安(這是我妻子的名字)。有趣!」
這位黑客感到有趣,即使埃德爾不覺得有趣。他通過我們本地區網絡與那個瓦克斯聯繫,
他登記使用威爾遜的帳戶,毫未遇到問題。威爾遜不會注意到這個黑客讀他的文件,而且很可
能也不在乎。這些文件中有數字數據,除了對別的核物理學家以外,對任何人都沒有什麼意義。
我們這位不速之客知道我們實驗所內部網絡的情況。我們的12台大型計算機同l00台使用電
磁波網絡、串行線等的實驗所計算機相連接。當物理學家們想要把迴旋加速器使用的一台計算
機的數據輸入我們的大型計算機時,他們將使用任何端口、任何線路、任何網絡。幾年來,技
術人員在實驗所安裝了一個電纜網絡,把實驗所的大多數計算機同似乎可以工作的一切裝置相
互連接起來。這個局部區域網絡伸展到每個辦公室,把個人計算機、麥金托什計算機和終端機
與我們的主機連接起來。
這些形成網絡的計算機根據安排往往是相互依賴的。如果你批准了那一台計算機,那麼你
也等於批准了這台計算機。這樣可以節省一點時間:人們在使用幾台計算機時,不需要發出一
個以上的口令。
黑客利用了這種依賴關係進入了6台計算機。他作為我們的尤尼克斯主計算機的超級用戶,
用別人的帳戶名字掩護自己。然後他只要敲敲網絡內另一台計算機的大門,就被讓進去,甚至
連口令都不用說。我們這個客人不可能知道這些系統是用來做什麼的;可是他在網絡內摸索著
到處試探,尋找進入未探索過的計算機的連接線。
到這次對話終止時,打印機的墨帶用完了油墨。用一支鉛筆在紙上輕輕擦一下,我就能看
出打印鍵頭留下的印記:「黑客」已經複印了我們的口令文件,然後就中止聯機了。
一個吉他的低音曲調轉移了我對「黑客」蹤跡的注意。
「感激的死者」樂團當時正在伯克利希臘劇場露天演出,劇場在山下離實驗所僅百碼。山
上的群眾坐在曠野裡,居高臨下歡賞這場音樂會,警察阻攔不了,於是我也溜到那裡去了。
星期一上午是我擔任這個工作的第二周。我是個很不自在的計算機操作人員:周圍是些勞
累過度的專家,然而我卻不知道我應當做什麼。與此同時,也會出現一些有趣的事,我最好還
是把追蹤黑客的計劃完成。
象物理實驗室裡的一個新手一樣,我在一本記事簿裡寫下了週末活動的情況。這倒不是我
打算使用這本記事簿:這是學習我的麥金托什計算機上一台文字處理機的機會。天文學家有句
經驗之談;如果你不把事情寫下來,這件事情就沒有發生。我把記下的結果留給下一個班組,
希望誰也不會注意到我頭天晚上在機房睡覺。
上司一到辦公室,立即要見我。
我以為他可能對我佔用了所有那些終端機大發雷霆。也許管理制度本來就鬆弛,但是計算
機操作人員按理不能不跟任何人打招呼就借來大堆計算機設備。
可是羅伊連談都沒有談終端的事。他想要知道這個黑客的情況。
「他是什麼時候露面的?」
「星期日清晨5點,呆了三小時。」
「擦掉了什麼文件嗎?」
「毀掉了一個他以為是監視他的程序。」
「我們有危險嗎?」
「他是超級用戶,他能把我們的文件全部抹掉。」
「我們能制止他進來嗎?」
「大概可以。我們知道這個漏洞,這是一個快速插入碼。」
「你認為這能制止他嗎!」
我能明白他的思路是什麼。羅伊並不關心把門關緊。他知道我們很容易撤銷被盜用的斯文
特克的帳戶。既然我們弄明白了,修補gnu—emacs的漏洞並不困難:只要加上幾行代碼檢查那
個目標目錄就行了。
我們是該把門關緊呢,還是讓它開著?對付的辦法顯然是歇業。我們知道這個黑客是怎樣進
入我們的系統的,也知道怎樣能把他踢出去。
但是還有什麼別的問題嗎?我們的神秘客人還給我們留下什麼別的「禮物」嗎?他接觸了其
他多少帳戶?他還闖入了其他什麼計算機?
還有叫人擔憂之處。從打印輸出的記錄紙上可以看出,這個黑客是個有能力的系統程序編
制人,能夠利用一些我們以前從未發現過的不顯眼的故障。他還干了別的什麼事呢?
如果你是超級用戶,你能修改該系統內的任何文件。難道這個黑客為了打開一個後門入口
而修改了一個系統程序嗎?他是否修補了我們的系統,以識別一個不可思議的口令呢?
他有沒有偷偷放進一個計算機病毒呢?在家用計算機上,病毒是通過在其他軟件內自我複製
而傳播的。當你把受感染的軟件交給別人時,病毒就在其他軟件裡複製,從一個磁盤傳插到另
一個磁盤。
如果這種病毒是良性的,它就難以發現,而且很可能不會造成很大損害。但是製造惡性病
毒是容易的,這些病毒自我複製,然後就把數據文件抹掉了。製造一種病毒,讓它潛伏幾個月,
然後在將來某一天突然爆發起來.這同樣也是容易的。
病毒的陰影經常困擾著程序編製人員,使他們一想起病毒就會毛骨悚然。
這個黑客作為一個超級用戶,能以一種幾乎不可消除的方式影響我們的系統。如果他放入
病毒,那麼這個病毒可在我們的系統軟件裡複製,並且隱藏在計算機的不顯眼的地方。他在一
個接一個的程序裡自我複製,我們為抹去它所做的努力等於白費。
在家用計算機裡,你可以從頭開始重建操作系統,與此不同,我們是廣泛修改我們的操作
系統。我們不能去找生產廠家,說:「給我們一套原裝的操作系統吧。」一旦感染了病毒,我
們只能用後備磁帶重建我們的系統。如果他在6個月前就放進了病毒,我們的後備磁帶也會被感
染了。
也許,他放置了一顆「邏輯炸彈」——一種預定在將來某個時候爆破的程序。也許這個入
侵者只是偷走了我們的文件,毀掉了幾項作業,破壞了我們的會計制度。但是要是他干了更壞
得多的事情,我們怎麼能知道呢?有一個星期,我們的計算機是向這個黑客開放的。我們能證明
他投有竄改我們的數據庫嗎?
我們怎麼能再信任我們的程序和數據呢?
我們不能信任。設法把他趕出去的辦法行不通,因為他會找到另一條道路進來。我們需要
弄清他幹了什麼事,以及他正在幹什麼。
尤其是我們需要知道誰在這條線路的另一端。
我對羅伊說:「這一定是伯克利校園裡的某個學生干的。他們是尤尼克斯計算機奇才,他
們把我們看做是新手。」
羅伊坐在椅子裡往後靠。他說:「我不願說得太肯定。伯克利的人可以更容易地撥通電話,
進入我們的系統,既然這樣,他們為什麼要通過電信公司(tym)系統進來呢?」
我說:「也許電信公司系統只是一個掩護。一個隱身處。如果他通過電話線直接撥到這個
實驗所,我們就會追蹤他。但是現在,我們必須既追蹤電信公司系統,又追蹤打來的電話。」
我的揮手示意沒有說服這位上司。也許根據他的科學經驗,或者也許作為表示懷疑的一種
手法,羅伊顯得不抱成見:在把他找出來以前,不要說他是個學生。的確,週末的打印材料表
明,他是個優秀的程序編製人。但是我們可能要監視一切地方的一切能幹的計算機操作人員。
跟蹤這個傢伙意味著跟蹤電話線。找到確鑿證據的代價就是艱苦的工作。
面對神秘的客人的蹤跡,羅伊只看到腳印,而我看見了這個闖入者。
羅伊決定不下判斷。「讓我們今天把所有網絡聯繫都關閉。明天上午,我去和實驗所所長
談談,看看怎麼辦。」拖一拖也可以,但是遲早我們必須開始跟蹤,或把這個傢伙關在外面。
難道我想要在這個城市裡跟蹤什麼人嗎?那樣我就無法從事科學計算了。這件事和天文學或
物理學毫無關係。這件事聽起來就像是「警察追強盜」,或者說是一場捉迷藏遊戲。
不過,有利的方面是,我也許可以瞭解如何注意電話和網絡情況。最有意思的是,想像在
我們衝入一個傢伙的宿舍,大喊「不許動!放下鍵盤」時,那小子臉上的模樣。
星期二下午,羅伊打來電話。「所長說:『這是電子恐怖活動。要用你所需要的一切手段
抓住這個壞蛋。需要用多久就用多久。如果有必要,就花上三周時間,把這個壞蛋抓獲。』」
如果我想要追獲這個黑客,管理方面支持我。
我騎自行車回家,考慮誘捕這個狡猾的黑客的計劃。不過在我離家越來越近的時候,我的
思想就轉到吃飯上來了。得到別人的理解是多麼美好啊。
馬莎.馬修斯和我到現在已同居幾年了,交朋友也差不多lo年了。我們互相非常瞭解,以
致很難記得我認識她以前的事了。
老朋友們都搖搖頭不相信。他們從來沒有看見我和一個女人一起呆過那麼長時間。我總是
愛上一個,在一起過上幾年,然後我們開始彼此厭倦,各自走路。我和幾個以前的情侶仍然是
好朋友,但是浪漫生活似乎從來沒有持久過。我總是冷嘲熱諷,好挖苦人,使自己不敢和任何
人太親近。
但是和馬莎的共同生活卻令人感到不同。隨著時間的推遲,一個接一個的屏障慢慢地倒塌
了。她總是通過商談消睬我們的分岐,要求瞭解我鬧情緒和發脾氣的原因,要求我們考慮怎麼
能相處得更好。有時這是不可忍受的一一在我惱火的時候.我討厭談話一一但是通常這似乎是
起作用的。
我發現自己在摸索「築巢」本能。這個美好的下午是在房子裡修修補補度過的,給一個開
關換了電線.安上一些燈泡,或焊接一扇彩色玻璃窗。我們度過了許多安靜的夜晚,縫衣服,
或讀書,或玩摸物遊戲。我開始感到
結婚嗎?誰結婚,我嗎?不,當然不。結婚使人愚蠢,是普通人的一個羅網。你跟一個人結
了婚,他們就預計你會永遠保持原樣,決不會改變,決不會有什麼創新。會發生爭吵,而你又
不能離開,你會每天晚上、每天早晨都厭倦這個人。結婚是限制人的,沉悶的,不自然的,老
一套的。
同居卻不一樣。我們雙方都是ziyou的。每一天我們可以ziyou地選擇是否在一起共度。如果
這種關係對我們不再有益,我們哪一個都可以離開。這樣更好一些.馬莎似乎感到滿足。
嗨,這樣好。
我不知道,如果我以後幾周住在工作單位.她是否還會高興。
要我用三周時間抓住一個黑客。這該有多長時間呢?也許用兩三天找出他的蹤跡,再花幾天
在網絡裡跟蹤他,然後把他抓起來。很可能還需要警察合作,這樣又得增加一兩天。我們可能
在兩周內結束這項工作,然後我將回去管理一台計算機,也許兼做一點天文方面的工作。
我們需要布下天羅地網,好把這個黑客抓住,但是這個網也要留下一定的孔洞,讓我們的
科學家通過。我必須在這個黑客一打來電話就立即發現他,並且要求通信公司系統的技術人員
跟蹤這個電話。
發現這個黑客是容易的:我只要守在辦公室裡,在兩台終端設備旁邊「紮營」就行了。一
個終端是工作的,另一個監視這個系統。每次有人登記與計算機聯機,兩聲嘟嘟的信號聲會告
訴我核查這個新用戶。一個陌生人一出現,我會馬上跑到交換台去看看他們在做什麼。
從理論上說,這是確保安全的,但是實際上這是不可能的。在1000個用戶中,我知道的大
約有20個,其餘980個怎麼辦呢?嗯,我必須核查每一個用戶。所以,每隔兩分鐘,我要走下大
廳,覺得我抓住了某個人。如果我回家,我就收不到信號,所以我不管馬
撒,就睡在辦公桌旁了。
地毯的氣味就像是城區公共汽車上的座位,每當終端設備發出嘟嘟聲時,我就坐起來,於
是腦袋便碰到辦公桌的一個抽屜底。