網(wǎng)絡(luò)攻擊的基本步驟和方法同樣適用于工業(yè)控制系統(tǒng)網(wǎng)絡(luò);不過,由于工業(yè)控制系統(tǒng)網(wǎng)絡(luò)使用專門的系統(tǒng)和協(xié)議,其攻擊步驟和方法也有一定的差異性。
1、信息搜集
工業(yè)控制系統(tǒng)的網(wǎng)絡(luò)、協(xié)議和系統(tǒng)都比較特殊,攻擊者要搜集到相關(guān)信息并不容易,他們通常會(huì)從企業(yè)的公開信息、輪班時(shí)間表、合作服務(wù)和貿(mào)易往來,尤其是企業(yè)供應(yīng)商所提供產(chǎn)品的協(xié)議規(guī)范等入手。
遺憾的是,搜集這些信息變得越來越容易。如搜索引擎shodan,可以根據(jù)端口、協(xié)議、國(guó)家和其他條件搜索與互聯(lián)網(wǎng)關(guān)聯(lián)的所有設(shè)備。任何使用http、ftp、ssh或telnet協(xié)議的服務(wù)器、網(wǎng)絡(luò)交換機(jī)、路由器或其他網(wǎng)絡(luò)設(shè)備都可以被它檢索到,進(jìn)而輕易找到應(yīng)用scada協(xié)議的設(shè)備。雖然很難置辦整個(gè)控制系統(tǒng)來實(shí)施逆向工程,但攻擊者可以通過各種公開或地下渠道了解控制系統(tǒng)相關(guān)設(shè)備的漏洞和后門。
2、網(wǎng)絡(luò)掃描
利用網(wǎng)絡(luò)掃描可以通過端口、協(xié)議等信息快速定位scada和dcs系統(tǒng)。例如,如果掃描出某設(shè)備的502端口使用的是modbus協(xié)議,那么可以推斷,與該設(shè)備連接的很可能是hmi系統(tǒng)或某些監(jiān)管工作站。
值得注意的是,很多工業(yè)控制系統(tǒng)的網(wǎng)絡(luò)協(xié)議對(duì)時(shí)延非常敏感,如果硬掃描,很可能導(dǎo)致整個(gè)網(wǎng)絡(luò)癱瘓。所以,如果攻擊者只是想中斷系統(tǒng)服務(wù),那么,只要進(jìn)行簡(jiǎn)單的網(wǎng)絡(luò)掃描就可以達(dá)到目的;或者,若掃描發(fā)現(xiàn),實(shí)時(shí)協(xié)議只受到防火墻的保護(hù),那么只憑基本的黑客技術(shù),實(shí)施dos攻擊就可以奏效。如果攻擊者另有圖謀,那就只能采取軟掃描方式,以避免系統(tǒng)崩潰。
目標(biāo)系統(tǒng)定位之后,再根據(jù)工業(yè)控制系統(tǒng)網(wǎng)絡(luò)協(xié)議的特點(diǎn)進(jìn)行后續(xù)掃描,就可以獲取相關(guān)設(shè)備信息。如:可以根據(jù)以太網(wǎng)/ip流量識(shí)別出關(guān)鍵基礎(chǔ)設(shè)施保護(hù)(cip)設(shè)備及屬性;可以根據(jù)dnp3響應(yīng)結(jié)果發(fā)現(xiàn)dnp3的從屬地址;可以通過截取ethercat幀信息或sercosⅲ主站數(shù)據(jù)電報(bào)得到所有隸屬設(shè)備及其時(shí)間同步信息。
3、賬戶破解
很多工業(yè)控制系統(tǒng)是基于windows的,那些專門破解windows賬戶信息的方法和工具也可以應(yīng)用到工業(yè)控制系統(tǒng)上。尤其是運(yùn)行在windowsole和dcom上的opc系統(tǒng),只要通過主機(jī)認(rèn)證就可以全面控制opc環(huán)境。如果無法獲得底層協(xié)議認(rèn)證,也可以通過枚舉方式破解控制系統(tǒng)內(nèi)其他用戶和角色。如hmi用戶、iccp服務(wù)器憑據(jù)(雙向表)、主節(jié)點(diǎn)地址(任何主/從工業(yè)協(xié)議)、以往數(shù)據(jù)庫(kù)認(rèn)證信息等。
進(jìn)入hmi,就可以直接控制hmi管理的進(jìn)程,并竊取信息;進(jìn)入iccp服務(wù)器,就可以竊取或操縱控制中心之間的傳輸數(shù)據(jù)。所以說,從功能上將物理設(shè)備和邏輯設(shè)備全部隔離到安全區(qū)域是非常重要的。nist800-82(工業(yè)控制系統(tǒng)安全防護(hù)指南)還建議采用賬戶復(fù)合認(rèn)證方式。有了物理和數(shù)字的雙重保護(hù),賬戶就很難破解;也就是說,即使知道了某個(gè)用戶名或某個(gè)密碼,也很難通過賬戶認(rèn)證。
4、實(shí)施攻擊
正如前面所述,一次簡(jiǎn)單的網(wǎng)絡(luò)掃描就可以破壞工業(yè)控制系統(tǒng)網(wǎng)絡(luò)。因?yàn)楣I(yè)控制系統(tǒng)網(wǎng)絡(luò)協(xié)議非常敏感,信息流稍有變化,協(xié)議就會(huì)失效。所以,攻擊者利用硬掃描來破壞系統(tǒng),利用軟掃描來偵測(cè)信息。另外,也可以通過防火墻實(shí)施網(wǎng)絡(luò)掃描,因?yàn)橥ㄟ^防火墻的開放端口進(jìn)行分組交換更加容易。一旦掃描通過,黑客就可偽裝合法通訊,對(duì)控制網(wǎng)絡(luò)實(shí)施dos攻擊。
如果攻擊目的是侵入網(wǎng)絡(luò)或者潛伏網(wǎng)絡(luò),我們以“震網(wǎng)”(stuxnet)為例,了解黑客可能會(huì)應(yīng)用的滲透技術(shù)?!罢鹁W(wǎng)”是一種專門針對(duì)工業(yè)控制系統(tǒng)的、基于windows平臺(tái)的蠕蟲病毒,它具有多種掃描和滲透機(jī)制,能自我復(fù)制,傳播能力強(qiáng),極具隱身性。入侵網(wǎng)絡(luò)后,“震網(wǎng)”會(huì)根據(jù)不同環(huán)境做出不同反應(yīng),如在“企業(yè)環(huán)境”,它會(huì)尋找目標(biāo)hmi,然后入侵hmi;在“工業(yè)環(huán)境”,它會(huì)感染hmi,尋找目標(biāo)plcs,然后將惡意代碼植入其中;在“運(yùn)行環(huán)境”,它會(huì)利用plc尋找某個(gè)帶特定參數(shù)運(yùn)行的ieds,然后植入代碼,進(jìn)行破壞活動(dòng)。
簡(jiǎn)單來說,“震網(wǎng)”的攻擊手段可以總結(jié)為:以常見的黑客技術(shù)發(fā)動(dòng)初次攻擊;入侵scada和dcs后,利用其資源再侵入其他工業(yè)控制系統(tǒng);對(duì)“非路由”系統(tǒng)(如有plcs和ieds中組成的總線),它也可以進(jìn)行感染,并滲透進(jìn)更深層的工業(yè)生產(chǎn)過程中。