◆李 東
?
震網(wǎng)病毒事件淺析及工控安全防護能力提升啟示
◆李 東
(核工業(yè)計算機應(yīng)用研究所 北京 100048)
工業(yè)控制系統(tǒng)發(fā)展迅速,其面臨的安全風(fēng)險也越來越嚴(yán)峻。震網(wǎng)病毒作為工業(yè)控制網(wǎng)絡(luò)惡意軟件典型樣本,具有破壞性強、隱蔽性強、針對性強等特點,通過遠程控制、漏洞利用等方式,在世界范圍內(nèi)造成不同程度影響。受到攻擊的企業(yè)可能面臨設(shè)施運行異常、商業(yè)資料失竊、甚至停工停產(chǎn)等情況。本文通過淺析震網(wǎng)病毒事件,思考工業(yè)企業(yè)在工業(yè)控制系統(tǒng)防護建設(shè)時,涉及到的安全管理、安全技術(shù)等方面的防護啟示,并給出相關(guān)建議。
震網(wǎng)病毒;工控安全;防護啟示
當(dāng)前,工業(yè)控制系統(tǒng)發(fā)展迅速,工業(yè)控制網(wǎng)絡(luò)日趨復(fù)雜,工控系統(tǒng)的復(fù)雜程度也大大提高,存在的安全風(fēng)險也大大增加。工業(yè)控制系統(tǒng)作為國家關(guān)鍵基礎(chǔ)設(shè)施的重要組成部分,已逐漸成為大國之間博弈較量的主戰(zhàn)場。不論個人,企業(yè)還是政府,都越來越重視工業(yè)控制系統(tǒng)安全防護。震網(wǎng)病毒事件爆發(fā)以來,我國政府相關(guān)部門相繼出臺工業(yè)控制系統(tǒng)安全防護方面的政策法規(guī)標(biāo)準(zhǔn),如2011年工業(yè)和信息化部下發(fā)的《關(guān)于加強工業(yè)控制系統(tǒng)信息安全管理的通知》、2016年工業(yè)和信息化部下發(fā)的《工業(yè)控制系統(tǒng)信息安全防護指南》等。
目前關(guān)于震網(wǎng)病毒事件的研究報告和資料比較完整,經(jīng)過將近十年的時間,其整個事件的全貌也比較清晰。震網(wǎng)病毒作為工業(yè)控制網(wǎng)絡(luò)惡意軟件的典型樣本,其傳播感染破壞機理具有典型性。本文回顧震網(wǎng)病毒事件始末,淺析震網(wǎng)病毒的樣本行為,結(jié)合這些年出臺的標(biāo)準(zhǔn)規(guī)范,有針對性的提出工業(yè)企業(yè)提升工控安全防護能力的幾點建議。
震網(wǎng)病毒在2010年大規(guī)模爆發(fā),是世界上首個針對工業(yè)控制系統(tǒng)編寫的破壞性蠕蟲病毒[1]。震網(wǎng)病毒通過社會工程學(xué)方法從互聯(lián)網(wǎng)側(cè)被“投放”到伊朗核設(shè)施設(shè)備供應(yīng)商網(wǎng)絡(luò),后通過設(shè)備供應(yīng)商電腦或者U盤,在設(shè)備安裝維修或者工廠員工交叉使用U盤時,感染工業(yè)控制系統(tǒng)主機,進而感染整個工控網(wǎng)絡(luò),造成工業(yè)生產(chǎn)設(shè)備運行異常。
(1)政治意圖明顯
震網(wǎng)病毒在伊朗感染的計算機占全球范圍的一半以上,其感染網(wǎng)絡(luò)多為伊朗的核設(shè)施相關(guān),且技術(shù)實現(xiàn)復(fù)雜,目標(biāo)單一。能做到這些需要廣泛資源,絕非黑客所為,結(jié)合當(dāng)時的國際政治環(huán)境,基本可以判斷此次事件屬于國家行為[2]。
(2)隱蔽性強
震網(wǎng)病毒采用“躲避”技術(shù)高超,很難被殺毒軟件和工業(yè)生產(chǎn)監(jiān)控系統(tǒng)發(fā)現(xiàn),造成其被發(fā)現(xiàn)和分析經(jīng)歷了漫長的過程。在全球頂級病毒分析師的努力下,震網(wǎng)病毒的徹底分析破解經(jīng)約10個月,其病毒版本至少更新兩次[3]。造成伊朗工廠方面應(yīng)急響應(yīng)工作開展困難,不能做出有效的針對性措施。
(3)針對性強
震網(wǎng)病毒行為表明,震網(wǎng)病毒只針對特定PLC控制器軟件版本進行攻擊,對特定繼電器進行控制。而從其惡意代碼攻擊部判斷,病毒開發(fā)者已經(jīng)掌握目標(biāo)工廠建造的較詳細信息,這一點可以從惡意代碼攻擊部數(shù)組結(jié)構(gòu)和有關(guān)科學(xué)文獻內(nèi)容吻合加以印證[4]。
震網(wǎng)病毒的爆發(fā)震網(wǎng)病毒造成眾多的離心機損壞。使伊朗的核計劃延遲1年多。核設(shè)施工作人員只能將工業(yè)控制系統(tǒng)中的感染電腦每臺重新格式化來清除病毒,重新安裝系統(tǒng)和工業(yè)控制軟件來盡快恢復(fù)生產(chǎn)。
震網(wǎng)病毒傳播能力極強,從震網(wǎng)病毒爆發(fā)至2010年底,共有100000臺主機感染了該病毒。至少六個國家受到了不同程度的影響。下表列出按照國家劃分的被感染計算機所占比例前六名的國家[5]。
表1 被感染計算機占比前六名的國家
互聯(lián)網(wǎng)側(cè),震網(wǎng)病毒通過HTTP協(xié)議鏈接到指定域名,即C&C服務(wù)器,更新自身版本,使用加密技術(shù)保護通信數(shù)據(jù);內(nèi)網(wǎng)側(cè),通過在感染主機上創(chuàng)建RPC服務(wù)的方式,完成局域網(wǎng)內(nèi)病毒之間通信,實現(xiàn)感染主機之間的版本更新[6]。
(1)LNK或PIF文件任意代碼執(zhí)行漏洞(CVE-2010-2568)
該漏洞利用windows系統(tǒng)在解析快捷方式文件(例如.lnk文件)時的系統(tǒng)機制缺陷,使操作系統(tǒng)加載攻擊者指定的動態(tài)鏈接庫文件。震網(wǎng)病毒利用此漏洞實現(xiàn)“擺渡”攻擊,實現(xiàn)對物理隔離網(wǎng)絡(luò)的滲透[7]。
(2)Windows server 服務(wù)RPC請求遠程代碼執(zhí)行漏洞(CVE- 2008-4250)
當(dāng)有此漏洞的Windows2000、Windows XP和Windows Server 2003系統(tǒng),收到惡意構(gòu)造的RPC請求時,會繞過認證執(zhí)行任意代碼,并獲得完整控制權(quán)限。震網(wǎng)病毒利用此漏洞進行大規(guī)模傳播。
(3)打印機后臺程序服務(wù)漏洞(CVE-2010-2729)
該漏洞是Windows打印后臺程序用戶權(quán)限設(shè)置不合理造成的。震網(wǎng)病毒利用此漏洞實現(xiàn)內(nèi)網(wǎng)傳播。
(4)Siemens Simatic Wincc與PCS硬編碼口令權(quán)限許可和訪問控制漏洞(CVE-2010-2772)
WinCC系統(tǒng)開發(fā)者將數(shù)據(jù)庫的默認賬戶名和密碼硬編碼到了WinCC系統(tǒng)中。震網(wǎng)病毒利用此漏洞訪問數(shù)據(jù)庫。震網(wǎng)病毒還利用Step7工程打開文件時的動態(tài)鏈接庫加載策略缺陷,實現(xiàn)查詢讀取函數(shù)的劫持,從而竊取正常生產(chǎn)數(shù)據(jù)。
震網(wǎng)病毒在感染工業(yè)控制主機后,首先會耐心地“潛伏”14天或者更長時間,在“潛伏”的這段時間里,震網(wǎng)病毒會記錄PLC向外發(fā)送的數(shù)據(jù),等到震網(wǎng)病毒開始運行,會把之前保存的數(shù)據(jù)發(fā)送往監(jiān)控端,造成運行正常的“假象”。如果程序員發(fā)現(xiàn)PLC出現(xiàn)問題,要進行調(diào)試,震網(wǎng)病毒會攔截讀取PLC代碼段的請求,并且把惡意代碼刪除。如果殺毒軟件檢測感染系統(tǒng),病毒會Hook操作系統(tǒng),隱藏自身,劫持掃描指令,“躲避”殺毒軟件,使其找不到病毒。
震網(wǎng)病毒攻擊載荷運行時,會把變頻頻率提升到1410HZ,持續(xù)15分鐘,然后再回到正常的1064HZ,持續(xù)26天,然后再2HZ的頻率上持續(xù)50分鐘,然后再恢復(fù)到正常的1064HZ,持續(xù)26天。通過改變離心機頻率的方式對離心機構(gòu)成破壞[8]。
(1)加強供應(yīng)鏈管理
伊朗的核設(shè)施地處偏遠,守衛(wèi)森嚴(yán),直接從互聯(lián)網(wǎng)實施攻擊不滿足條件,故震網(wǎng)病毒選擇其重要設(shè)備供應(yīng)商網(wǎng)絡(luò)進行互聯(lián)網(wǎng)“投毒”攻擊。工業(yè)企業(yè)在選擇設(shè)備供應(yīng)商時往往對其信息安全建設(shè)運營水平考慮甚少,或者不予考慮,這就使震網(wǎng)病毒有機可乘。
建議工業(yè)企業(yè)在選擇重要設(shè)備供應(yīng)商時考慮其企業(yè)信息安全建設(shè)水平,取得相關(guān)安全認證的企業(yè)優(yōu)先考慮。在合同協(xié)議中最好明確規(guī)定設(shè)備維修升級或改造過程中不能給工業(yè)控制網(wǎng)絡(luò)引入額外風(fēng)險。加強供應(yīng)鏈信息安全約束,保障供應(yīng)鏈安全,是企業(yè)保障工控安全的重要前提。
(2)加強敏感信息保護
震網(wǎng)病毒之所以成功的延遲了伊朗的和進程,不僅僅依靠其設(shè)計復(fù)雜,技術(shù)難度高的惡意代碼編寫技術(shù),我們還應(yīng)該看到其技術(shù)團隊背后有強大的情報資源支持。除了隱秘的情報來源,令人驚訝的是,伊朗核設(shè)施建造結(jié)構(gòu)資料,是能夠在互聯(lián)網(wǎng)查詢到的。這是典型的敏感信息泄露。
建議工業(yè)企業(yè)建立完整的信息分類制度,對敏感的工藝數(shù)據(jù)、關(guān)鍵設(shè)備信息、關(guān)鍵人員信息等敏感信息建立信息審查制度。定期對互聯(lián)網(wǎng)涉及自身企業(yè)的信息包括招投標(biāo)信息,資產(chǎn)信息、學(xué)術(shù)論文信息等做定期的梳理,防止敏感信息泄露。如果發(fā)現(xiàn)敏感信息泄露,應(yīng)采取相關(guān)措施補救。
(3)組建專業(yè)信息安全團隊
震網(wǎng)病毒爆發(fā)的2010年,大多數(shù)工業(yè)企業(yè)還沒有意識到工業(yè)控制系統(tǒng)會面臨信息安全問題。而將近10年過去了,也很少有工業(yè)企業(yè)擁有自己專門的工控安全團隊。
建議有條件的工業(yè)企業(yè)成立自己的工控安全團隊,有針對性地跟蹤工業(yè)控制系統(tǒng)漏洞并驗證、挖掘企業(yè)使用工業(yè)控制系統(tǒng)設(shè)備漏洞,消除已知和潛在風(fēng)險;當(dāng)遇到工控安全事件時,安全團隊主要分析惡意軟件,判斷惡意軟件危害,做出有效應(yīng)急響應(yīng)。當(dāng)遇到技術(shù)復(fù)雜的惡意軟件時,能夠配合技術(shù)實力和情報能力更強的網(wǎng)絡(luò)安全公司進行合作,迅速研判惡意軟件行為,盡快提出并實施解決方案,減少企業(yè)損失。沒有條件的企業(yè)根據(jù)自身狀況,建議購買專業(yè)的工業(yè)控制系統(tǒng)安全服務(wù)。
(4)政治敏感時期加強監(jiān)控預(yù)警
近些年,類似震網(wǎng)病毒事件也有幾起。它們無不具有一定的政治意圖,實施破壞關(guān)鍵基礎(chǔ)設(shè)施的攻擊。這就要求工業(yè)企業(yè)做好自身資產(chǎn)的政治民生方面的評估,結(jié)合特定時期的國際政治熱點,判斷工控安全事件發(fā)生的可能性。有條件的企業(yè)可以借助一些“外力”,比如威脅情報,做好工業(yè)控制系統(tǒng)信息安全事件的預(yù)測預(yù)警,有針對性的提高安全防護。
(5)加強移動存儲介質(zhì)管控
由于工控系統(tǒng)直接連接互聯(lián)網(wǎng)的情況不多,尤其涉及國計民生的關(guān)鍵基礎(chǔ)設(shè)施很少連接互聯(lián)網(wǎng),所以大多數(shù)工控系統(tǒng)惡意軟件都具有移動存儲介質(zhì)傳播功能。做好移動存儲介質(zhì)管控,能夠有效控制惡意代碼和病毒的傳播。
建議企業(yè)建立移動存儲介質(zhì)臺賬,做好標(biāo)識管理。禁止工業(yè)控制系統(tǒng)與互聯(lián)網(wǎng)系統(tǒng)交叉使用U盤,從而減少感染病毒幾率。明確設(shè)備提供商在設(shè)備升級維修或者改造過程中的介質(zhì)要求,避免使用U盤等移動存儲介質(zhì)。
(1)加強第三方流量審計
工控網(wǎng)的流量審計目前是比較通用的防護方式。工控網(wǎng)的流量監(jiān)控和審計和工控系統(tǒng)本身的數(shù)據(jù)檢測是不同的,一個解決的是信息安全問題,一個解決的是生產(chǎn)安全問題。兩者兼顧,才能真正掌握工控網(wǎng)絡(luò)的運行情況。
建議扎實做好工業(yè)控制網(wǎng)絡(luò)流量監(jiān)測審計,在使用工業(yè)控制設(shè)備監(jiān)測系統(tǒng)的同時建議配套一組第三方網(wǎng)絡(luò)流量審計系統(tǒng),對比兩監(jiān)控數(shù)據(jù),及時查找出安全隱患,防止類似震網(wǎng)病毒通過發(fā)送正常數(shù)據(jù)躲避檢測的伎倆得逞。
(2)做好安全域劃分
在工控網(wǎng)建設(shè)規(guī)劃中,應(yīng)做好安全域的劃分;如果建設(shè)規(guī)劃初期未考慮安全域劃分,那么在改造升級過程中,建議根據(jù)實際情況,通過安全設(shè)備實現(xiàn)安全域劃分。工業(yè)控制網(wǎng)絡(luò)要根據(jù)信息性質(zhì)、使用主體、安全策略等元素來劃分不同邏輯子網(wǎng)或網(wǎng)絡(luò)[9],按照各個區(qū)域的安全需求進行防護,這樣做可以控制計算機病毒的感染傳播,為做好惡意病毒事件應(yīng)急響應(yīng)和追溯工作奠定良好基礎(chǔ)。
(3)加強邊界防護
邊界防護是保護工控系統(tǒng)安全區(qū)域內(nèi)外部網(wǎng)絡(luò)流量的有效手段。建議在進出安全域的網(wǎng)絡(luò)流量通過至少一個網(wǎng)絡(luò)連接環(huán)節(jié),以便于監(jiān)視和控制。在網(wǎng)絡(luò)連接過程中設(shè)置至少一個安全設(shè)備進行防護[10]。 一般建議在網(wǎng)絡(luò)邊界處部署防火墻和入侵檢測系統(tǒng),分別進行網(wǎng)絡(luò)流量過濾和深度數(shù)據(jù)包分析。再根據(jù)安全區(qū)域的安全需求,增加應(yīng)用層監(jiān)視設(shè)備等安全防護產(chǎn)品。
(4)加強工業(yè)控制系統(tǒng)主機防護
工業(yè)控制系統(tǒng)中的主機操作系統(tǒng)版本大多比較低,一些比較老舊的工業(yè)控制系統(tǒng)已經(jīng)使用了10至20年,期間沒有條件對系統(tǒng)中的主機進行升級,殺毒,打補丁等操作,這是工業(yè)控制系統(tǒng)的一個現(xiàn)狀,也是震網(wǎng)病毒等惡意軟件能在短期內(nèi)迅速傳播擴散的原因。
建議在不影響工業(yè)控制軟件工作的條件下,安裝工控主機專用的殺毒軟件,或者使用一些安全廠商針對工控主機進程防護的,基于白名單機制的主機防護產(chǎn)品。工控主機的殺毒、系統(tǒng)升級、打補丁等操作一定要經(jīng)過測試,最好在備用的工控系統(tǒng)上做測試后再到生產(chǎn)系統(tǒng)中去實施。
(5)加強控制指令流量監(jiān)控
震網(wǎng)病毒這類破壞型病毒其最終目的是通過網(wǎng)絡(luò)向PLC端發(fā)送破壞性控制指令,如果控制系統(tǒng)的控制指令能夠確定在某個區(qū)間,或者監(jiān)控數(shù)據(jù)有一個正常范圍內(nèi)的范圍,類似這樣的情況,企業(yè)可以考慮在控制端,使用控制指令流量監(jiān)控設(shè)備,對上位機或者工程師站發(fā)送出的每一條控制指令進行監(jiān)控審計,如果超出一定的范圍或某一閾值,可以進行阻斷或者報警,最大限度的保持工控系統(tǒng)安全運行。
震網(wǎng)病毒事件是網(wǎng)絡(luò)攻擊延申到現(xiàn)實世界的典型案例,也是工業(yè)控制系統(tǒng)安全的“元年”。網(wǎng)絡(luò)攻擊不再只發(fā)生在虛擬世界中,而是影響到了人們的衣食住行。近些年,工業(yè)控制系統(tǒng)面對的威脅更趨復(fù)雜,震網(wǎng)病毒事件后陸續(xù)有火焰病毒、毒區(qū)病毒、蜻蜓和黑暗力量病毒爆發(fā),除了以上有信息采集、精確打擊功能的病毒威脅工業(yè)控制系統(tǒng)外,WannaCry勒索病毒的爆發(fā)也給工業(yè)企業(yè)帶來很大損失,比較典型的是臺積電病毒門事件。
工業(yè)企業(yè)做好工控系統(tǒng)信息安全防護迫在眉睫,但是不能盲目照搬,照貓畫虎。由于工業(yè)控制系統(tǒng)的實時性要求比互聯(lián)網(wǎng)信息系統(tǒng)要求高很多,工業(yè)控制網(wǎng)絡(luò)安全防護要注重工業(yè)控制系統(tǒng)的可用性,這就要求企業(yè)在做工業(yè)控制系統(tǒng)安全防護的過程中要充分考慮實際情況,提出切合實際的工業(yè)控制系統(tǒng)防護解決方案。如果方案中技術(shù)防護方面措施尚有不足,建議用嚴(yán)格細致的管理措施作為補充,確保解決方案切實提升工控系統(tǒng)防護能力。我相信,只要工業(yè)企業(yè)做好基礎(chǔ)合規(guī)的信息安全防護,合理配置安全設(shè)備,加大監(jiān)測力度,便能夠?qū)︻愃普鹁W(wǎng)病毒事件做到防范于未然。
[1]饒躍東、熊瑜.基于“震網(wǎng)”病毒的物理隔離網(wǎng)絡(luò)風(fēng)險控制分析[J].廣西科學(xué)院學(xué)報,2012.
[2]工業(yè)控制系統(tǒng)信息安全指南,2016.
[3]https://www.ted.com/talks/ralph_langner_cracking_stuxnet_a_21st_century_cyberweapon#t-352700.
[4]Ralph Langner| TED2011.Cracking Stuxnet, a 21st-century cyber weapon.
[5]黑客大曝光工業(yè)控制系統(tǒng)安全,2017.
[6]Amr Thabe.Stuxnet Malware Analysis Paperw32_ stuxnet_dossier.
[7]安天實驗室.對Stuxnet蠕蟲攻擊工業(yè)控制系統(tǒng)事件的綜合報告,2015.
[8]Kim Zetter.零日漏洞:震網(wǎng)病毒全揭秘.https:// www.aqniu.com/hack-geek/11234.html.
[9]《電力行業(yè)信息系統(tǒng)安全等級保護基本要求》釋義,2015.
[10]工業(yè)SCADA系統(tǒng)信息安全技術(shù),2018.