一、引子
2006年,伊朗重啟核計劃,在納坦茲核工廠安裝大量離心機,生產濃縮鈾。
2010年1月,聯合國負責核查伊朗核設施的國際原子能機構(IAEA)開始注意到,納坦茲鈾濃縮工廠出現了問題。
核設施埋在沙漠之下50英尺的深處,那裡有一個巨大的離心機車間。離心機型號為IR-1,總數8,700臺,預期使用壽命10年。
在過去數周,工人們大批量拆掉離心機,並換成新的。故障比例高得令人髮指。
即使考慮到伊朗原料不達標、設備維護差和工人操作錯誤等問題,離心機的更換率也高得太離譜。
然而,伊朗人無需向IAEA解釋到底發生了什麼,IAEA檢察人員也無權過問。核查部門的任務是檢查鈾濃縮工廠的鈾,而不是跟蹤壞了多少設備。
二、預警
舍基·烏爾森(Sergey Ulasen),是白俄羅斯一家小型反病毒公司VirusBlockAda的技術負責人,2010年6月,他正在系統地梳理近期在伊朗計算機上發現的惡意文件。突然,他激動得有些喘不過氣來。一段他們已經研究好幾天了的代碼,竟然是一部如惡魔般可怕而又天才般冷靜的頂級作品,一個病毒界的"稀世珍寶"。
烏爾森努力破譯這個令人驚異的複雜代碼,雖然力不從心,但初步發現,它不僅有效利用了"內核極"後門來躲過反病毒引擎的掃描,還利用了"零日漏洞"(zero-day),從而能突破Windows系統。
令烏爾森警覺的是,這個病毒的兩個驅動已經獲得了臺灣一家名為瑞昱半導體公司(RealTek)的合法數字籤名,可以在無任何彈窗提示的情況下,完成了自身的安裝。
7月12日,烏爾森在一個英文安全論壇上發布了一條消息,警告說可能將爆發大規模感染。
全球安全業界迅速展開了對這個病毒的分析和破譯。同時,微軟給它起了一個新的名字:震網(Stuxnet)。
通過全球安全專家幾個月的接力研究,發現震網病毒的隱蔽性、複雜性遠超人們的想像。可以說,它的出現,是病毒進化過程中的一次劃時代"基因突變"。安全業界中很多人都感到心神不寧、不知所措。ESET公司研究員皮埃爾在網上說:"擦,從來沒見過這麼專業的壞蛋。"
然而,震網的意圖到底是什麼,仍然是個謎。研究者沒有發現任何有關震網試圖盜取銀行帳號等機密信息的行為,這一點與其他大多數惡意程序大相逕庭。
三、跟蹤
一天,一名來自德國的研究者弗蘭克(Frank Boldewin)找到了一個可能的線索。弗蘭克深入震網的內層代碼,發現其中有一些不尋常的、對德國西門子公司所生產軟體的說明文字。攻擊者看上去是在尋找那些安裝有SIMATIC Step 7或SIMATIC WINCC這兩種西門子公司專有軟體的計算機。這兩種軟體都是與西門子公司生產的可編程邏輯控制器(PLC)配套的工業控制系統的一部分,用於配置自動控制系統的軟硬體參數。
隨後,賽門鐵克公司的一個專門研究小組公布:根據對日誌文件的分析結果,攻擊者釋放病毒的起點,是最有可能接觸到震網攻擊目標的5家伊朗公司。之後,以這5家公司為源頭,震網實現了對100多個國家10萬多臺計算機的傳播。
德國的一個研究小組,通過數月艱苦分析,得出了一個駭人的結論。震網的攻擊目標,並非西門子兩款特定型號的PLC,而是使用PLC的特定設備。震網可謂"軍用級精確制導武器"。
同時,他們發現,震網要找的目標,居然會有如此詳盡的PLC配置信息。這只能說明一個問題,就是它的目標,就是伊朗境內的某一個特定設施。
花這麼多錢、費這麼大勁,就為了區區一個目標?!這讓人百思不得其解。
最後,只有一種可能,就是目標非常非常之重要。
2011年11月16日,伊朗納坦茲的技術人員全面暫停了工廠的鈾濃縮活動。6天後的11月22日,所有離心機都停止了運轉。
安全專家們恍然大悟,伊朗方面停工的目的,一定是為了在計算機中尋找震網的蹤跡。
震網的攻擊目標,就是伊朗納坦茲核工廠!
2010年11月29日的清晨7點45分,德黑蘭南部的阿泰什大街(Artesh Boulevard)上,車流熙攘。40歲的著名核物理學家馬吉德·沙利亞裡(Majid Shahriari)在上班的路上,車上還坐著兩個人。他的妻子,也是一名核物理專家;另外還有一名保鏢。
正在沙利亞裡駛向一個十字路口時,車的左側突然冒出一輛摩託車。來人朝司機一側的車門上拋下了一個"粘性炸彈",然後逃之夭夭。幾秒鐘後,炸彈爆炸。沙利亞裡當場斃命。
暗殺事件當天,伊朗總統內賈德對"數字武器攻擊納坦茲核設施"一事首次做出了官方的確認。他在譴責以色列和西方國家發動暗殺襲擊伊朗核物理學家的同時,還明確指責他們"一年前開始對伊朗核設施進行病毒攻擊。"內賈德說,病毒通過軟體,並對部分離心機造成了破壞。
至此,一個精心策劃並盡在掌控的驚天大機密,世界上第一個真正的數字武器,在順利實施多年之後,正被人一步一步的抽絲剝繭,暴露在世人面前。
四、"奧運會計劃"
伊朗在2006年初恢復了納坦茲試驗廠的鈾濃縮活動。
隨後,以色列不斷指責美國人在伊朗核問題上拖拖拉拉,總是幻想靠制裁和外交努力解決問題。以色列總理埃胡德奧爾默特(Ehud Olmert)在公開場合警告說,如果無法叫停伊朗核計劃,以色列將"採取單邊行動"。
經過多方權衡,美國軍方和情報官員向當時的美國總統布希提交了一個對伊朗核設施發動網絡攻擊的提案,得到批准。
該計劃被命名為"奧運會",因為有多個國家的情報機構參與。
病毒由美國和以色列的程式設計師共同編寫,並在內蓋夫荒漠(Negev Desert)中的迪莫諾(Dimona)建築複合體——始建於20世紀60年代的以色列核武器研發基地內完成了測試,並將代碼加載到U盤上,
德國提供了西門子公司生產的工業控制系統的技術規範。因為西門子公司產的工業控制系統被廣泛運用於伊朗核設施之中。
在以色列的迪莫諾,有關人員構建了西門子控制器和與納坦茲相同的IR-1型離心機的試驗臺,對病毒破壞處於運轉態離心機的效果進行了測評。
英國政府也參與了試驗。
試驗完成後,荷蘭情報人員將病毒植入到核設施內。
為什麼是荷蘭?
這是因為納坦茲的離心機,是基於20世紀70年代巴基斯坦科學家阿卜杜勒·卡迪爾·汗從一家荷蘭公司偷來的設計。汗偷了設計,建造離心機,然後向其他國家推銷它們,包括伊朗和利比亞。
荷蘭情報人員在伊朗開設了兩家離心機方面的技術諮詢服務公司。荷蘭特工,通過訓練成為一名工程師,設法進入納坦茲,將U盤插入控制系統,安裝了惡意代碼。
在幾個月的時間裡,他多次進入納坦茲,從而相應地更新病毒。
更新病毒是因為攻擊者決定改變策略。
一開始,「震網」通過修改程序命令,旨在關閉隨機數量的離心機上的出口閥門,這樣氣體就會無法及時排出,離心機內部的壓力升高,並隨著時間的推移致使離心機報廢,同時不斷向主控機房監控系統回傳"設備正常運轉"的假指令。
後來更新的病毒,主要是改變離心機轉數,導致生產出來的鈾,無法滿足核武器的質量要求。
研究人員認為,之後版本的Stuxnet戰術變化,表明攻擊者的能力有所改善,以至於他們不再需要內部特工。"他們能夠在沒有人員接應的情況下完成整個攻擊。"
五、失誤
令人吃驚的是,雖然故障不斷,伊朗在反覆排查核設施之後,竟一直沒能發現工業控制系統出現的問題。這種病毒,徹底「弄懵」了伊朗。
不幸的是,美國或以色列的某位程式設計師,某天在編程的時候,可能心情很糟糕,因此錯誤地將and和or字符交換,導致程序能夠蔓延到任何版本的Windows系統中,使病毒擴散,終於在2010年6月被人發現。
六、故事遠未結束
2020年7月5日,伊朗政府承認,納坦茲核濃縮廠大火,造成嚴重破壞,導致核計劃至少推遲了數月。起火爆炸的地點,是一處新建的離心機裝配中心,該中心2013年開建,2018年落成,計劃建造更多更先進的離心機。
針對外界對以色列的懷疑,以色列防長甘茨7月5日稱:""並非伊朗發生的每件事都與我們有關……"
隨後,伊朗的兩座發電廠又發生爆炸,一座化工廠發生氯氣洩漏,德黑蘭東部Khojir軍事設施的一處飛彈生產基地發生爆炸……