2009年12月,在位于伊朗中部沙漠的地下核工廠裡,工程師們發現這裡的離心機正在一台台地出現斷裂故障。他們無論如何都找不到原因。
所謂的離心機,是制造核武器過程中非常關鍵的一步。在天然鈾礦石中,絕大部分鈾都是以鈾238的形式存在的,鈾235的比例隻有0.7%,而後者正是制造原子彈所需要的材料。是以,制造核武器的第一步就是把鈾235從鈾238中分離出來,得到純度更高的鈾235。當鈾235的豐度達到3%-5%的水準時,就可以作為核電站的燃料使用了。而制造原子彈則需要豐度達到90%以上的鈾235,也就是武器級濃縮鈾。是以說,建造核電站和制造核武器的能力完全是兩個概念。
對鈾235進行提純的一個方法就是使用離心機。因為鈾238比鈾235稍微重一點點,是以把它們放進離心機高速旋轉時,就可以把這兩種材料分開了。
這個原理說起來很簡單,但實際操作起來比登天還要難。這也是為什麼明明原子彈的構造和原理已經公開了幾十年,卻仍然隻有那麼幾個國家能夠造出原子彈。
為了對鈾235進行提純,首先要把鈾礦石通過化學反應變成六氟化鈾,這是一種能腐蝕絕大多數金屬的劇毒物質,同時還會和空氣中的水發生劇烈的化學反應。光是安全地生産和儲存這種物質,就不是每個國家都能做到的。
接下來,氣态的六氟化鈾會被導入到離心機裡,然後離心機以每分鐘上萬圈的速度進行旋轉,産生上千倍于地球重力的離心力。就算是如此大的力量,也隻能讓離心機中間區域的鈾235含量稍微提高那麼一點點而已。接下來這些中間區域的氣體會被抽到第二台離心機裡再次進行旋轉,讓鈾235點含量再提高一點點。在生産核原料的工廠裡,人們需要把幾千個離心機串聯在一起,不停歇地運作幾個月時間才能得到一點點武器級的鈾235。
這種用來提純鈾235的離心機當然也不是随便哪個國家都能制造的。制造離心機的材料需要考慮六氟化鈾的腐蝕性,以及在每分鐘數萬圈轉速下各個部件的穩定性和摩擦力。處于高溫狀态時,離心機碳纖維的構件會收縮,而金屬部件則會膨脹,這些都需要特殊的設計來處理。
伊朗在1990年代獲得了離心機的制造技術。2006年,伊朗在納坦茲的地下核工廠裡安裝一個了由164台離心機組成的陣列。在國際社會的重重制裁壓力下,伊朗依然在幾年時間裡把離心機陣列數量擴充到了18個,離心機總數量達到了2952台。在運作了幾年之後,外界普遍認為伊朗已經得到了3%以上豐度的鈾235。
納坦茲地下核工廠裡的離心機陣列
然而,就在2009年12月,奇怪的事情發生了。在這個被鐵絲網和防空陣地層層保衛起來的地下核工廠裡,離心機突然開始大批量地發生無法修複的故障。一開始是幾十台,然後是幾百台。沒有人知道為什麼。
***
2010年7月,一家白俄羅斯的軟體公司在一名客戶的電腦裡發現了一種新的軟體病毒。随後,卡巴斯基實驗室、賽門鐵克等防毒軟體公司對這個新病毒的代碼進行了研究。按照慣例,他們給這款病毒起了個名字叫做震網(stuxnet)。
這個病毒讓防毒軟體公司的研究員感到非常奇怪。首先,它的檔案大小是普通病毒的20倍,代碼極其複雜而又嚴謹。普通的病毒代碼裡都會有這樣或那樣的bug,而這款來自白俄羅斯的病毒代碼裡幾乎一個錯誤都沒有。
其次,這款病毒很罕見地利用了多個零日漏洞。所謂的零日漏洞,指的是某個軟體中連開發者都還不知道的漏洞。利用這些漏洞進行攻擊可以確定獲得成功。對于黑客來說,一個零日漏洞可以在黑市上可以賣到幾萬甚至幾十萬美元的高價。而這個震網病毒非常奢侈地在代碼中使用了四個不同的零日漏洞。顯然作者認為這款病毒能為他所帶來的收益要遠高于幾十萬美元。
第三,這款病毒雖然感染了很多台電腦,但卻沒有做出實質性的攻擊。當這個病毒感染一台新的電腦後,它都會自動檢測電腦所處的網絡中是否存在一款特定版本的由西門子開發的工業控制軟體。如果沒有檢測到這個版本的軟體,病毒就自動進入休眠狀态。大多數黑客在編寫病毒時,總是希望病毒能感染和攻擊的電腦越多越好。而這款病毒卻反其道而行之,對攻擊目标十分挑剔。在衆多的判斷條件中,隻要有一條不滿足,就不會發起攻擊。
防毒軟體公司的研究員統計了這款病毒出現的地點和數量。他們發現伊朗是被感染最多的地方,這個病毒毫無疑問是以這裡為起點擴散到其他地方去的。他們推測這個病毒的任務是攻擊位于伊朗的一座安裝了特定西門子工業控制軟體的工廠。根據這些條件進行經過搜尋後,所有的結果都指向了同一個地方:
伊朗在納坦茲的地下核工廠。
那麼事情已經很清楚了,有人編寫了一個非常精巧的病毒,然後把它植入了伊朗核工廠的電腦系統中,用來破壞這裡的核濃縮設施。
也許有很多天才黑客都能夠寫出像stuxnet一樣複雜的病毒,但他們不可能有核濃縮設施用來測試。隻有政府才有資源在真實的核工廠環境中對病毒進行測試。
那麼,哪國政府會既能力、又有動機使用病毒去破壞伊朗核工廠呢?
同時符合這兩個條件的國家并不多。
***
中東地區阿拉伯國家的總面積大約是480萬平方公裡,人口有兩億之衆。面積隻有2萬平方公裡的以色列就像是在阿拉伯國家與大海之間嵌入的一枚狹長的楔子。這個迷你國家的面積隻有阿拉伯國家的0.5%,人口隻有不到5%。
幾乎每個阿拉伯國家的上司人都曾經揚言要把以色列人趕進大海裡。他們也确實付諸行動了。
以色列在1948年宣布建國幾個小時後,周邊的阿拉伯國家便同時向其宣戰。在随後持續幾十年的沖突中,人口占據絕對劣勢的以色列卻打赢了每一場戰争,在阿拉伯國家的包圍中頑強地生存了下來。
阿拉伯國家的上司人逐漸意識到,以色列雖然地小人少,卻有着極其強大的動員能力。與美國的特殊關系使得它總是能夠得到各種各樣的物質支援。一次又一次的事實證明,阿拉伯國家是無法在戰場上戰勝以色列的——至少在他們擁有核武器之前是不行的。
第一個嘗試研制核武器的阿拉伯國家是薩達姆時期的伊拉克。1976年,伊拉克政府從法國人手裡買來了全套核反應堆技術,并在距離巴格達20公裡的地方建設了一個核電站。1980年底,以色列政府認為薩達姆借着核電站的幌子在偷偷地開發核武器。像大多數時候一樣,以色列人決定先下手為強。1981年6月7日,以色列派出8架F16戰鬥機,以不足50米高度的超低空飛行穿越了約旦和沙特的領空,對伊拉克的核電站進行了偷襲。
整個攻擊過程隻持續了80秒。8架F16戰鬥機一共投下了16顆炸彈,其中有14顆準确地擊中了目标。特制的延時引信讓炸彈能夠在擊穿核電站的混凝土頂蓋之後再發生爆炸。核電站中的設施被徹底摧毀,伊拉克防空部隊沒能來得及做出任何反應。薩達姆随後處決了負責這一區域防空的所有少校級以上的軍官。
2007年3月,摩薩德特工趁着叙利亞原子能委員會主席在歐洲出差的機會潛入了他的酒店房間,竊取了他電腦裡的資訊。通過這次行動,摩薩德得知叙利亞在在借着建造核電站的機會偷偷研制核武器。六個月後,在2007年9月5日深夜,以色列空軍再次出動,炸毀了叙利亞境内的一處核反應堆。從後面的結果來看,這次襲擊讓叙利亞徹底放棄了發展核武器的打算。
下一個試圖自主研制核武器的中東國家是伊朗。然而,有兩個原因讓以色列無法像之前空襲伊拉克和叙利亞的核反應堆那樣來摧毀伊朗的核工廠。
首先,伊朗距離以色列要遠得多。以色列空軍的戰機必須要經過空中加油才能進行如此長距離的空襲任務。而在他國領空内進行空中加油會大大增加行動暴露的可能性。
其次,伊朗的核設施完全是位于地下的。以色列空軍沒有把握在一次襲擊中保證摧毀對方的核設施。
伊朗的納坦茲地下核工廠,大部分設施都位于地下
布置在核工廠外的防空陣地
于是以色列人就開始使用其他各種方法來阻止伊朗獲得核武器。他們多次派出特工暗殺過伊朗的核科學家,但這充其量隻能延緩伊朗的開發進度。後來,有人想出了用病毒來破壞伊朗核工廠中離心機的主意。
在伊朗總統視察核工廠的新聞中拍攝到了電腦螢幕的一角,這可能給了以色列人關于控制軟體的關鍵資訊
以色列人發現,隻要周期性地讓離心機運作在錯誤的頻率上,就可以讓它失控然後炸碎。據說以色列人飛去了位于美國弗吉尼亞州的中情局總部,直接把炸裂的離心機碎片倒在會議桌上,說服了美國人一起開發一款病毒。
這裡有一個小小的技術性問題:伊朗的地下核工廠是不與外界聯網的,是以這個病毒是沒法通過網際網路感染核工廠内部電腦的。不過,這難不倒以色列人,摩薩德最擅長做的就是這種事情。他們想辦法把一個載有stuxnet病毒的U盤插進了伊朗核工廠的電腦主機上。
一旦進入納坦茲核工廠後,stuxnet就開始工作了。在這個與外部隔絕的環境中裡,病毒不可能再通過網絡接收新的指令,是以它的一切行動都被設計成是全自動的。
在感染一台新的電腦後,stuxnet會自動檢測自身所處的電腦環境中是否有西門子工業控制軟體以及離心機裝置。如果判斷自己身處于伊朗的地下核工廠内,stuxnet會先潛伏13天的時間,這是離心機完成一次完整的運作過程所需要的時間。在這13天裡,stuxnet會記錄下離心機的運作資料,供以後使用。13天的周期結束後,stuxnet就開始發動攻擊。它會不斷改變離心機的運轉頻率,讓它的連接配接部件在疲勞作用下斷裂。
在破壞離心機的同時,stuxnet會在系統中顯示正常的運作記錄,讓技術人員無法發現離心機的運作頻率遭到了篡改。這就好像潛入大樓的間諜把保安監控室的畫面替換成了提前錄制好的正常畫面。
在很長的一段時間裡,伊朗的技術人員确實不知道發生了什麼事。他們看到離心機一台台地碎裂,但系統中所有的資料都顯示一切正常。
按照病毒作者的構想,stuxnet應該默默地在納坦茲工廠裡完成破壞離心機的任務,不被任何人發現。作者還在病毒代碼裡設定了一個自毀功能,在某個日期之後,stuxnet就會停止運作并自我删除,不給外界留下任何證據。
但不知道是哪個環節出了問題,stuxnet竟然又被轉播到了納坦茲工廠之外。雖然stuxnet不會對普通使用者的電腦造成損害,但這讓它意外地被曝光在了公衆視線之下。
2010年11月,伊朗官方承認納坦茲的核工廠的鈾濃縮工作受到了一款惡意電腦病毒的影響,但同時又強調病毒造成的損失是有限的。美國和以色列政府則對此事三緘其口,絕不承認自己跟這款病毒有任何的關聯。很多媒體都對stuxnet病毒進行了長篇報道,标題聳人聽聞。接受采訪的專家說,如果病毒作者選擇用這款病毒來攻擊發電站、自來水廠、天然氣公司的話,完全可能讓一個國家在短期内崩潰。媒體總結說,stuxnet的出現标志着世界上第一次由某國政府對另外一個國家發動了網絡戰。
但更有可能的是,這隻不過是美以兩國政府第一次不小心被發現而已。