該rootkit實現(xiàn)了對可編程邏輯控制器(PLC)輸入/輸出(I/O)接口的新攻擊。
研究人員設(shè)計出新的惡意軟件攻擊方式,針對可編程邏輯控制器(PLC),利用的是微處理器中的架構(gòu)缺陷,可規(guī)避現(xiàn)有檢測機制。
PLC是專用嵌入式計算機,工廠、電站、煉油廠、公共設(shè)施和其他工業(yè)裝置都需要PLC來對各種物理過程進行控制和監(jiān)視。它通過由I/O引腳組成的接口與其他設(shè)備進行通信,比如傳感器、閥門、電機等。該攻擊修改的就是這一通信接口的引腳配置。
11月3號在倫敦舉行的黑帽歐洲安全大會上將展示該攻擊方法。荷蘭特溫特大學(xué)分布式與嵌入式系統(tǒng)安全小組博士研究生阿里·阿巴斯,巴黎網(wǎng)絡(luò)安全公司Quarkslab研發(fā)工程師馬吉德·哈舍米,是該攻擊方法的開發(fā)者。
該I/O攻擊的一個版本被稱為引腳配置,在PLC操作系統(tǒng)不知道的情形下用惡意代碼切換I/O引腳配置,從輸出改成輸入或反之。
舉個例子,假設(shè)連到某閥門的PLC,可通過向配置成輸出的I/O引腳發(fā)送信號,來開啟或關(guān)閉閥門。該PLC同時通過另一條配置成輸入的引腳來接收傳感器的壓力讀數(shù)。PLC邏輯是監(jiān)視傳感器讀數(shù),在需要的時候自動開啟閥門釋放壓力。
攻擊者注入到該PLC的惡意代碼可重配置輸出引腳成輸入,阻止PLC邏輯向該引腳輸出信號,導(dǎo)致閥門不能開啟。還可以重配置輸入引腳成輸出,發(fā)送虛假數(shù)據(jù)。結(jié)果將會是:PLC向監(jiān)視軟件報告稱自己已經(jīng)打開了閥門且壓力正在下降——拜攻擊者提供的虛假讀數(shù)所賜,而實際上閥門并未開啟,壓力持續(xù)上升。
根本問題在于,嵌入式設(shè)備(如PLC)所用片上系統(tǒng)(SoC)中,并沒有用于引腳配置的硬件中斷,因而試圖向重配置成輸入的引腳進行寫入操作時,系統(tǒng)將不會收到任何報錯。這意味著,在運行時環(huán)境內(nèi)部執(zhí)行的PLC邏輯,不會崩潰,將會繼續(xù)表現(xiàn)得好像操作成功一樣——因為在操作系統(tǒng)虛擬內(nèi)存里,一切看起來都很正常。
這就是核心問題所在。似乎沒有哪家SoC廠商考慮過引腳配置反饋問題,對其他嵌入式系統(tǒng)而言這個問題好像也不是很重要。但對主要操作就是與I/O打交道的PLC而言,這個問題就超級重要了,會引發(fā)各種問題。
阿巴斯和哈舍米用rootkit實現(xiàn)了該攻擊技術(shù),作為可加載內(nèi)核模塊 (LKM)執(zhí)行。這種方式可繞過現(xiàn)有基于主機的入侵檢測和用于嵌入式系統(tǒng)的控制流完整性工具,比如 Autoscopy Jr 和Doppelganger。
兩位研究員的文章稱:“我們這種攻擊的創(chuàng)新性在于,我們不用修改PLC邏輯指令或固件,就可以操縱物理過程。這里面沒有利用到任何傳統(tǒng)函數(shù)鉤子技術(shù),也不用將整個惡意代碼載入動態(tài)內(nèi)存。”
將rootkit實現(xiàn)為LKM(基本上就是個驅(qū)動)的缺陷是:部署上需要root權(quán)限。因此,研究人員還開發(fā)出一個用現(xiàn)有PLC運行時功能來重配置引腳的版本,該變種可由內(nèi)存泄露漏洞利用實現(xiàn),直接加載惡意代碼到動態(tài)內(nèi)存。
另一種攻擊技術(shù)針對的是引腳復(fù)用功能(除通用輸入輸出(GPIO)外引腳還用作其他接口模式)。引腳的功能可在運行時被重分配,而且同樣的,也沒有任何反饋以告訴操作系統(tǒng)發(fā)生了什么。
阿巴斯說:“假設(shè)你通過引腳連到電機,并通過CPU里的脈沖寬度調(diào)制(PWM)控制器進行管理。我們的攻擊所做的,就是復(fù)用該引腳,將其功能改成其他什么東西,但CPU不會告訴負(fù)責(zé)將虛擬地址轉(zhuǎn)換成物理地址的內(nèi)存管理單元(MMU)說,‘嘿,這個引腳對應(yīng)的物理地址不可用了喲’。MMU會繼續(xù)試圖向改地址寫入,CPU則無視掉了該請求,但不會返回任何錯誤,PLC就依然認(rèn)為電機還是處于控制之下的——細(xì)思恐極。”
阿巴斯表示,此類I/O攻擊不會很快出現(xiàn),因為目前還有其他更容易方法侵入PLC。不過,隨著廠商在下一代PLC中植入更好的安全,最好謹(jǐn)記固件和邏輯操縱并非黑客的唯一攻擊選擇。
而且,不僅僅是PLC對I/O攻擊束手無策,所有用于I/O的嵌入式設(shè)備都在I/O攻擊風(fēng)險籠罩之下,比如汽車中用的電控單元(ECU),或電力工業(yè)用的智能電子裝置(IED)。
論文中,研究人員提出了I/O攻擊檢測新技術(shù)的兩個研究方向。他們未來工作的基礎(chǔ)就是這個。