今天小編分享的互聯網經驗:全球各地的工業PLC受到CODESYS V3 RCE漏洞的影響,歡迎閲讀。
全球工業環境中使用的數百萬 PLC(可編程邏輯控制器)面臨 CODESYS V3 軟體開發工具包(SDK)中 15 個漏洞的風險,這些漏洞為遠程代碼執行(RCE)和拒絕服務(DoS)攻擊提供了可趁之機。
如今全球 500 餘家設備制造商使用 CODESYS V3 SDK,根據 IEC 61131-3 标準對 1000 多個 PLC 型号進行編程,以便用户開發定制的自動化序列。
該 SDK 被廣泛使用,為工程師配置和測試用于工業系統的 PLC 提供了一種開發環境。大量 PLC 中的固件含有 CODESYS 提供的庫程式以運行工程師們編寫的程式,而可以被利用的正是這嵌入的代碼,導致設備容易受到攻擊。
該 SDK 還提供了一個 Windows 管理界面和一個模拟器,允許用户在部署到生產環境之前先測試其 PLC 配置和所編的程式。
CODESYS V3 SDK 中的 15 個漏洞是由微軟研究人員發現的,他們于 2022 年 9 月向總部位于德國的 CODESYS 報告了這些漏洞。這家廠商于 2023 年 4 月發布了安全更新以解決已發現的問題。
由于這些設備具有的性質,它們不常更新以修復安全問題,因此微軟的安全團隊昨天發布了一篇詳細的文章,以提高人們對這一風險的認識,并幫助加快修補。
圖 1. 在互聯網上曝光的 CODESYS 設備(圖片來源:微軟)
CODESYS 漏洞
微軟仔細檢查了施耐德電氣和 WAGO 這兩家廠商使用 CODESYS V3 的的兩款 PLC,結果發現了 15 個高危漏洞(CVSS V3:7.5 - 8.8),其中 12 個漏洞是緩衝區溢出漏洞。
這些漏洞分别是:CVE-2022-47378、CVE-2022-47379、CVE-2022-47380、CVE-2022-47381、CVE-2022-47382、CVE-2022-47383、CVE-2022-47384、CVE-2022-47385、CVE-2022-47386、CVE-2022-47387、CVE- 2022-47388、CVE-2022-47389、CVE-2022-47390、CVE-2022-47392 和 CVE-2022-47393。
主要問題出在 SDK 的标記解碼機制上,具體來説是指标記在沒有驗證大小的情況下被復制到設備緩衝區中,這給攻擊者提供了緩衝區溢出的機會。這些标記是數據或數據結構的載體,為 PLC 的正常運行提供了關鍵指令。
緩衝區溢出問題并不是孤立的,微軟還在 CODESYS V3 SDK 的 15 個組件中發現了這個問題,包括 CMPTraceMgr、CMPapp、CMPDevice、CMPapp、CMPAppBP、CMPAppForce 和 CMPFileTransfer。
雖然這些漏洞需要身份驗證才能被利用,但微軟表示,可以通過使用 CVE-2019-9013 來規避這個要求,而 CVE-2019-9013 是另一個影響 CODESYS V3 的漏洞,在傳輸過程中以明文形式暴露用户憑據,如下所示。
微軟的分析師試了 15 次,結果發現有 12 次能夠利用該漏洞在 PLC 上遠程執行代碼。
如果產品運行的是 3.5.19.0 之前的版本,無論硬體和作業系統配置如何,都會受到影響,CODESYS 的安全公告列出了以下受影響的產品:
CODESYS Control RTE(SL)
CODESYS Control RTE(for Beckhoff CX)SL
CODESYS Control Win(SL)
CODESYS Control Runtime System Toolkit
CODESYS Safety SIL2 Runtime Toolkit
CODESYS Safety SIL2 PSP
CODESYS HMI(SL)
CODESYS Development System V3
CODESYS Development System V3 simulation runtime
除上述產品外,如果運行 4.8.0.0 之前的版本,以下產品也會受到影響:
CODESYS Control for BeagleBone SL
CODESYS Control for emPC-A/iMX6 SL
CODESYS Control for IOT2000 SL
CODESYS Control for Linux SL
CODESYS Control for PFC100 SL
CODESYS Control for PFC200 SL
CODESYS Control for PLCnext SL
CODESYS Control for Raspberry Pi SL
CODESYS Control for WAGO Touch Panels 600 SL
建議管理員盡快更新到 CODESYS V3 v3.5.19.0,同時微軟還建議斷開 PLC 及其他關鍵工業設備與互聯網的連接。
正如微軟警告的那樣:" 如果威脅分子針對使用 CODESYS 高危版本的設備發動 DoS 攻擊,就可以關閉發電廠,而遠程代碼執行可以在設備中植入後門,讓攻擊者得以篡改設備操作,導致 PLC 運行異常,或者竊取關鍵信息。"