《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > PLC鑰匙開關監控確保關鍵系統更安全

PLC鑰匙開關監控確保關鍵系統更安全

2021-08-28
來源: 網絡安全應急技術國家工程實驗室
關鍵詞: PLC鑰匙

  可編程邏輯控制器(PLC)的鑰匙開關或許不為人熟知,但其對IT/OT安全有重要的意義。不同品牌的PLC鑰匙開關擁有不同的位置,用來進行不同的操作和場景設置。當鑰匙開關位于權限較高的位置時,面臨被攻擊的風險就越高。因此保持對鑰匙開關位置的監控是必要的,當PLC鑰匙開關在操作過程中脫離正常狀態時,監控系統將發出警報提示操作人員。本文將首先介紹PLC鑰匙開關處于不同位置時,各種模式的差別,之后簡單介紹PLC鑰匙開關狀態檢測,接下來以Allen Bradley PLC為例,介紹其鑰匙開關邏輯檢測,最后介紹使用RSLinx和預定義屬性的鑰匙開關功能。本文編譯自Dragos 今年8月發布的一篇博客,在文章末尾將附上原文鏈接。

  可編程邏輯控制器(PLC)和安全儀表系統(SIS)控制器歷來包括一個外部開關,它們通常以鑰匙的形式存在,用于執行維護和故障排除。對于維護這些系統的自動化工程師和技術人員來說,鑰匙開關已變得司空見慣,因為這些開關會影響底層流程,他們清楚其在整個設備操作中的重要性。

  然而,除了控制系統和自動化支持人員之外,這些開關的位置對于操作人員來說相對未知或在很大程度上沒有考慮。這個情況一直持續到2017年,當時XENOTIME活動小組破壞了施耐德電氣的Triconex SIS控制器。TRISIS惡意軟件之所以能部署到SIS控制器,是因為控制器的鑰匙開關處于“程序”模式,允許從受感染的工程工作站上傳和下載項目文件。如果鑰匙開關處于“運行”模式,則TRISIS惡意軟件攻擊不會成功。

  鑰匙開關位置的細微差別

  在Triconix TriStation手冊中,Triconix使用四種不同的鑰匙開關位置,以允許不同的操作模式和不同的場景設置。

  運行:具有只讀功能的正常操作。主處理器執行先前加載的控制程序。拒絕通過TriStation、Modbus主站或外部主機修改程序變量的嘗試。但是,控制程序可能會調用門控訪問功能,以在指定的時間窗口內啟用外部主機寫入。

  程序:用于程序加載和檢出。允許從TriStation平臺控制Tricon系統,包括全部下載和下載更改。它還允許外部主機寫入程序變量。

  停止:停止讀取輸入,強制非保留數字和模擬輸出為0,并停止控制程序。(保留輸出會保留鑰匙開關轉到STOP位置之前的值。)STOP設置可用于安裝和維護過程相關設備,但不是Tricon服務所必需的。

  遠程:允許TriStation和外部主機寫入程序變量。(不允許通過TriStation下載全部和下載更改。)不允許修改程序邏輯。

  了解Triconix控制器的細微差別有助于了解在正常操作期間應使用哪些位置。例如,“遠程”并不意味著可以上傳或下載項目文件,但控制器會接受來自外部源的程序寫入,這可能會被濫用。

  其他控制器制造商,例如Rockwell,在Logix系列PLC上也使用鑰匙開關。Control LogixPLC鑰匙開關具有三個物理位置,但總共有五種操作模式。關鍵開關位置包括“運行”、“遠程”和“程序”。在“遠程”位置,在工程工作站上使用Rockwell Studio的人員可以將模式更改為“遠程運行”、“遠程程序”或“遠程測試”。

  Rockwell提供的這些設置的詳細信息如下:

  運行模式:控制器正在主動控制過程/機器。在運行模式下,無法在Logix Designer應用程序中編輯項目。

  遠程運行模式:此模式與運行模式相同,但可以在線編輯項目并通過Logix Designer應用程序更改控制器模式。

  遠程程序模式:此模式的功能類似于程序模式,但可以通過Logix Designer應用程序更改控制器模式。

  遠程測試模式:此控制器模式執行代碼,但不控制I/O。可以通過Logix Designer應用程序在線編輯項目并更改控制器模式。輸出模塊被命令進入它們的程序模式狀態(開、關或保持)。

  程序模式:此控制器模式不執行代碼或控制I/O,但可以進行編輯操作。輸出模塊被命令進入它們的最后狀態(開、關或保持)。在此位置,無法通過Logix Designer應用程序更改控制器模式。

  同樣,如Rockwell文檔中所述:“將鑰匙開關從”運行“移動到”遠程“會使控制器處于遠程運行模式,而將開關從”程序“移動到”遠程“會使控制器處于遠程程序模式。不能單獨通過鑰匙開關選擇遠程測試模式,它只能通過Logix Designer應用程序使用。”對于不熟悉底層操作、從程序切換到遠程并期望PLC代碼自動執行的技術人員來說,這個小細節會引起很多混亂。必須將密鑰更改為“運行”,然后返回到“遠程”以執行代碼,而無需通過Logix Designer登錄并手動更改模式。

  PLC鑰匙開關狀態檢測

  一些供應商通過公開的邏輯指令利用PLC數據采集已有一段時間,就像Rockwell PLC的情況一樣,它通過模式變量檢測鑰匙開關的狀態。

  工程師必須從項目軟件的設計開始就包含邏輯,以便在發生特定操作(例如鑰匙開關的位置轉換)時通知操作人員。如果操作員可以在HMI上監控這些操作,他們就可以立即通知相關人員有人可能正在修改PLC邏輯。將操作作為檢測的一部分有助于在將邏輯下載到PLC之前預測響應和動作。

  在PLC上創建檢測邏輯的另一個優點是所有資源都直接從CPU集成。無需使用項目已有的額外資源,如新界面或特殊軟件。該檢測邏輯不復雜,不會對PLC的性能、測試和開發造成任何問題。

  在創建這些檢測功能時,工程師應考慮將它們嵌入到功能塊中并添加特殊的安全例程。這樣塊密碼保護可以增強塊的完整性。以Rockwell為例,其PLC運行時邏輯無法被操縱。

  Allen Bradley PLC鑰匙開關邏輯檢測

  Allen Bradley PLC能夠通過提供大量內部狀態數據來監控控制器的運行狀況。需要一條獲取系統值(GSV)指令才能從控制器中提取信息并創建控制器設備對象的狀態位組合,以反映鑰匙開關的位置。

  在HMI端將警報配置為自清除或保留。警報設置和配置應與運營團隊討論,并根據底層流程的必要性進行評估,因為并非所有警報都是關鍵的或能夠導致流程停止。

  該功能的目的是將被視為警報的相關狀態發送到HMI,以及檢測鑰匙處于運行位置時的運行狀態,如圖1所示。

  圖1 PLC運行模式邏輯檢測

  值得一提的是不要因額外的警報/信息而導致HMI上的警報疲勞將操作忽略。帶有相關信息的警報越少,操作端的響應就越好。根據邏輯提出的警告有:

  程序:這意味著PLC執行已停止,PLC編輯功能可用。當處于遠程程序模式時,狀態也會升高。無論是哪種狀態,都有可能改變邏輯的風險。圖2顯示了程序模式邏輯狀態檢測。

  圖2 PLC程序模式邏輯檢測

  遠程:這意味著PLC正在運行,具有遠程在線編輯或下載功能。這種狀態是最容易受到攻擊的,因為PLC可以控制實時操作,并且系統可能會在沒有任何通知的情況下發生中斷。圖3顯示了遠程模式的邏輯檢測。

  圖3 PLC遠程模式邏輯檢測

  但任何邏輯都可以被篡改和禁用。這就存在一個問題:Add On(封裝代碼的功能塊)可以被攻擊者停用嗎?也許是的。然而,通知這個潛在的惡意活動的操作的一個方法是使用添加的參數將EnableIn作為警報。如果進程和操作允許,該參數還可用于鎖定其他設備。對于這種情況,不需要額外的邏輯,因為標簽是嵌入式邏輯的一部分。

  圖4 功能塊不可用,HMI上的警報檢測

  使用RSLinx和預定義屬性的鑰匙開關功能

  Allen Bradley還使用了預定義屬性的診斷變量,這些屬性被識別為@。這些標簽通過RSLinx來檢測PLC的狀態。但是,在實現上也存在差異,例如,如果不使用Factory Talk,PLC邏輯和HMI就會發生變化。圖5顯示了RSLinx從PLC獲得的預定義屬性的列表。

  圖5 帶有PLC預定義屬性列表的RSLInx幫助頁面

  如果與HMI的連接是FactoryTalk,則它們之間的通信直接通過Factory TalkLinx完成,標簽位于PLC的診斷標簽上。另一方面,如果HMI的品牌與Rockwell不同,則必須使用DDE或OPC經典(OPCDA)通信主題通過OPC服務器(例如RSLinx classic)建立此連接。例如,如果正在使用Wonderware Intouch HMI,則需要DDE主題進行連接。但是,不建議將RSLinx classic用于具有大量數據傳輸的應用程序。

  例如,@Mode是預定義屬性,可用于以字符串格式顯示多狀態鑰匙開關狀態。這迫使用戶通過開發腳本和/或宏在HMI端創建自定義代碼,在檢測到遠程和程序模式時生成警報。從工程和安全角度來看,應盡量減少在HMI上使用代碼。HMI項目中的腳本和宏比PLC邏輯更容易訪問,而且它們也更容易從內部實體進行操作,這樣就不會在系統上發出警報。

  圖6顯示了從Wonderware客戶端HMI監控鑰匙開關。PLC邏輯和RSLinx預定義屬性的組合用于生成警報和狀態。此外,還利用預定義屬性來使用字符值顯示鑰匙的位置。在此示例中,警報配置為自清除,Wonderware Intouch和PLC之間的通信使用DDE主題完成。

  圖6 HMI遠程模式狀態檢測示例

  圖7是使用PLC邏輯和Factory talk Client HMI上的預定義屬性來監控鑰匙開關的示例。在此示例中,通信是使用Factory Talk Linx本地完成的,并且警報配置為保持性。

  圖7 HMI程序模式狀態檢測示例

  結論

  在未建立鑰匙開關監控時,開發PLC程序的技術人員和工程師必須意識到存在的風險。工程師應該了解PLC及其通信可以帶來的內在能力,以幫助安全運營中心(SOC)團隊對鑰匙狀態的監控,以及使用普渡模型的1級和2級設備工廠車間的運營。這樣操作人員可以隨時了解他們的關鍵設備狀態,而不必等待IT/OT SOC團隊通知他們。如果操作人員知道工廠維護窗口的狀態,當關鍵的PLC鑰匙開關在操作過程中脫離正常狀態時,他們可以預測操作并向事件響應團隊發出警報。

  盡管存在多種檢測選項,它們看起來很容易實現,但工程師必須始終分析利弊,并在可能的情況下嘗試實現PLC中的功能,這一點至關重要。此外,這些功能應該應用在與控制程序分開的專用安全程序中。在PLC中擁有這些功能避免了對PLC外部(例如HMI內部)的附加通信軟件和邏輯開發的依賴。




電子技術圖片.png

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 久久狠狠一本精品综合网 | 毛片免费永久不卡视频观看 | 九九九九九九 | 欧美精品 日韩 | 欧美日韩一区二区三区视视频 | 日韩a毛片| 免费公开视频人人人人人人人 | 91热久久免费频精品黑人99 | 亚洲一区二区三区在线 | 国产成人黄色 | 99久久在线 | 成人午夜爽爽爽免费视频 | 啪啪一级视频 | 国产伦精品一区二区三区无广告 | 日本成a人伦片 | 新版天堂资源中文在线 | 亚洲精品日本 | 久草视频中文 | 欧美视频免费一区二区三区 | 久久久久欧美精品网站 | 国产一级淫片a免费播放口之 | 国产人做人爱免费视频 | 国产高清晰在线播放 | 亚洲欧美日韩久久精品第一区 | 亚洲看看 | 欧美午夜性春猛交 | 午夜免费福利网站 | 国产在线步兵一区二区三区 | 能直接看的一级欧美毛片 | 久久国产一片免费观看 | 欧美与黑人午夜性猛交久久久 | 一区二区三区四区视频在线 | 大陆高清自拍 | 亚洲一级毛片免费看 | 久久亚洲精品成人 | 久久久一区二区三区 | 日本精品一区二区三区在线视频 | 纯欧美一级毛片_免费 | 亚洲国产日韩a在线亚洲 | 国产成人免费在线观看 | 俄罗斯三级毛片 |