2010年,伊朗震網(wǎng)病毒事件爆光,揭開(kāi)了工業(yè)控制系統(tǒng)(“工控系統(tǒng)”)的“神秘面紗”,也拉開(kāi)了攻擊工控系統(tǒng)的序幕。隨后十年間爆發(fā)了眾多與工控系統(tǒng)關(guān)聯(lián)的安全事件,例如:針對(duì)電力、水利、能源、交通等基礎(chǔ)設(shè)施的定向攻擊或針對(duì)式攻擊(APT,advanced persistent threat),對(duì)社會(huì)秩序造成較大影響;針對(duì)生產(chǎn)制造等企業(yè)的定向攻擊,竊取商業(yè)機(jī)密,影響正常生產(chǎn);撒網(wǎng)式攻擊,特別是2017年席卷全球的WannaCry勒索病毒,工控系統(tǒng)亦成為“疫”區(qū),且在近兩年仍余波不斷。
此外,世界知名的黑客大會(huì),如BlackHat、DefCon等,紛紛將工控安全納入議題;2020年1月世界高水平黑客大賽Pwn2Own更首次將工控納入比賽??梢钥闯?,工控領(lǐng)域似乎正在成為“黑道”和“白道”的藍(lán)海,工控系統(tǒng)的漏洞和攻擊面也正隨著工業(yè)互聯(lián)網(wǎng)的發(fā)展,更多的暴露于攻擊者。
本文將從黑客角度透析攻擊方式和路徑,識(shí)別工控環(huán)境中易于被利用漏洞和脆弱性。
工業(yè)控制系統(tǒng)應(yīng)用領(lǐng)域
01 工業(yè)控制系統(tǒng)的整體攻擊思路
攻擊目標(biāo)
強(qiáng)目的性、針對(duì)式的攻擊通常是以破壞工控設(shè)備、造成工廠停產(chǎn)、工序異常、次品率增加,甚至火災(zāi)爆炸等嚴(yán)重后果為目標(biāo)?,F(xiàn)代工廠中,大部分現(xiàn)場(chǎng)生產(chǎn)設(shè)備都是由控制系統(tǒng)(如:PLC-可編程邏輯控制器、數(shù)控車床、DCS-分布式控制系統(tǒng))進(jìn)行現(xiàn)場(chǎng)操作。因此,攻擊者的目標(biāo)是通過(guò)直接或間接攻擊或影響控制系統(tǒng)而實(shí)現(xiàn)。下文將以工廠PLC舉例,闡述黑客對(duì)工控系統(tǒng)的攻擊思路。
黑客攻擊目標(biāo)舉例
攻擊場(chǎng)景
針對(duì)式直接攻擊
直接攻擊PLC,是指利用PLC存在的漏洞,或通過(guò)口令破解等方式繞過(guò)安全認(rèn)證,成功控制PLC并進(jìn)行指令修改,實(shí)現(xiàn)攻擊目的。當(dāng)前較多的PLC處于內(nèi)網(wǎng),尚不能通過(guò)互聯(lián)網(wǎng)直接訪問(wèn),在此情景下,直接攻擊一般通過(guò)物理接觸PLC,或通過(guò)內(nèi)部辦公網(wǎng)絡(luò)連接到PLC等方式而實(shí)現(xiàn)。隨著工廠智能化的提升,設(shè)備實(shí)現(xiàn)互聯(lián)互通,大量PLC系統(tǒng)連入互聯(lián)網(wǎng),將更易于黑客對(duì)PLC發(fā)起直接攻擊。
針對(duì)式間接攻擊
間接攻擊PLC,是指獲取PLC上一層監(jiān)控系統(tǒng)(如HMI、IPC、SCADA等)的控制權(quán),通過(guò)監(jiān)控系統(tǒng)向PLC發(fā)送惡意指令,或干擾監(jiān)控系統(tǒng)與PLC的正常通訊,實(shí)現(xiàn)攻擊目的。采用間接攻擊場(chǎng)景,通常是由于攻擊者無(wú)法直接接觸到控制系統(tǒng),或?qū)S內(nèi)部PLC系統(tǒng)了解有限,因而轉(zhuǎn)向攻擊存在大量攻擊者熟悉的IT部件的過(guò)程與監(jiān)控層系統(tǒng)。例如,攻擊者首先獲得IPC(工業(yè)計(jì)算機(jī))的控制權(quán),分析IPC和PLC之間的傳輸模式,構(gòu)造惡意指令,通過(guò)IPC傳輸給PLC,間接影響PLC的正常工作或阻斷生產(chǎn)狀態(tài)的監(jiān)控和預(yù)警。
非針對(duì)式攻擊
非針對(duì)式攻擊,或稱為撒網(wǎng)式攻擊,是指惡意程序利用系統(tǒng)或網(wǎng)絡(luò)的共性漏洞,無(wú)差異化感染系統(tǒng)并在內(nèi)網(wǎng)傳播,影響正常生產(chǎn)秩序。此類攻擊場(chǎng)景雖然不針對(duì)工控系統(tǒng),但由于目前工控環(huán)境的安全措施較為薄弱,使得撒網(wǎng)式攻擊在世界范圍內(nèi)屢屢得手。撒網(wǎng)式攻擊通常以病毒或惡意程序?yàn)橹鳎?,攻擊者利用員工安全意識(shí)薄弱,發(fā)送釣魚(yú)郵件,感染接收者的電腦,再利用網(wǎng)絡(luò)環(huán)境的脆弱性,在辦公網(wǎng)快速傳播,再蔓延至生產(chǎn)網(wǎng),感染具有共性漏洞的系統(tǒng),如IPC等,影響生產(chǎn)或造成破壞。
攻擊途徑
工控系統(tǒng)的攻擊途徑大體包含內(nèi)部發(fā)起和外部發(fā)起兩類。內(nèi)部發(fā)起又可分為自辦公網(wǎng)滲透到工廠網(wǎng)以及車間現(xiàn)場(chǎng)發(fā)起攻擊;外部發(fā)起包含針對(duì)式攻擊(如APT)和撒網(wǎng)式攻擊。
工控環(huán)境攻擊路徑
內(nèi)部發(fā)起
辦公網(wǎng)為起點(diǎn)
在辦公網(wǎng)環(huán)境內(nèi),使用nmap等工具掃描和獲取網(wǎng)段和資產(chǎn)信息,特別是常規(guī)工控系統(tǒng)和IT系統(tǒng)端口,Siemens 102,modbus 502,EthernetIP 44818、445、3389等;
利用漏洞對(duì)識(shí)別出的系統(tǒng)進(jìn)行攻擊,包含嗅探、權(quán)限繞過(guò)或提升、重放攻擊、口令猜解、指令注入、永恒之藍(lán)漏洞利用、口令猜解等;
成功獲取系統(tǒng)控制權(quán)后,嘗試以該主機(jī)為跳板,使用Pass the Hash等方式滲透其他系統(tǒng),找尋工控相關(guān)系統(tǒng)PLC、IPC和SCADA等,以實(shí)現(xiàn)攻擊目的;
若均未成功,轉(zhuǎn)向采用社會(huì)工程等方式進(jìn)一步獲取相關(guān)信息(如高權(quán)限賬號(hào)等);
同時(shí),考慮設(shè)法進(jìn)入工廠車間內(nèi)部,轉(zhuǎn)為現(xiàn)場(chǎng)攻擊方式;
一些集成控制系統(tǒng)的中控平臺(tái),或者內(nèi)網(wǎng)的一些類SCADA等組態(tài)控制系統(tǒng)的web應(yīng)用端或者dll、dat容易被劫持后形成工程師站的提權(quán)。
車間現(xiàn)場(chǎng)為起點(diǎn)
在車間內(nèi)發(fā)起攻擊工控系統(tǒng)是最為直接的方法,手段和選擇同樣是多樣化的:
進(jìn)入車間后,仔細(xì)觀察車間內(nèi)的情況,尋找IPC或者控制系統(tǒng)的位置,為后續(xù)攻擊嘗試做準(zhǔn)備。
攻擊嘗試一:
首選目標(biāo)為控制系統(tǒng)(如PLC),尋找是否存在未上鎖,或者網(wǎng)線接口暴露在外的設(shè)備;
嘗試了解相關(guān)的控制系統(tǒng)基本信息,例如所使用的品牌,版本等;
嘗試使用電腦在現(xiàn)場(chǎng)連接控制系統(tǒng),利用弱口令等脆弱性,嘗試惡意指令注入、權(quán)限繞過(guò)、重放攻擊等。
攻擊嘗試二:
嘗試對(duì)現(xiàn)場(chǎng)運(yùn)行的IPC或者HMI進(jìn)行攻擊,例如對(duì)運(yùn)行的IPC插入惡意U盤植入惡意程序;
針對(duì)未設(shè)置權(quán)限的IPC或者HMI直接操作,如修改控制系統(tǒng)的指令等惡意操作。
外部發(fā)起
針對(duì)式攻擊
APT 攻擊是典型的外部發(fā)起的針對(duì)式攻擊,攻擊過(guò)程包含
對(duì)目標(biāo)企業(yè)進(jìn)行信息收集以初步了解該企業(yè)的基本情況;
利用Google、Baidu等搜索引擎尋找暴露在互聯(lián)網(wǎng)上的域名或服務(wù)器;
利用爬蟲(chóng)技術(shù)盡可能獲取網(wǎng)站所有鏈接、子域名、C段等;
嘗試對(duì)網(wǎng)站應(yīng)用進(jìn)行高危漏洞利用,例如惡意文件上傳、命令執(zhí)行、SQL注入、跨站腳本、賬戶越權(quán)等;
嘗試獲取網(wǎng)站webshell,再提升至服務(wù)器權(quán)限;
以該服務(wù)器為跳板打入內(nèi)網(wǎng)環(huán)境,轉(zhuǎn)變?yōu)閮?nèi)部攻擊的模式;
通過(guò)從互聯(lián)網(wǎng)搜索外網(wǎng)郵箱的用戶名,根據(jù)企業(yè)的特點(diǎn),針對(duì)式地給這些用戶發(fā)送釣魚(yú)郵件,以中招的電腦為跳板打入內(nèi)部環(huán)境,轉(zhuǎn)變?yōu)閮?nèi)部攻擊的模式;
利用偽造門禁卡,或者偽裝參觀、面試人員或者尾隨內(nèi)部員工的方式物理進(jìn)入企業(yè)內(nèi)部,轉(zhuǎn)變成為內(nèi)部攻擊的模式。
撒網(wǎng)式攻擊
利用Google和Baidu等搜索引擎找出暴露在互聯(lián)網(wǎng)上企業(yè)的域名,若發(fā)現(xiàn)可以利用的漏洞則轉(zhuǎn)為針對(duì)式攻擊;
利用社工,盡可能多收集企業(yè)的員工的郵箱,大批量發(fā)送釣魚(yú)郵件;
使用Shodan搜索引擎,針對(duì)暴露在互聯(lián)網(wǎng)上的工控系統(tǒng)發(fā)起攻擊,成功后轉(zhuǎn)為內(nèi)部攻擊。
黑客攻擊鏈(Cyber Kill Chain)
一般來(lái)說(shuō),攻擊者通常以低成本、撒網(wǎng)式的攻擊手段,如發(fā)送釣魚(yú)郵件等社工式,開(kāi)始攻擊嘗試。當(dāng)受害者點(diǎn)開(kāi)附在釣魚(yú)郵件內(nèi)的惡意鏈接或惡意程序時(shí),“潘多拉之盒”就此打開(kāi),攻擊者將嘗試攻陷受害者的設(shè)備,并以此設(shè)備為跳板,打入企業(yè)內(nèi)網(wǎng)。如果工控網(wǎng)絡(luò)未能做到與辦公網(wǎng)絡(luò)的有效隔離,攻擊者可以在進(jìn)入辦公網(wǎng)絡(luò)后掃描并分析發(fā)現(xiàn)相關(guān)工控資產(chǎn)。當(dāng)前許多工廠工控環(huán)境抵御網(wǎng)絡(luò)攻擊的能力較弱,大多存在弱口令,權(quán)限設(shè)置不當(dāng),共享賬號(hào)和密碼,補(bǔ)丁和脆弱性管理缺失,網(wǎng)絡(luò)隔離和防護(hù)不充分等高危漏洞,使得攻擊者利用這些漏洞,在企業(yè)工控網(wǎng)內(nèi)大范圍、無(wú)阻攔、跨領(lǐng)域的對(duì)工控資產(chǎn)進(jìn)行攻擊,最終導(dǎo)致工業(yè)數(shù)據(jù)泄露、設(shè)備破壞、工序異常、次品率增加、火災(zāi)爆炸甚至威脅員工安全等嚴(yán)重后果,形成完整的黑客攻擊鏈。
02 工業(yè)控制系統(tǒng)能否有效抵御攻擊?
工控系統(tǒng)能否有效阻擊黑客攻擊,取決于攻守雙方的準(zhǔn)備和措施。目前來(lái)看,攻擊者更加積極研究工控系統(tǒng)漏洞和攻擊手段,而企業(yè)在當(dāng)下更著重于高效生產(chǎn)和數(shù)字化轉(zhuǎn)型,對(duì)工控安全的關(guān)注和投入相對(duì)滯后;加上工控系統(tǒng)的陳舊性和非標(biāo)準(zhǔn)性,使得暴露在攻擊者面前可利用的脆弱性較多,舉例如下:
組織與人員
未落實(shí)安全責(zé)任
管理層重視不足,部門間安全職責(zé)不清晰,無(wú)明確安全部門或崗位。
安全意識(shí)薄弱
員工對(duì)工控系統(tǒng)的安全意識(shí)相對(duì)薄弱,特別是生產(chǎn)或一線員工。傳統(tǒng)型企業(yè)的“隱匿式安全”(security by obscurity),認(rèn)為嚴(yán)格物理安全和訪問(wèn)管理即可確保安全,認(rèn)為未發(fā)生安全事件即是安全,這往往使得企業(yè)忽略對(duì)網(wǎng)絡(luò)安全的建設(shè),未能及時(shí)補(bǔ)救隱患。
管理與監(jiān)督
“經(jīng)驗(yàn)式”管理
工控系統(tǒng)自身缺乏安全設(shè)計(jì)與考量,是很多企業(yè)存在的普遍現(xiàn)象,通過(guò)實(shí)施適當(dāng)安全保障措施,可以有效彌補(bǔ)。但很多企業(yè)并沒(méi)有建立有效的安全策略和措施,僅依靠個(gè)人經(jīng)驗(yàn)和歷史經(jīng)驗(yàn)進(jìn)行管理。
應(yīng)急響應(yīng)機(jī)制缺失
缺少應(yīng)急響應(yīng)機(jī)制,出現(xiàn)突發(fā)事件時(shí)無(wú)法快速組織人力和部署應(yīng)對(duì)措施來(lái)控制事件進(jìn)一步蔓延,并在最短時(shí)間內(nèi)解決問(wèn)題和恢復(fù)生產(chǎn)。
缺少恰當(dāng)?shù)目诹畈呗?/p>
未設(shè)置恰當(dāng)?shù)目诹畈呗院凸芾?,如弱口令,共享口令,多臺(tái)主機(jī)或設(shè)備共用一個(gè)口令,以及口令共享給第三方供應(yīng)商等情形,增加密碼泄露風(fēng)險(xiǎn)。
缺乏安全審計(jì)日志
系統(tǒng)出現(xiàn)安全事件后,無(wú)法追蹤和分析事件源頭和原因,以避免類似情形的再次發(fā)生。
網(wǎng)絡(luò)與架構(gòu)
“防君子式”網(wǎng)絡(luò)隔離
內(nèi)部辦公網(wǎng)絡(luò)和工廠網(wǎng)絡(luò)缺乏有效隔離,未劃分安全域進(jìn)行防護(hù),導(dǎo)致辦公網(wǎng)絡(luò)的攻擊或病毒蔓延至工廠網(wǎng)絡(luò),造成生產(chǎn)影響。
不安全的通訊協(xié)議
工業(yè)控制協(xié)議非標(biāo)準(zhǔn)化,且大多存在安全隱患,例如CAN、DNP3.0、Modbus、IEC60870-5-101。
不安全的遠(yuǎn)程訪問(wèn)
為方便維修工程師和供應(yīng)商的遠(yuǎn)程調(diào)試,未對(duì)遠(yuǎn)程訪問(wèn)部署安全措施和監(jiān)控,此類遠(yuǎn)程訪問(wèn)功能可能是攻擊者利用率最高的漏洞之一。
復(fù)雜的結(jié)構(gòu)
工控系統(tǒng)的結(jié)構(gòu)相對(duì)于IT環(huán)境而言更為復(fù)雜,攻擊面較多。典型的工控環(huán)境一般會(huì)有以下組成部件:控制器(PLC、數(shù)控車床、DCS)、SCADA系統(tǒng)、工業(yè)計(jì)算機(jī)、工業(yè)軟件、HMI、網(wǎng)絡(luò)、交換機(jī)、路由器、工業(yè)數(shù)據(jù)庫(kù)等,其中任意一個(gè)環(huán)節(jié)或者部件出現(xiàn)問(wèn)題就有可能導(dǎo)致整個(gè)工控系統(tǒng)被攻擊。
主機(jī)與設(shè)備
認(rèn)證與授權(quán)
為了日常使用方便,重要控制系統(tǒng)未設(shè)置密碼、設(shè)置弱密碼或共用密碼,將密碼貼在現(xiàn)場(chǎng)機(jī)器上,這些“便利”往往也為攻擊者的入侵提供了極大的便利。
防病毒軟件
未安裝病毒防護(hù)軟件,未及時(shí)更新病毒庫(kù),非正版軟件等。
操作系統(tǒng)陳舊性
現(xiàn)在的工廠環(huán)境中,使用越來(lái)越多的計(jì)算機(jī)系統(tǒng),然而由于工業(yè)控制系統(tǒng)的更新迭代的時(shí)間相比于IT系統(tǒng)要長(zhǎng)很多,使得工業(yè)控制系統(tǒng)中存在大量陳舊的計(jì)算機(jī)系統(tǒng),如windows xp、windows 2003等操作系統(tǒng),存在大量可被攻擊利用的高危漏洞。
默認(rèn)配置
許多工廠在安裝設(shè)備時(shí),使用了默認(rèn)口令、默認(rèn)路徑,開(kāi)啟不必要且不安全的端口和服務(wù)等默認(rèn)配置。
離線設(shè)備管理
對(duì)于離線設(shè)備,往往認(rèn)為是安全的,忽視網(wǎng)絡(luò)安全保護(hù)措施。但隨著企業(yè)數(shù)字化的推進(jìn)或在業(yè)務(wù)需要時(shí)進(jìn)行網(wǎng)絡(luò)連接時(shí),此類設(shè)備可能會(huì)成為安全體系的短板和缺口。
物理防護(hù)
硬件調(diào)試接口
重要控制系統(tǒng)的機(jī)架未上鎖,或暴露在外的調(diào)試接口未有效防護(hù)。
物理端口
未對(duì)IPC等通用接口進(jìn)行有效管理或禁用,如USB、PS/2等外部接口,可能存在設(shè)備未授權(quán)接入風(fēng)險(xiǎn),導(dǎo)致病毒感染或者程序非法修改。
外部人員訪問(wèn)
人員進(jìn)出車間管控不嚴(yán),特別是外部人員,如供應(yīng)商等。
上述匯總的可以被攻擊者利用的部分脆弱性,企業(yè)可結(jié)合自身業(yè)務(wù)特點(diǎn)予以關(guān)注,短期考慮針對(duì)高風(fēng)險(xiǎn)漏洞采取一定的補(bǔ)償性措施,中長(zhǎng)期依據(jù)業(yè)務(wù)和數(shù)字化發(fā)展規(guī)劃,逐步建立起與業(yè)務(wù)和生產(chǎn)同步發(fā)展的工控安全管控體系。