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