楊景利,劉 元,孟慶軍,高 超,王童生
(北京廣利核系統(tǒng)工程有限公司,北京 100094)
核電是我國能源行業(yè)國家級戰(zhàn)略產(chǎn)業(yè),其自身運行過程具有特殊性,所以對核電廠儀控系統(tǒng)有更為嚴(yán)格的安全要求。一旦發(fā)生事故,除了生產(chǎn)運行受到影響外,還可能導(dǎo)致環(huán)境污染和人員輻射危害,并進(jìn)一步波及全球核電行業(yè)。伊朗震網(wǎng)事件、韓國核電廠泄密事件等重大的核電網(wǎng)絡(luò)安全事件說明了核電網(wǎng)絡(luò)安全的重要性和關(guān)鍵性。在我國核電網(wǎng)絡(luò)安全建設(shè)運維過程中,由于進(jìn)口設(shè)備多、維護(hù)團隊多,潛在植入漏洞和引入漏洞的風(fēng)險較大。
在核電廠儀控系統(tǒng)運行過程中,如果缺少網(wǎng)絡(luò)、主機、應(yīng)用、數(shù)據(jù)等各方面的網(wǎng)絡(luò)安全防護(hù)手段,一旦惡意軟件感染核電廠,便可能發(fā)起攻擊,造成嚴(yán)重后果。因此,對于核電廠儀控系統(tǒng)運行過程中的網(wǎng)絡(luò)安全所采取的策略至關(guān)重要,既要考慮對核電機組正常運行的影響,還要兼顧網(wǎng)絡(luò)安全防護(hù)效果。
在核電網(wǎng)絡(luò)安全標(biāo)準(zhǔn)方面,美國標(biāo)準(zhǔn)已經(jīng)細(xì)化到指南層面。美國能源局已將RG 5.71作為發(fā)放核電經(jīng)營許可證的一項重要核查導(dǎo)則,其內(nèi)容基本覆蓋了管理和技術(shù)兩個層面的實際操作過程。IEC方面,目前已經(jīng)完成管理標(biāo)準(zhǔn)(IEC 62645)和網(wǎng)絡(luò)安全與功能安全協(xié)調(diào)設(shè)計方法(IEC 62859)的制定。近年來,國內(nèi)一大批工控網(wǎng)絡(luò)安全標(biāo)準(zhǔn)由TC 124和TC 260組織發(fā)布。
①GB/T 30976-1~2:工業(yè)控制系統(tǒng)信息安全(第一部分評估規(guī)范;第二部分驗收規(guī)范)[1]由TC 124發(fā)布。該標(biāo)準(zhǔn)推出了一系列覆蓋管理和技術(shù)的指標(biāo)體系,在驗收上提出了信息安全驗收項。
②部分標(biāo)準(zhǔn)主要從工業(yè)控制系統(tǒng)的分類角度對GB/T 30976進(jìn)行了擴展。GB/T 33007-2016 工業(yè)通信網(wǎng)絡(luò)網(wǎng)絡(luò)和系統(tǒng)安全建立工業(yè)自動化和控制系統(tǒng)安全[2];GB/T 33008.1-2016 工業(yè)自動化和控制系統(tǒng)網(wǎng)絡(luò)安全可編程序控制器(PLC) 第1部分系統(tǒng)要求[3];GB/T 33009.1-2016《工業(yè)自動化和控制系統(tǒng)網(wǎng)絡(luò)安全集散控制系統(tǒng)(DCS)第1部分:防護(hù)要求》[4];GB/T 33009.2-2016《工業(yè)自動化和控制系統(tǒng)網(wǎng)絡(luò)安全集散控制系統(tǒng)(DCS)第2部分:管理要求》[5];GB/T 33009.3-2016《工業(yè)自動化和控制系統(tǒng)網(wǎng)絡(luò)安全集散控制系統(tǒng)(DCS)第3部分:評估指南》[6];GB/T 33009.4-2016《工業(yè)自動化和控制系統(tǒng)網(wǎng)絡(luò)安全集散控制系統(tǒng)(DCS)第4部分:風(fēng)險與脆弱性檢測要求》[7]。
③GB/T 32919 信息安全技術(shù)工業(yè)控制系統(tǒng)信息安全應(yīng)用指南[8]。該標(biāo)準(zhǔn)由TC 260發(fā)布,結(jié)合2016年10月工信部發(fā)布的《工業(yè)控制系統(tǒng)信息安全防護(hù)指南》進(jìn)行細(xì)化和擴展。
④等保2.0的工業(yè)控制系統(tǒng)安全擴展要求:該系列標(biāo)準(zhǔn)由TC 260牽頭(在研),是對等級保護(hù)通用要求的擴展,形成了要求、測評和設(shè)計三個標(biāo)準(zhǔn)。
上述標(biāo)準(zhǔn)均屬于通用行業(yè)標(biāo)準(zhǔn),未考慮到核電廠儀控系統(tǒng)的重要性和特殊性。
從方法論上講,核電廠儀控系統(tǒng)防御的主要方法是“隔離”和“凈化”。簡化的網(wǎng)絡(luò)安全防御架構(gòu)如圖1所示。
圖1 簡化的網(wǎng)絡(luò)安全防御架構(gòu)圖
“隔離”方面,RG 5.71中明確規(guī)定[9],僅允許單向數(shù)據(jù)流,即從第4級流向第3級,從第3級流向第2級;禁止從安全級別較低的數(shù)字資產(chǎn)向安全級別較高的數(shù)字資產(chǎn)發(fā)起通信。數(shù)據(jù)僅通過在各個級別之間強制執(zhí)行安全政策的設(shè)備,從一個級別流向其他級別。保持檢測、阻止、延遲網(wǎng)絡(luò)攻擊,減輕網(wǎng)絡(luò)攻擊所帶來的后果,并在發(fā)生攻擊事件之后恢復(fù)正常功能。
“凈化”方面,RG 5.71提出必須有業(yè)務(wù)權(quán)限的全面設(shè)計,保障最小權(quán)限策略的執(zhí)行;主機上不允許安裝儀控系統(tǒng)以外的任何非必要軟件和移動設(shè)備。
除隔離與凈化以外,IEC 62859還提出了核電網(wǎng)絡(luò)安全工作與物理安防工作的融合原則。物理安防已經(jīng)實現(xiàn)網(wǎng)絡(luò)安全功能的,不得重復(fù)實現(xiàn);網(wǎng)絡(luò)安全與物理安防有沖突的,以物理安防優(yōu)先考慮,網(wǎng)絡(luò)安全需要修改其實現(xiàn)方法。
“隔離”一般對應(yīng)的技術(shù)方法是根據(jù)業(yè)務(wù)把網(wǎng)絡(luò)分區(qū)分段,避免網(wǎng)絡(luò)之間的直接連通。通過單向隔離網(wǎng)閘或工業(yè)防火墻等設(shè)備進(jìn)行隔離,限制訪問權(quán)限,避免惡意軟件和報文的擴散。
“凈化”一般對應(yīng)的技術(shù)方法可以分為兩大類:黑名單和白名單。
傳統(tǒng)的防病毒軟件、入侵檢測系統(tǒng)(intrusion detection system,IDS)、入侵防御系統(tǒng)(intrusion protection system,IPS)等都屬于典型的黑名單類產(chǎn)品。黑名單類產(chǎn)品基于已知特征進(jìn)行惡意軟件識別、惡意行為識別,通過設(shè)置規(guī)劃好的“不允許”規(guī)則來檢測匹配文件、報文、行為等,實現(xiàn)對惡意軟件和攻擊行為的識別和阻止,達(dá)到凈化效果。
在核電廠的網(wǎng)絡(luò)環(huán)境里,黑名單類產(chǎn)品有如下缺點。
①內(nèi)置特征庫,需要實時更新才能達(dá)到較好的防護(hù)效果;核電廠儀控系統(tǒng)與外網(wǎng)隔離,無法及時更新系統(tǒng)補丁,不能保證防護(hù)效果。
②在特征匹配過程中會消耗較多資源,可能會造成系統(tǒng)擁堵或緩慢、實時性較差,不滿足核電廠儀控系統(tǒng)高實時性的要求。
③特征匹配不能保證完全準(zhǔn)確,可能會存在誤報;特別是行為特征識別中,往往會將儀控系統(tǒng)的I/O卡讀寫等驅(qū)動層面的操作當(dāng)成惡意行為進(jìn)行阻止。
④只能對已知特征進(jìn)行匹配,發(fā)現(xiàn)已知的惡意軟件和攻擊行為,無法防護(hù)“0 day”漏洞和有針對性的攻擊。
綜合考慮上述黑名單類產(chǎn)品的弱點,需要在核電廠儀控系統(tǒng)的安全防護(hù)方案中引入不同于黑名單的防護(hù)技術(shù)——白名單技術(shù)。
白名單和黑名單技術(shù)對比如圖2所示。
圖2 白名單和黑名單技術(shù)對比圖
白名單類產(chǎn)品相對黑名單類產(chǎn)品而言,強調(diào)“確定的安全”,所有未知都不允許?!鞍酌麊巍笔且粋€多維度全方位的安全結(jié)構(gòu)模型,覆蓋系統(tǒng)的各個層面,包括程序白名單(或應(yīng)用白名單)、協(xié)議白名單、指令白名單、外設(shè)白名單等。白名單技術(shù)恰好可以彌補黑名單技術(shù)的不足,是一個極其有限的安全防護(hù)策略。
根據(jù)核電廠儀控系統(tǒng)的實際情況,經(jīng)過對工控流量、操作系統(tǒng)及應(yīng)用程序的監(jiān)控和分析,建立核電廠儀控系統(tǒng)及網(wǎng)絡(luò)的安全基線模型,進(jìn)而形成核電廠儀控體系的“安全白環(huán)境”,是一個更有效的安全防護(hù)方案。該方法能根本上達(dá)到“凈化”的效果。
程序白名單是一個主機上的合法應(yīng)用軟件的基線列表,只有在這個列表內(nèi)的程序才允許運行,其他任何程序(包括病毒、木馬或者其他非惡意軟件)都不能運行。這就是程序白名單的安全機制。
采用白名單技術(shù)的工控主機防護(hù)軟件可以抵御“0-day”漏洞和有針對性的攻擊,實現(xiàn)操作員站、工程師站、數(shù)據(jù)服務(wù)器等工控機的安全防護(hù),改善并提升主機安全防護(hù)能力,最大限度保障工控機的安全穩(wěn)定運行。在工控機防護(hù)方面,白名單技術(shù)產(chǎn)品相對防病毒技術(shù)更有優(yōu)勢,防護(hù)能力更好。
國際權(quán)威測評機構(gòu)Tolly給出的應(yīng)用程序白名單軟件Bit9和防病毒軟件產(chǎn)品安全防護(hù)能力的對比如表1所示。
表1 白名單軟件與殺毒軟件防護(hù)能力對比
注:①“阻止”表示被測試的系統(tǒng)阻止了入侵攻擊,起到了防護(hù)作用;
②“未阻止”表示被測試的系統(tǒng)沒有阻止入侵攻擊,沒有成功保護(hù)被攻擊對象;
③針對Web服務(wù)器,Symantec推薦使用它的關(guān)鍵系統(tǒng)保護(hù)產(chǎn)品作為終端保護(hù)產(chǎn)品的必要補充來進(jìn)行防護(hù),McAfee則推薦使用高級終端防護(hù)套件來進(jìn)行防護(hù)(數(shù)據(jù)來源,Tolly,2012年2月)
從表1可明顯看出,應(yīng)用程序白名單軟件抵御了所有的5類攻擊,而防病毒廠商賽門鐵克和邁克菲公司的產(chǎn)品僅抵御了一部分攻擊。防護(hù)能力出色并不是白名單技術(shù)產(chǎn)品優(yōu)勢的全部,其優(yōu)點還表現(xiàn)在以下幾方面。
①有效抵御“0-day”及APT攻擊。
②系統(tǒng)資源開銷低,對主機性能幾乎沒有影響。
③無需升級庫,易于維護(hù),其使用不會對生產(chǎn)過程產(chǎn)生影響。
程序白名單可以應(yīng)用在核電廠儀控系統(tǒng)中的操作員站、工程師站、服務(wù)器和通信站網(wǎng)關(guān)等計算環(huán)境中。
通過控制軟件實現(xiàn)移動介質(zhì)合法性注冊,建立介質(zhì)白名單,實現(xiàn)移動介質(zhì)的合法識別和讀寫控制,保證核電廠儀控系統(tǒng)不受外部惡意軟件的侵襲。外設(shè)白名單的主要特點如下。
①通過外設(shè)開關(guān)控制外設(shè)接口,保證沒有非法數(shù)據(jù)接入和內(nèi)部數(shù)據(jù)外泄。
②通過移動介質(zhì)注冊管理,既能保證內(nèi)部數(shù)據(jù)流動性,又可減少U盤隨意使用帶來的威脅。
③通過對讀寫權(quán)限的控制,可保證數(shù)據(jù)流動方向,避免惡意軟件感染。
外設(shè)白名單原理如圖3所示。
圖3 外設(shè)白名單原理圖
外設(shè)白名單可以應(yīng)用在核電廠儀控系統(tǒng)中的操作員站、工程師站、服務(wù)器和通信站網(wǎng)關(guān)等計算環(huán)境中,以控制外設(shè)的使用。
協(xié)議白名單原理如圖4所示。
圖4 協(xié)議白名單原理圖
通過安全防護(hù)設(shè)備(如工業(yè)防火墻等)對網(wǎng)絡(luò)報文進(jìn)行深度解析和指令識別。按照白名單要求,阻斷無關(guān)的協(xié)議,過濾非法的工業(yè)協(xié)議數(shù)據(jù)和非法指令,僅允許正確的協(xié)議數(shù)據(jù)或工控指令通過,可有效保證工控網(wǎng)絡(luò)通信安全。①協(xié)議識別,阻止非法協(xié)議。②協(xié)議深度解析,阻止非法報文。③解析控制協(xié)議指令,阻止非法指令。④確定指令的源和目的,阻止非法通信。
協(xié)議白名單可以應(yīng)用在核電廠儀控系統(tǒng)的安全域入口,一般是在工業(yè)防火墻上,以過濾進(jìn)出該子網(wǎng)的協(xié)議流量。
工控網(wǎng)內(nèi)所有節(jié)點之間的連接建立,以及指令下發(fā)、數(shù)據(jù)上報等網(wǎng)絡(luò)交互都屬于工控行為?;趯χ噶畹纳疃冉馕?、業(yè)務(wù)的深度理解,從正常的工控業(yè)務(wù)學(xué)習(xí)工控行為基線,可以建立工控行為白名單。
工控協(xié)議白名單負(fù)責(zé)過濾非法報文,保證進(jìn)入網(wǎng)絡(luò)的都是合法報文、合法連接,但不能阻止誤操作或惡意操作(比如:對公司不滿的員工在正常的操作員站下發(fā)不合適的指令,停止設(shè)備運行)。工控行為白名單的主要作用是彌補工控協(xié)議白名單的不足,阻止誤操作或惡意操作。
建立工控行為白名單需要經(jīng)過較長的學(xué)習(xí)過程,采集大量數(shù)據(jù),結(jié)合多種特征建立行為模型。工控行為白名單生成過程如圖6所示。
圖5 工控行為白名單生成過程圖
工控行為建模重點是回答4個問題,簡稱4W:誰(Who),什么時間(When),使用哪些主機(Where),做哪些事情(What)。
Who:對應(yīng)主機的用戶,或者系統(tǒng)賬號。核電廠儀控系統(tǒng)的所有操作必須能對應(yīng)授權(quán)的操作員。這部分?jǐn)?shù)據(jù)由安裝在主機上的主機防護(hù)軟件提供。
When:工控行為的時間,也就是網(wǎng)絡(luò)報文的時間,這部分?jǐn)?shù)據(jù)由審計設(shè)備提供。對工控行為建模要求整個系統(tǒng)必須統(tǒng)一時鐘,否則可能導(dǎo)致學(xué)習(xí)模型不準(zhǔn)確。
Where:工控行為涉及的主機節(jié)點,即每個工控指令或報文的雙方。這部分?jǐn)?shù)據(jù)由審計設(shè)備提供。
What:工控行為的具體內(nèi)容,對應(yīng)工控指令。這部分?jǐn)?shù)據(jù)由審計設(shè)備提供。對工控報文解析得越細(xì),對工控業(yè)務(wù)理解得越深刻,這個模型就越準(zhǔn)確。
上述4W數(shù)據(jù)中,Who的數(shù)據(jù)需要由主機防護(hù)軟件提供,其他數(shù)據(jù)都是由審計設(shè)備提供。為保證系統(tǒng)的松耦合,在沒有Who的情況下,其他3個W(When、Where、What)可以完成建模工作。在有Who的情況下,模型可以精確到具體的人/賬號;在沒有Who的情況下,模型精確到網(wǎng)絡(luò)中的主機。
有了4W模型,就可以建立工控行為白名單,即從模型生成規(guī)則。這些工控行為白名單下發(fā)到審計設(shè)備或防火墻后,就可以及時發(fā)現(xiàn)異常行為、阻止異常行為。
工控行為白名單包括以下特點。①報文深度解析,識別工控指令。②海量數(shù)據(jù)分析,橫向(人、網(wǎng)絡(luò))、縱向(時間)結(jié)合,形成完整的立體模型——4W模型。③4W模型轉(zhuǎn)換為工控行為白名單,簡化防護(hù)策略。④有效識別、阻止誤操作、惡意操作。
工控行為白名單需要聯(lián)合主機防護(hù)軟件、網(wǎng)絡(luò)審計設(shè)備、工業(yè)防火墻、集中管理平臺,通過完整的解決方案來實現(xiàn),可以對核電廠儀控系統(tǒng)進(jìn)行全方位立體化的防護(hù)。
白名單防護(hù)策略的實施一般分為以下步驟。
(1)規(guī)劃。在方案設(shè)計實施前,需要先做規(guī)劃,確定白名單方案涉及的業(yè)務(wù)、區(qū)域和主機,確定白名單方案采用的技術(shù):基于主機、基于網(wǎng)絡(luò),或者兩者同時采用。
(2)設(shè)計選型。根據(jù)規(guī)劃,設(shè)計合適的網(wǎng)絡(luò)白名單或主機白名單方案,結(jié)合業(yè)務(wù)和網(wǎng)絡(luò)拓?fù)?,設(shè)計白名單部署方案,選擇合適的白名單產(chǎn)品。
(3)原型驗證。根據(jù)設(shè)計,在廣利核實驗室,基于試驗環(huán)境進(jìn)行白名單的原型驗證,以確保白名單產(chǎn)品功能完善、對業(yè)務(wù)運行沒有任何影響。
(4)實施。經(jīng)過驗證后,白名單方案進(jìn)入實施階段。實施前,需要確保主機沒有被惡意軟件感染。白名單產(chǎn)品在正式生效前一般需要經(jīng)過一個學(xué)習(xí)過程,也就是建立白名單的過程。如果把惡意軟件加入白名單,那白名單方案也無法保證主機的安全。工控行為白名單尤其需要經(jīng)過長時間的學(xué)習(xí)。實施包括以下2個階段。①學(xué)習(xí)階段。這一段時間學(xué)習(xí)現(xiàn)網(wǎng)的流量、程序、計算環(huán)境,生成白名單。在這個階段,白名單不會強制進(jìn)行攔截,只會生成告警,并等待管理員確認(rèn)。②白名單正式生效。在這個階段,不符合白名單要求的程序、報文、工控行為都會被攔截。
(5)維護(hù)。白名單實施后,需要進(jìn)行定期的維護(hù)。維護(hù)內(nèi)容主要包括:查看產(chǎn)品的相關(guān)日志和告警信息,檢查系統(tǒng)是否運行正常;業(yè)務(wù)軟件安裝或升級時需要進(jìn)行白名單更新。
某個核電廠儀控系統(tǒng),在操作員站、工程師站、服務(wù)器、網(wǎng)關(guān)服務(wù)器上部署了主機白名單防護(hù)軟件(包括程序白名單和外設(shè)白名單),保護(hù)主機的安全;通過邊界的工業(yè)防火墻進(jìn)行區(qū)域隔離,并實施協(xié)議白名單;通過集中管理平臺進(jìn)行大數(shù)據(jù)學(xué)習(xí)建模,結(jié)合審計設(shè)備、主機防護(hù)設(shè)備、工業(yè)防火墻部署工控行為白名單,全方位保護(hù)網(wǎng)絡(luò)的安全。
經(jīng)過在核電站的實踐驗證,采用白名單技術(shù)防護(hù)的網(wǎng)絡(luò)區(qū)域,可以有效防止惡意軟件的破壞,阻止惡意報文的傳輸,保護(hù)核電廠儀控系統(tǒng)的安全。
經(jīng)過多年發(fā)展,采用白名單技術(shù)的工控安全產(chǎn)品已取得長足發(fā)展,獲得國內(nèi)外安全從業(yè)者的認(rèn)可[10-14]。大量現(xiàn)場應(yīng)用結(jié)果表明,該技術(shù)產(chǎn)品具有高安全、高可靠、低功耗、省時省力的特性。白名單技術(shù)產(chǎn)品不僅僅適用于普通工業(yè)現(xiàn)場,更有望在不久的將來成為核電廠儀控系統(tǒng)的“標(biāo)配”。
在核電廠的業(yè)務(wù)場景,操作系統(tǒng)、應(yīng)用軟件和業(yè)務(wù)操作都比較穩(wěn)定,變化較少,對可靠性要求極高。采用白名單技術(shù)的工控主機防護(hù)軟件、工業(yè)防火墻、審計設(shè)備等產(chǎn)品,在防護(hù)功能上與傳統(tǒng)黑名單產(chǎn)品相似,但是更適合核電廠的特殊場景,最終防護(hù)效果更好、對生產(chǎn)系統(tǒng)的影響更小。采用白名單技術(shù)的安全產(chǎn)品應(yīng)該被納入核電廠整體安全解決方案的備選列表,并得到越來越廣泛的應(yīng)用。