安全動(dòng)態(tài)

FireEye報(bào)告:揭露新型工控系統(tǒng)惡意軟件TRITON

來源:聚銘網(wǎng)絡(luò)    發(fā)布時(shí)間:2017-12-24    瀏覽次數(shù):
 

信息來源:FreeBuf

Mandiant最近針對(duì)中東某企業(yè)關(guān)鍵基礎(chǔ)設(shè)施遭受的攻擊事件進(jìn)行了安全響應(yīng),攻擊者通過部署特制的惡意軟件來控制目標(biāo)工業(yè)安全系統(tǒng),由于工業(yè)安全系統(tǒng)具備對(duì)工控系統(tǒng)的緊急關(guān)閉功能,因此我們有足夠信心斷定,該惡意軟件是攻擊者針對(duì)工控系統(tǒng)的硬件破壞或突然關(guān)停而開發(fā)的。目前,我們把這種惡意軟件命名為TRITON,攻擊者利用TRITON攻擊框架能與施耐德電氣公司的Triconex安全儀表系統(tǒng)控制器(SIS)形成通信交互,盡管我們暫時(shí)還未追溯定位到實(shí)際的攻擊者,但我們肯定該攻擊事件的幕后黑手為國(guó)家支持型黑客。

TRITON特點(diǎn)

TRITON是繼2010年針對(duì)伊朗的Stuxnet和2016年針對(duì)烏克蘭的Industroyer后,為數(shù)不多可以被公開檢測(cè)識(shí)別到的工控系統(tǒng)惡意軟件系列之一,TRITON與這些攻擊類似,它可以破壞工控系統(tǒng)安全機(jī)制并執(zhí)行預(yù)期惡意功能,從而造成嚴(yán)重的物理破壞攻擊后果。

2017-12-19_160520.png

攻擊事件概述

攻擊者通過獲得安全儀表系統(tǒng)(SIS)工作站的遠(yuǎn)程訪問控制權(quán)限,對(duì)SIS控制器進(jìn)行了重編譯,進(jìn)而在SIS系統(tǒng)中部署了TRITON攻擊框架。

此次攻擊事件中,一些SIS控制器都形成了失效保護(hù)狀態(tài)(failed safe state),造成工控進(jìn)程的自動(dòng)關(guān)閉,因此引起了管理者的察覺并展開了調(diào)查。調(diào)查后發(fā)現(xiàn),當(dāng)應(yīng)用代碼在冗余處理單元之間驗(yàn)證失效時(shí)(可引發(fā)量產(chǎn)診斷錯(cuò)誤消息),就會(huì)導(dǎo)致SIS控制器進(jìn)入安全關(guān)閉狀態(tài)。

我們確信攻擊者希望隱蔽執(zhí)行自動(dòng)關(guān)閉操作造成對(duì)工控系統(tǒng)的物理破壞,主要基于以下幾方面原因:

修改安全儀表系統(tǒng)(SIS)可以導(dǎo)致功能異常,增加物理破壞機(jī)率

TRITON會(huì)修改SIS控制器中的應(yīng)用程序內(nèi)存導(dǎo)致驗(yàn)證失效

驗(yàn)證失效狀態(tài)在TRITON處于運(yùn)行狀態(tài)時(shí)發(fā)生

工控網(wǎng)絡(luò)中存在的孤立或外部條件不可能造成這種錯(cuò)誤

攻擊溯源

針對(duì)此次攻擊事件,F(xiàn)ireEye目前還暫未準(zhǔn)確溯源定位到實(shí)際的攻擊者,但可以肯定的是這是國(guó)家支持型的黑客攻擊。攻擊以關(guān)鍵基礎(chǔ)設(shè)施為目標(biāo),具備持續(xù)性,且缺乏明確的經(jīng)濟(jì)利益目的,結(jié)合創(chuàng)建TRITON攻擊框架所需的充足技術(shù)資源來看,這明顯是國(guó)家黑客形為??梢詮囊韵聨追矫鎭碜鞒雠袛啵?

攻擊者以SIS系統(tǒng)為目標(biāo),體現(xiàn)出其希望造成嚴(yán)重物理破壞的目的,這與網(wǎng)絡(luò)犯罪集團(tuán)行為不符。

攻擊者在獲得SIS系統(tǒng)后不久就部署了TRITON,表示他們已經(jīng)預(yù)先構(gòu)建并測(cè)試了需要訪問硬件和軟件的工具。 TRITON也被設(shè)計(jì)為使用專有的TriStation協(xié)議進(jìn)行通信,該協(xié)議沒有被公開記錄,暗示對(duì)手獨(dú)立地反向設(shè)計(jì)了該協(xié)議。

攻擊者在取得SIS系統(tǒng)控制權(quán)后不久就部署了TRITON,明顯表示他們已經(jīng)預(yù)先創(chuàng)建并測(cè)試過該惡意工具的軟硬件運(yùn)行環(huán)境;另外,TRITON框架還被設(shè)置為使用專門未公開的TriStation協(xié)議來進(jìn)行通信,可以說明,攻擊對(duì)手已經(jīng)可以完全獨(dú)立地逆向該通信協(xié)議。

這種以關(guān)鍵基礎(chǔ)設(shè)施為目標(biāo)的破壞、中斷或癱瘓攻擊特征,與俄羅斯、伊朗、朝鮮、美國(guó)和以色列在全球進(jìn)行的大量網(wǎng)絡(luò)攻擊和偵察活動(dòng)相符,這種攻擊不會(huì)馬上造成立竿見影的破壞效果,它會(huì)形成駐留為后續(xù)的深入攻擊進(jìn)行潛伏。

過程控制和安全儀表系統(tǒng)(Safety Instrumented Systems)背景

現(xiàn)代工業(yè)過程控制和自動(dòng)化系統(tǒng)依靠各種先進(jìn)的控制系統(tǒng)和安全功能,這些系統(tǒng)和功能通常被稱為工業(yè)控制系統(tǒng)(ICS)或操作技術(shù)(OT)。

分布式控制系統(tǒng)(DCS)為操作人員提供遠(yuǎn)程監(jiān)視和控制工業(yè)過程的能力。它是由計(jì)算機(jī)、軟件應(yīng)用程序和控制器組成的計(jì)算機(jī)控制系統(tǒng)。工程工作站是用來對(duì)控制系統(tǒng)應(yīng)用和其他控制系統(tǒng)設(shè)備進(jìn)行配置、維護(hù)和診斷的獨(dú)立計(jì)算機(jī)。

安全儀表系統(tǒng)(Safety Instrumented Systems,SIS)是一個(gè)獨(dú)立的控制系統(tǒng),可獨(dú)立監(jiān)控受控過程狀態(tài)。如果過程超過定義危險(xiǎn)狀態(tài)的參數(shù),則SIS會(huì)嘗試將過程恢復(fù)到安全狀態(tài)或自動(dòng)執(zhí)行過程的安全關(guān)閉。如果SIS和DCS控制都失效,那么只有看工業(yè)設(shè)施的安全設(shè)計(jì)了,如對(duì)設(shè)備(e.g防爆片)的機(jī)械保護(hù)、物理警報(bào)、應(yīng)急程序和其他危險(xiǎn)狀況的緩解機(jī)制。

資產(chǎn)設(shè)備管理者會(huì)采用不同方法將工廠的DCS與SIS系統(tǒng)連接起來,傳統(tǒng)方法是依賴通信基礎(chǔ)設(shè)施和控制策略的隔離原則。至少在過去十年間,基于低成本、易用性和信息交流目的,出現(xiàn)了集成DCS和SIS設(shè)計(jì)的趨勢(shì)。此次TRITON攻擊反映出了DCS與SIS集成設(shè)計(jì)雙向通信的安全風(fēng)險(xiǎn)。

安全儀表系統(tǒng)(SIS)威脅建模和攻擊場(chǎng)景

針對(duì)工控系統(tǒng)(ICS)破壞性攻擊的生命周期與其他類型網(wǎng)絡(luò)攻擊類似,但有幾個(gè)關(guān)鍵的區(qū)別。 首先,攻擊者的任務(wù)是破壞業(yè)務(wù)流程而不是竊取數(shù)據(jù);其次,攻擊者必須進(jìn)行OT偵察,并有足夠的專業(yè)工程知識(shí)來了解目標(biāo)系統(tǒng)工業(yè)過程,以實(shí)現(xiàn)對(duì)其成功的控制利用。

上圖表示過程控制環(huán)境中的網(wǎng)絡(luò)安全和安全控制之間的關(guān)系,即使網(wǎng)絡(luò)安全措施失效,安全控制措施也會(huì)防止物理破壞,為了最大化實(shí)現(xiàn)物理破壞,網(wǎng)絡(luò)攻擊者還需繞過一些安全控制手段。

以下安全儀表系統(tǒng)(SIS)威脅模型揭露了多種攻擊者可用的攻擊路徑:

攻擊路徑 1: 使用SIS系統(tǒng)進(jìn)行過程關(guān)閉。攻擊者重編譯SIS邏輯控制器導(dǎo)致其跳閘或關(guān)閉一個(gè)處于安全狀態(tài)的控制過程,換句話說,也能觸發(fā)誤報(bào)。

目的:導(dǎo)致停機(jī)后造成經(jīng)濟(jì)損失,或引起停工后復(fù)雜的啟動(dòng)程序。

攻擊路徑 2: 重編譯SIS以支持不安全狀態(tài)。攻擊者重編譯SIS邏輯控制器,讓其支持不安全狀態(tài)的存在。

目的:由于SIS功能喪失,增加的危險(xiǎn)狀況會(huì)導(dǎo)致嚴(yán)重物理后果風(fēng)險(xiǎn),如對(duì)設(shè)備、產(chǎn)品、環(huán)境和人員安全的影響。

攻擊路徑 3:重編譯SIS控制器,當(dāng)使用DCS時(shí),讓其支持不安全的危險(xiǎn)狀態(tài)。攻擊者可以控制DCS進(jìn)程形成危險(xiǎn)狀態(tài),并阻止SIS系統(tǒng)正常運(yùn)行。

目的:對(duì)人身安全、工廠環(huán)境或設(shè)備造成破壞,其影響程度取決于過程和設(shè)備設(shè)計(jì)的物理限制條件。

攻擊意圖分析

我們認(rèn)為攻擊者的長(zhǎng)期目的是造成物理破壞,基于這樣的事實(shí),攻擊者具備了操縱過程或關(guān)閉設(shè)備的能力后,首先會(huì)在DCS系統(tǒng)上形成駐留,以伺機(jī)入侵SIS系統(tǒng)。對(duì)DCS和SIS系統(tǒng)的入侵會(huì)導(dǎo)致物理和機(jī)械保障措施的最大程度破壞。

一旦滲透進(jìn)入SIS網(wǎng)絡(luò)后,攻擊者會(huì)立即部署預(yù)先構(gòu)建的TRITON攻擊框架,利用TriStation協(xié)議與SIS控制器發(fā)起通信,攻擊者可以發(fā)送停止命令形成進(jìn)程關(guān)閉,或向SIS控制器上傳惡意代碼造成保護(hù)失效。與此不同的是,攻擊者為了在SIS控制器中形成功能控制邏輯,會(huì)在一段時(shí)間內(nèi)反復(fù)進(jìn)行多次嘗試,即使由于攻擊腳本的條件檢查提示出錯(cuò),但攻擊者還會(huì)繼續(xù)嘗試,這也表明攻擊者的最終意圖就是要造成控制進(jìn)程的意外關(guān)閉。

值得注意的是,我們?cè)啻伟l(fā)現(xiàn)了一些長(zhǎng)期入侵工控系統(tǒng)(ICS)但并未造成系統(tǒng)破壞或中斷的攻擊事件,如長(zhǎng)年入侵西方ICS的俄羅斯沙蟲團(tuán)隊(duì)(Sandworm)等組織,他們似乎只是入侵,還沒表現(xiàn)出明顯的指哪打哪的系統(tǒng)中斷攻擊能力。

TRITON惡意軟件功能

TRITON攻擊框架具備多種惡意功能,包括程序讀寫、各種功能讀寫以及查詢SIS控制器狀態(tài),但trilog.exe樣本只具備某些功能,不包括TRITON的全面?zhèn)刹旃δ堋?

TRITON惡意軟件具備與Triconex SIS控制器進(jìn)行通信的能力(如發(fā)送特定指令,實(shí)現(xiàn)關(guān)?;騼?nèi)容讀?。?,并可用攻擊者定義的Payload對(duì)其進(jìn)行遠(yuǎn)程重編譯。Mandiant分析的TRITON樣本中包含了攻擊者制作的運(yùn)行Triconex控制器執(zhí)行表的程序,該樣本包含了一個(gè)正常且監(jiān)控控制器運(yùn)行狀態(tài)的合法程序,如果控制器發(fā)生失效故障,TRITON會(huì)嘗試返回一個(gè)偽造的正常運(yùn)行狀態(tài);如果控制器發(fā)生故障而在規(guī)定時(shí)間內(nèi)未恢復(fù)到安全狀態(tài)時(shí),則該樣本將會(huì)用無效數(shù)據(jù)覆蓋SIS控制器中的惡意程序形成隱蔽。

TRITON攻擊技術(shù)分析

Fig4 HR.png

TRITON攻擊框架會(huì)被部署在運(yùn)行有Windows操作系統(tǒng)的SIS工程工作站中,其中的惡意軟件偽裝成合法的用于查看日志的TriStation Triconex Trilog應(yīng)用程序,并通過一個(gè)Py2EXE編譯后的Python腳本進(jìn)行植入,而該P(yáng)ython腳本程序又依賴于一個(gè)包含標(biāo)準(zhǔn)Python庫(kù)和開源庫(kù)的zip壓縮文件,以及攻擊者開發(fā)的用于與Triconex控制器交互的Triconex攻擊框架。 與可執(zhí)行的惡意程序一起,還會(huì)生成兩個(gè)二進(jìn)制文件inject.bin(惡意功能代碼)和imain.bin(惡意控制邏輯)作為攻擊控制器的Payload,這兩個(gè)文件名也被硬編碼寫入到了Py2EXE編譯的python腳本中。

Trilog.exe在命令行中會(huì)選擇目標(biāo)Triconex設(shè)備IP地址作為攻擊選項(xiàng),它沒有利用底層TRITON庫(kù)的Triconex設(shè)備發(fā)現(xiàn)功能,而是為環(huán)境中的每個(gè)目標(biāo)控制器分別調(diào)用trilog.exe實(shí)例,一旦被調(diào)用,trilog.exe將檢查控制器狀態(tài),然后讀取由TriStation協(xié)議公開的配置信息,如果控制器處于運(yùn)行狀態(tài),trilog.exe會(huì)把兩個(gè)Payload文件inject.bin和imain.bin進(jìn)行編碼,并將它們傳遞給通信庫(kù),以便將其附加到控制器的程序存儲(chǔ)器和執(zhí)行表中。

當(dāng)Payload文件被插入Triconex控制器內(nèi)存后,腳本開始倒計(jì)時(shí),并執(zhí)行控制器狀態(tài)定期檢查,如果檢測(cè)到控制器錯(cuò)誤,通信庫(kù)的方法SafeAppendProgramMod會(huì)嘗試使用TriStation協(xié)議命令將控制器重置為之前狀態(tài),如果檢測(cè)到控制器失效,trilog.exe會(huì)向內(nèi)存嘗試寫入一個(gè)小的“虛擬”程序。我們認(rèn)為這是一種反取證技術(shù),用于隱藏Triconex控制器中的攻擊代碼。

Mandiant與被攻擊企業(yè)合作,利用實(shí)驗(yàn)室環(huán)境中有效的Triconex控制器運(yùn)行trilog.exe后,在惡意軟件中發(fā)現(xiàn)了一個(gè)防止Payload文件持久駐留的檢查條件,Mandiant通過修改攻擊腳本刪除該檢查條件后,Payload文件則會(huì)持久駐留于控制器內(nèi)存中,且不影響控制器運(yùn)行。

TRITON可以執(zhí)行合法TriStation應(yīng)用程序的TriStation協(xié)議,并通過該協(xié)議來配置SIS控制器。

另外,攻擊者還創(chuàng)建了一個(gè)名為TsHi的高層接口,通過該接口使用TRITON框架實(shí)現(xiàn)攻擊腳本執(zhí)行。TsHi接口暴露了惡意軟件的偵察和攻擊能力,這些功能實(shí)現(xiàn)通常需要接收來自用戶的二進(jìn)制數(shù)據(jù),并在數(shù)據(jù)傳遞到低級(jí)庫(kù)中以進(jìn)行序列化到網(wǎng)絡(luò)的過程之前,會(huì)進(jìn)行代碼“簽名”和校驗(yàn)步驟。

另一個(gè)攻擊者編寫的模塊TsBase則包含了TsHi調(diào)用函數(shù),它能將攻擊者的預(yù)期操作轉(zhuǎn)化為相應(yīng)的TriStation協(xié)議功能代碼。對(duì)于某些功能而言,它還可將數(shù)據(jù)打包填充為適當(dāng)格式。

TsLow攻擊模塊實(shí)現(xiàn)了TriStation UDP通信協(xié)議。TsBase庫(kù)則主要依賴ts_exec方法,該方法采用功能代碼和預(yù)期響應(yīng)代碼,并通過UDP將Payload命令序列化,它還會(huì)檢查控制器對(duì)期望值的響應(yīng),并當(dāng)檢查成功或失敗時(shí),返回相應(yīng)的數(shù)據(jù)結(jié)構(gòu)表示對(duì)象。

TsLow中還包含了用于檢查目標(biāo)控制器連通性的連接測(cè)試方法,如果調(diào)用沒發(fā)現(xiàn)目標(biāo),它會(huì)運(yùn)行設(shè)備發(fā)現(xiàn)功能detect_ip,該功能使用IP廣播包方式,通過腳本調(diào)用,在TriStation協(xié)議中執(zhí)行“ping”消息,來探測(cè)控制器。

防護(hù)建議

為避免遭受TRITON類攻擊,資產(chǎn)設(shè)備管理者可以考慮以下幾種防護(hù)措施:

以技術(shù)可行方式,將儀表安全系統(tǒng)網(wǎng)絡(luò)與過程控制和信息系統(tǒng)網(wǎng)絡(luò)隔離,能對(duì)SIS控制器執(zhí)行編程的工程工作站不應(yīng)與其它任何DCS過程控制或信息系統(tǒng)形成雙宿網(wǎng)絡(luò);

充分利用對(duì)安全控制器進(jìn)行控制編程的硬件功能,這些功能通常采用物理鑰匙形成交換控制,在Triconex控制器上,除了預(yù)定的編程事件期間,其它時(shí)候,鑰匙不應(yīng)處于編程模式狀態(tài);

對(duì)鑰匙關(guān)鍵位置變化實(shí)施變更管理措施,定期審核當(dāng)前的關(guān)鍵狀態(tài);

對(duì)于依賴SIS系統(tǒng)提供數(shù)據(jù)的任何應(yīng)用程序,應(yīng)使用單向網(wǎng)關(guān)而不是雙向網(wǎng)絡(luò)進(jìn)行連接;

在任何通過TCP / IP訪問SIS系統(tǒng)的服務(wù)器或工作站終端上,實(shí)行嚴(yán)格的訪問控制和應(yīng)用程序白名單機(jī)制;

監(jiān)控ICS系統(tǒng)異常的網(wǎng)絡(luò)通信流量。

下圖為Triconex系統(tǒng)主機(jī)架鑰匙開關(guān):

IoC威脅指標(biāo)

Indicators


ioc1.png

ioc2.png



 
 

上一篇:中國(guó)電信告別程控交換 開啟中國(guó)全光高速新時(shí)代

下一篇:2017年12月24日 聚銘安全速遞