ROS 2 與 DDS 機器人網路安全:身份、權限與恢復

機器人網路安全保護能夠改變物理世界的命令和狀態的控制權限、完整性、機密性和可用性。資產包括操作員會話、 ROS 2 節點、 DDS 參與者、主題、服務、動作、參數路徑、控制器、更新系統、憑據及其連線網路。

ROS 2 安全可以透過支援的中介軟體利用 DDS 安全能力來認證參與者、控制存取並保護通訊。這些機制需要公鑰基礎設施、簽名策略、受保護的私鑰和生命週期操作。它們不能取代作業系統的加固、網路分段、監控或獨立的安全功能。

將本指南與 ROS 2 即時控制指南機器人網路比較結合使用。安全控制必須測試對抗性拒絕和通訊失敗時機器人行為的限制性。

地圖指令、資產與物理後果

從一條相關路徑開始,例如操作員向控制器傳送軌跡。列出身份、程式、主題、服務、發現、設定、網路區域、憑證和最終致動器。說明未經授權釋出、訂閱、重放、拒絕或參數變化可能帶來的物理影響。

包括維護筆記本、 CI 系統、車隊服務、遠端支援和備份。信任通常透過更新或憑證發放進入,而非執行時主題本身。分配所有者和預期的通訊流,使後續存取規則描述最小作業,而非開發過程中可見的每個節點。

一名工程師在 NIST 網路安全測試平台操作網路工業機器人和控制器
機器人網路安全需要與真實控制器、網路和故障路徑進行驗證,因為拒絕或延遲的指令會帶來物理後果。來源:F. Webber / NIST。權利: NIST 版權及免責宣告

ROS 2 安全建立在中介軟體能力之上

ROS 2 客戶端庫透過 RMW 實現進行通訊。基於 DDS 的 RMW 可以透過 ROS 2 安全設定應用 DDS 安全認證、存取控制和加密外掛。功能支援和預設因中介軟體和版本而異,因此應確認已部署的實現,而不是假設 ROS API 名稱能證明加密。

將安全設定為執行模式以進行生產測試。寬鬆策略可以在遺留檔案缺失時允許啟動,這對診斷很有用,但也可能悄然移除預期保護。捕獲網路流量並嘗試未經授權的加入以證明活躍行為。

控制證據未測試
身份證書與私鑰認證參與者未知節點
授權簽名許可允許的圖操作禁刊
治理域安全策略發現與保護設定未認證連線
交通加密外掛受保護的 RTPS 流量降級或明文
機器人應用指揮年齡與界限安全接受的行動有效但陳舊的命令

金鑰儲存區分信託錨點和安全域檔案

SROS 2 金鑰庫包含證書授權材料、公共信任錨和逐區金鑰、證書和簽名權限。身份和權限信任鏈可以分開。根據其角色保護 CA 和私鑰材料;一個可讀或可修改的金鑰目錄可以在不攻擊加密的情況下破解策略。

ROS 2安全金鑰庫檔案解釋了治理、身份、權限和安全域檔案。記錄準確的路徑、所有權、備份和設定方法,而不是將一個開發金鑰庫複製到車隊中。

安全域遵循部署和權限邊界

安全域為程式或程式組賦予身份和存取控制規則。僅將真正共享權限和生命週期的元件分組。將所有節點放在一個安全域中使策略更易,但會擴大一個程式被攻破或金鑰洩露的影響。

將隔區與容器、服務、機器人和維護角色對齊。在可行的情況下,使用獨立於主機路徑的穩定名稱。記錄程式如何選擇其安全域,以及當請求工件缺失、過期或被錯誤的信任錨點簽名時會發生什麼。

以五個步驟整理ROS 2 與 DDS 機器人網路安全:身份、權限與恢復的判讀重點
依正文與一手資料整理的繁體中文實務卡。來源:Physical AI Lab。

權限應表達最小權限

只允許角色所需的域、主題名稱、服務、動作和指令。將命令釋出者與遙測訂閱者分開。限制可能改變控制器的參數和生命週期操作。從開發圖生成的策略是起點,而非最小權限的證明,因為可能存在臨時工具。

測試每個關鍵路徑的負面案例:未經授權釋出、敏感資料訂閱、服務呼叫、動作目標和發現。策略審查與程式碼審查同時進行。新主題或更名名稱空間應預設拒絕存取,直到評估其需求和物理影響。

職責允許預設拒絕身體問題
操作員使用者介面批准的任務目標直接轉矩主題無界運動
控制器狀態輸入與驅動器命令機器人車隊管理致動器權限
認知感測器讀數與估計運動指令受損模型
伐木工選定的只讀遙測服務與參數特權膨脹
維護限時診斷自動生產指令遠端濫用

網路分段限制了暴露和移動

根據所需的流程,設立獨立的機器人小區、安全網路、控制管理、企業服務、無線裝置和麵向網際網路的系統。使用防火牆、允許列表、認證閘道器和監控遠端存取。即使有一個憑證或主機被攻破,分段也會降低可達性。

NIST SP 800-82 第 3 版 提供了考慮效能、可靠性和安全約束的操作技術安全指導。在測量機器人截止時間和恢復行為時應用控制措施;增加無限延遲的安全裝置會帶來另一種執行隱患。

憑證生命週期比初始頒發更為複雜

定義註冊、儲存、續期、撤銷、替換、時鐘要求和緊急存取。短壽命證書限制暴露,但增加續期依賴。長效憑證減少操作,但擴大盜竊後的視窗。硬體支援金鑰可以降低提取風險,但仍需更換程式。

測試過期、尚未有效、被撤銷、損壞和不匹配的憑證。驗證紀錄是否辨識了失敗身份,同時不暴露私有材料。從備份恢復並在乾淨環境中重建信任錨點。從未執行過的恢復計劃不是可用性控制。

安全與功能安全是協調但不同的

網路安全減少了數字控制權限的惡意或意外濫用。功能安全控制了定義安全功能的危險失效。認證不能證明命令在物理上是安全的,安全等級的停止也無法防止憑證盜竊或資料洩露。

在控制器附近保持確定性位置、速率、年齡和工作區檢查,並根據風險保持獨立的保護功能。將該架構與 機器人功能安全指南連線起來。可能危害安全的威脅場景需要聯合分析,同時保留獨立的宣告和證據。

監控身份和溝通行為

紀錄認證失敗、被拒絕的圖操作、證書狀態、意外參與者、策略變更、命令速率以及同步時鐘上的控制器拒絕。建立每個操作模式的預期圖表和流量,以確保偏差有意義。保護紀錄免受篡改,限制敏感的有效負載捕獲。

檢測必須導致經過測試的反應。隔離主機、撤銷隔離區、限制區域或停止遠端任務,同時不禁用必要的保護功能。警報洪水和網路掃描不應使控制路徑陷入飢餓。測量安全檢測時間和機器人反應。

驗證拒絕、重播和恢復路徑

嘗試偽造身份、被盜但撤銷的證書、未授權主題、重放或過時命令、更改名稱空間、發現洪水、網路分割槽和時鐘錯誤,在受控測試平台中進行。驗證拒絕和歸因,然後觀察機器人是否在合約內保持、減速或進入更安全狀態。

重執行允許在峰值負載和金鑰輪換下進行通訊,以測量延遲和可用性。保留資料包捕獲、安全紀錄、策略修訂和機器人狀態。從一條命令路徑開始,先確定操作生命週期,然後擴充到完整圖,而不是在無法維護的恢復下實現廣泛的加密。

評估“ROS 2 與 DDS 機器人網路安全:身份、權限與恢復”時,還應儲存模型版本、機器人設定、校正檔案、測試日期和全部試驗記錄。

只有把這些持續投入與單位成功任務的價值比較,才能判斷方案是否適合擴大。

上線後仍要持續檢查分佈變化、感測器漂移、機械磨損和人工接管原因。

  • 威脅模型指令和物理衝擊。
  • 為部署單元分配安全域身份。
  • 執行簽署的最低權限權限。
  • 分段機器人、管理和外部網路。
  • 考試撤銷、拒絕、延遲與恢復。

常見問題

啟用 ROS 2 安全是否意味著機器人安全?

不。它可以認證、授權和保護通訊,但物理指令限制和驗證的安全功能仍然是兩個獨立的要求。

加密每個主題都會損害效能嗎?

加密和策略檢查會增加負載,但影響取決於中介軟體、硬體、流量和設定。對真實圖表進行基準測試,並保持控制截止時間。

開發證書可以在生產中重複使用嗎?

這會造成共享信任和弱生命週期控制。生產環境應使用託管身份、受保護金鑰、最小權限策略、輪換和撤銷。

防火牆會讓 SROS 2 變得不再必要嗎?

不。分段和主機間存取控制補充了參與者身份和圖級權限。縱深防禦限制了不同的故障路徑。

應該先進行什麼安全測試?

選擇一個後續機器人命令,證明授權路徑有效,然後證明未知身份和禁止釋出者被拒絕並安全處理。

機器人網路安全應用邊界

機器人網路安全依賴中介軟體支援、金鑰保護、策略、網路架構和營運。驗證具體部署,並協調任何安全影響,並配備獨立的保護功能。