工業4.0促使了智慧工廠的誕生,大幅改善了機械加工流程,但卻也為網路犯罪集團開啟了一扇大門讓駭客有機會掌控聯網的加工設備,如電腦數值控制(Computer Numerical Control, CNC)工具機。為此,工廠需要特別留意CNC工具機的潛在資安威脅。
工業4.0已經改變了工廠的作業方式,它宣告了一種採用創新技術,將企業製造流程各層面最佳化的時代來臨,其中也包括CNC工具機這類加工設備。CNC工具機在生產線上扮演著非常重要的角色,因為它們可透過不同旋轉軸上的刀具,快速而精準地切削出形狀複雜的零件。CNC工具機可根據控制器參數化程式來移動刀具,這些參數可依據生產規格而輕易修改,所以只要一台工具機就能透過不同的程式來生產各種不同的產品。
在工業4.0環境下,各種製造設備(如CNC工具機)現在都具備聯網與智慧連線功能,製造業也因此縮短了停機和重新設定的時間。但創新是雙面刃,隨著聯網CNC工廠日益成為一種常態,聯網設備也意外成為網路駭客用來癱瘓營運、竊取珍貴資料或暗中監視智慧工廠的攻擊目標。所以,製造業很重要的一點就是要知道工業設備彼此連線可能帶來哪些危險。
在本篇趨勢科技與Celada合作的研究當中,研究了一系列CNC控制器可能遭受攻擊的情境,包括使用模擬器與實際設備。文中挑選了四家全球知名且擁有廣大市場經驗、或是技術領先、在製造業擁有廣大使用者的廠商,針對其CNC控制器進行了各種實驗。美國網路資安與基礎架構安全局(Cybersecurity and Infrastructure Security Agency, CISA)旗下的工業控制系統網路緊急應變小組(Industrial Control Systems Cyber Emergency Response Team, ICS-CERT)提供此研究不少協助,扮演研究團隊與這些廠商之間的討論橋樑。為了讓漏洞揭露過程更加嚴謹,研究團隊迅速通報了相關廠商,第一家廠商的聯繫時間可追溯至2021年11月。從那時起,不論是改善文件說明、聯繫相關工具機製造商,或是修補相關漏洞、在產品中加入更多安全功能,所有廠商都採取了一些對應措施,希望為終端使用者提供更安全的解決方案。團隊在研究過程當中找到了幾種攻擊類型,並將研究發現分享給廠商。而ICS-CERT也根據這份研究發布了Haas和Heidenhain CNC控制器相關資安風險的公告。以下說明這些攻擊類型之下的一些潛在的攻擊手法,請詳見表1。
可能造成損害的攻擊
CNC工具機所用的刀具幾何數值如長度與半徑,需要經過精密測量以確保刀具適合製造特定產品。這些尺寸必須由操作人員事先測量好,或在CNC工具機校正階段自動完成。但如果駭客篡改了這些參數,就可能對工具機本身、工具機零件或正在加工的產品造成損害。研究中發現所有四家CNC控制器廠商對這類攻擊都無法倖免。在設計的攻擊情境當中,團隊製作了一個3D列印的塑膠刀具來示範CNC工具機本身的刀具,如何因為CNC控制器參數設定不當,將刀具磨耗值設成-10mm,而撞上正在加工的材料,造成刀具損毀(圖1)。
阻斷服務攻擊
本節說明駭客試圖干擾生產流程而拖慢工廠效率的情境。在團隊研究發現的所有攻擊類型當中,阻斷服務(DoS)攻擊是潛在攻擊手法最多的一類,包括以下幾種。
觸發客製化警報
假警報是另一種駭客可能干擾製造流程的方式。CNC工具機都內建警報功能,可在硬體故障時發出警報,此外也提供了一些客製化警報給軟體錯誤使用。當這些警報響起時,CNC工具機就會停止運作,必須由操作人員排除狀況之後才能繼續。假使駭客已經滲透到連網工廠內部,就可能觸發這類軟體相關警報,讓生產作業立刻中止。研究當中,團隊發現有兩家的CNC控制器可能遭到這類攻擊。
改變刀具幾何數值
CNC工具機刀具的幾何數值會逐漸改變,因為刀刃會越用越鈍。CNC工具機使用磨耗(Wear)參數來補償這項變化並重新定位工具,以維持生產的品質。駭客只需修改刀具的幾何數值,就能引發各種不同的攻擊,包括DoS在內。例如駭客可將立式銑床的磨耗參數設定成比刀具本身還長,這樣刀具就會在一直半空中旋轉而接觸不到要加工的材料。在團隊的測試中,四家CNC控制器廠商都可能遭到這類攻擊。
勒索病毒
CNC工具機也無法倖免於勒索病毒攻擊。在某種情況下,駭客可將CNC工具機鎖定或將檔案加密,這等於讓工廠在滿足駭客要求之前都無法繼續生產。駭客發動索病毒攻擊的方式包括,透過無安全認證的網路共用資料夾存取CNC工具機的檔案、使用惡意應用程式發出作業系統呼叫,或是在工具機上植入一個腳本將其畫面鎖住(圖2) 。測試結果顯示,四家控制器廠商有三家可能遭到勒索病毒攻擊。
駭客可能挾持控制器
駭客可挾持CNC控制器來控制生產流程,其挾持的方式有幾種。
改變刀具幾何數值
這類攻擊當中,駭客相當熟悉製造的流程,他們會篡改CNC控制器的設定來改變刀具的幾何數值,讓加工後的成品出現細微的瑕疵。在實驗過程當中,團隊撰寫了一個程式讓CNC工具機在一塊材料上刻出5.05mm深的紋路,然後發動攻擊來修改程式中的刀具磨耗值,讓CNC工具機刻出來的深度只達到4.80mm(圖3)。類似這樣的瑕疵,有時可能小到連品管流程都無法察覺,最後導致產品必須召回,損失慘重,甚至損及製造商的信譽。團隊測試的四家CNC控制器廠商都可能遭到這類挾持攻擊。
挾持參數化程式
另一種駭客造成生產瑕疵的方法是挾持CNC控制器的參數化程式。要這麼做,駭客必須將程式的變數設成任意值,這樣就會讓生產出來的產品無法達到規格要求。例如團隊對CNC控制器發動模擬攻擊,讓原本應該在材料上鑽出2個孔的程式(圖4)最後鑽出了25個孔(圖5)。團隊測試的四家廠商都可能遭到這類攻擊。
資料竊盜
CNC工具機當中含有大量可能吸引駭客覬覦的資料,駭客可能透過各種方式來竊取這些資訊。
竊取程式碼
用來操作CNC工具機的參數化程式,可說是製造商最機密的智慧財產之一,因為這當中包含了如何製造某項零件的詳細數據。駭客可經由無安全防護的網路從遠端存取連網CNC控制器執行中的程式,或者在工具機控制器內部安裝一個惡意程式。由於這些程式是採用G-code撰寫,而且不須經過組譯,所以相當容易被逆向工程破解。實驗發現某個暴露在網路上的CNC工具機監控介面MTConnect可能被駭客利用,駭客可利用這項服務來竊取CNC控制器所執行的原始程式碼(圖6)。研究測試的四家廠商有三家可能遭到這類攻擊。
竊取生產資訊
CNC控制器含有可幫助製造商降低成本以及遠端追蹤生產流程的珍貴資訊,其中包括生產產品時所用到的工作程式、工具、生產速率等。駭客可經由無安全認證或可存取任何資源的特殊呼叫,從CNC控制器擷取這些資料(圖7)。研究中測試的四家CNC控制器廠商都可能遭到這類攻擊。
強化CNC工具機防禦能力來對抗網路威脅
在數位轉型的過程當中,製造商可運用各種新興技術來創造競爭優勢,但卻也可能因而擴大自己的受攻擊面,讓網路犯罪集團有更多發動攻擊的機會。為了對抗生產線數位化所帶來的威脅,企業可採取以下幾項針對CNC控制器的最佳實務原則。
‧安裝工業入侵防護偵測系統(IPS/IDS),即時監控網路流量來偵測惡意活動。
‧實施網路分割,限制唯有真正需要的使用者才能存取網路,例如:終端使用者與CNC工具機操作人員。此外,一些標準的資安技術,如:虛擬區域網路(VLAN)和防火牆,也有助於降低CNC工具機介面暴露在外而遭不當存取的機會。
‧套用最新修補,讓CNC工具機用到的軟體、服務和應用程式隨時保持更新,防堵駭客可能攻擊的漏洞。
‧根據控制器製造商的指引或建議正確設定CNC工具機的組態,例如啟用加密與認證的建議。
(本文作者任職於趨勢科技)