資安重大漏洞分享:駭客利用 CVE-2026-58115 接管 Node-RED 事件解析
資安議題分享|2026 年 11 月 4 日|耘鼎科技(Gertech)資安團隊
重點摘要:Node-RED 是工廠和物聯網常用的「積木式」流程工具。只要它的編輯介面沒有設密碼、又能從網路連到,攻擊者送出一個請求,就能讓它下載並執行惡意程式。這個漏洞(CVE-2026-58115,CVSS 10.0 滿分)雖然登記在西門子的設備上,但任何沒設密碼的 Node-RED 都有同樣的風險。2026 年 10 月 30 日起,已經觀察到實際攻擊。
漏洞基本資料
| 項目 | 內容 |
|---|---|
| 漏洞編號 | CVE-2026-58115 |
| 弱點類型 | CWE-306:關鍵功能缺少身分驗證 |
| 嚴重程度 | CVSS v3.1:10.0(AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H)<br>CVSS v4.0:10.0(AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H)<br>評分由西門子(CNA)提供;NVD 尚未完成自身評估 |
| 受影響產品 | 西門子 SIMATIC IoT2050 Advanced(6ES7647-0BA00-1YA2,運行 Industrial OS 並安裝 Node-RED),V4.3.4.1 之前的所有版本 |
| 修補版本 | V4.3.4.1 或更新版本 |
| 原廠公告 | Siemens SSA-834709(2026-08-11) |
| 實際攻擊 | 已確認,VulnCheck 於 2026-10-30 首次捕捉 |
發生了什麼
西門子在 2026 年 8 月 11 日發布公告:SIMATIC IoT2050 Advanced 安裝的 Node-RED 預設沒有啟用登入驗證,遠端攻擊者不需要任何帳號密碼,就能在設備上以最高權限執行任意程式碼。
到了 10 月 30 日,資安公司 VulnCheck 架設的誘捕系統(Canary,模擬有漏洞的設備,專門用來觀察攻擊者行為)捕捉到第一起實際利用此漏洞的攻擊。到 11 月 1 日,同一個來源一共發動了 16 次攻擊,手法從下載惡意程式,到在設備上留下可長期使用的後門都有。
先搞懂 Node-RED 是什麼
Node-RED 讓使用者用拖拉積木(節點)的方式,把感測器、機器和網路服務串起來,例如「溫度超過 80 度就發通知」。製造業、公用事業、醫療、農業都很常見,也有廠商直接把它內建在工控與物聯網產品裡。
其中有一種積木叫 exec,作用是直接對主機下系統指令。這原本是方便工程師使用的功能,但只要有人能自由修改流程,就等於能在那台主機上做任何事。
而 Node-RED 官方文件也明確說明:編輯介面預設不需要登入,只適合在可信任的網路環境中使用;要對外提供服務,必須自行啟用認證。
攻擊怎麼進行:一個請求,三層包裝
VulnCheck 研究人員形容,這個請求本身就是一個「完整的攻擊」:部署流程、自動觸發、從攻擊者主機下載程式,全部包在三層編碼之下——第一層是流程 JSON,第二層是 base64 指令包裝,第三層才是真正的下載指令。我們依 VulnCheck 公布的攻擊內容,將過程拆解如下:
第 1 步:送出一組新的積木流程
攻擊者對 Node-RED 送出一個 POST /flows 請求,內容是只有兩塊積木的流程:一塊「觸發器(inject)」、一塊「執行指令(exec)」。觸發器設定成部署後 1 秒自動執行一次,不需要任何人操作。
(技術細節:inject 節點 once: true、onceDelay: 1;exec 節點 addpay: false。誘捕系統回傳 HTTP 200 與新的流程版本號,與真實有漏洞的設備反應相同。)
第 2 步:把指令藏起來
要執行的指令先經過 base64 編碼,再交由系統解碼後執行。如此一來,請求內容裡看不到 wget、curl 這類下載指令,只比對關鍵字的防護規則就可能漏掉。
(技術細節:echo <base64> | base64 -d | sh。)
第 3 步:下載惡意程式,放在記憶體裡執行
解碼後的指令會先用 wget(失敗時改用 curl)從外部主機下載一支名為 bot-linux-amd64 的程式,存成 /dev/shm/.b,再讓它在背景獨立執行。
/dev/shm是位於記憶體中的資料夾,不會寫入硬碟,事後較難從硬碟找到痕跡(但設備重開機後也會消失)- 檔名前加一個點,一般列出檔案時不會顯示
- 使用
setsid(失敗時改用nohup)讓程式與 Node-RED 脫鉤,即使 Node-RED 重新啟動,程式也會繼續執行
另一種手法:直接留下後門(Webshell)
11 月 1 日之後的部分攻擊沒有下載程式,而是在流程中新增一個網址入口(http in 積木,例如 /cmd 或隨機路徑),經由 function 積木串接到 exec 積木(此時 addpay 為啟用)。之後只要連到這個網址、在網址參數裡帶上指令,就能隨時遠端執行。這種後門存在流程設定裡,設備重開機後依然存在,比記憶體中的惡意程式更難清除。
此外,攻擊者也被觀察到改用 wget.sh 腳本下載,以及從另一台主機下載偽裝成系統程序名稱的 /tmp/.kworker。
為什麼這件事值得注意
1. 問題不只在西門子 這個 CVE 登記在西門子設備上,是因為該設備出廠即安裝 Node-RED 卻未啟用認證。但攻擊手法對任何沒設密碼的 Node-RED 都有效,而未啟用認證正是 Node-RED 的預設狀態。換句話說,對一般自行安裝的 Node-RED 而言,沒有一個「更新就好」的修補檔,必須自己把設定改好。
2. 攻擊者在大範圍自動掃描 同一個攻擊來源在幾天內,對 Apache Solr、Camunda、Gitea、MLflow、Traefik、Joomla、Node-RED 等產品的 8 個漏洞發動了 125 次攻擊,並使用至少 5 種不同的程式標示(User-Agent)。這屬於自動化的機會型大量掃描,並非針對特定企業。只要你的 Node-RED 能從網路連到,就可能被掃到。
3. 工控環境遭入侵的代價更高 Node-RED 經常直接連接機台與感測器。一旦控制權落入他人手中,影響的可能不只是一台電腦,而是現場的生產設備。
目前已知與未知
| 項目 | 狀態 |
|---|---|
| 攻擊者送出流程、執行下載指令 | 已確認(誘捕系統實際捕捉) |
| 惡意程式的功能(挖礦、DDoS、遠端控制?) | 未知,VulnCheck 未取得程式本體 |
| 攻擊者身分 | 未知,來源 IP 位於微軟雲端(地理位置在巴西),多半是遭入侵或租用的主機 |
| 是否有真實企業受害 | 未公開,目前資料來自誘捕系統 |
| 是否列入美國 CISA 已遭利用漏洞清單(KEV) | 截至 VulnCheck 發文時尚未列入;已列入 VulnCheck 自家 KEV 清單 |
企業自我檢查與防護建議
1. 檢查是否已設定密碼(從另一台電腦執行,將位址換成您的設備):
curl --max-time 10 http://設備IP:1880/auth/login
- 回傳
{}:代表未設定密碼,任何連得到的人都能修改流程 - 回傳內容包含
"type":"credentials":代表已啟用登入
建議從外部網路與工廠內網各測一次,內網未設防同樣危險。
2. 檢查是否已遭植入(在 Node-RED 主機上執行):
ls -la /dev/shm/.b /tmp/.s /tmp/.kworker
若三個檔案都顯示「No such file or directory」,代表未發現這次攻擊的已知檔案。另請檢查流程中是否有非自己建立的 exec 或 http in 積木,特別是串接在一起的組合。
3. 修補與加固
- 西門子 SIMATIC IoT2050 Advanced:更新至 V4.3.4.1 或更新版本;若暫時無法更新,原廠建議移除 Node-RED,或依 Node-RED 官方指引進行加固
- 依原廠建議加固(適用所有 Node-RED):
- 啟用 HTTPS 連線
- 為編輯介面與管理 API 啟用認證:在
settings.js設定adminAuth帳號密碼(密碼雜湊可用node-red admin hash-pw產生),或串接 OAuth/OpenID 登入 - 為 HTTP 節點與 Node-RED Dashboard 啟用基本認證(Basic Auth)
- 不要讓 Node-RED 的 1880 埠直接對網際網路開放,必要時透過 VPN 或防火牆限制來源
- 若已發現可疑檔案或流程,該主機應視為已遭入侵,建議重建系統,並更換它能存取的所有帳號密碼與金鑰
入侵指標(IoC)
| 類型 | 指標 | 說明 |
|---|---|---|
| IP | 4.201.105[.]116 | 攻擊來源 |
| URL | hxxp://85.215.73[.]250:8080/bot-linux-amd64 | 惡意程式下載位置 |
| URL | hxxp://85.215.73[.]250:8080/wget.sh | 第二種下載腳本 |
| URL | hxxp://45.194.90[.]57:38472/.sys_update | 第二台下載主機 |
| 路徑 | /dev/shm/.b、/tmp/.s、/tmp/.kworker | 惡意程式存放位置 |
IoC 已做防誤點處理([.]、hxxp),使用時請自行還原。
耘鼎觀點
這次攻擊沒有用到任何高深技巧,只是利用了一個「預設沒鎖門」的設定,再加上一點把指令藏起來的包裝。真正令人擔心的是:許多工廠的 Node-RED 是當初由廠商或工程師架設後就沒再動過,沒有人記得它有沒有設密碼,也沒有人確定它是否連得到外部網路。
耘鼎科技建議企業將這類「架好就忘記」的工控與物聯網工具列入定期盤點:它在哪裡、誰能連線、有沒有設密碼。如需協助盤點或檢測,歡迎與耘鼎科技聯繫。
參考資料
原始研究與官方資料
- VulnCheck:Exploitation Targeting Node-RED, a Tool Embedded in ICS Products(2026-11-02,含 11 月 1 日更新) https://www.vulncheck.com/blog/exploitation-targeting-node-red
- NVD:CVE-2026-58115 Detail(2026-08-11 發布,2026-10-24 最後更新;含 CVSS 評分、CWE-306 分類與受影響產品) https://nvd.nist.gov/vuln/detail/cve-2026-58115
- Siemens 安全公告 SSA-834709(2026-08-11) https://cert-portal.siemens.com/productcert/html/ssa-834709.html
- Node-RED 官方文件:Securing Node-RED(adminAuth 設定指引) https://nodered.org/docs/user-guide/runtime/securing-node-red
相關新聞報導
- The Hacker News:Attackers Exploit Critical Siemens IoT2050 Flaw to Plant Remote Command Backdoors(2026-11-03) https://thehackernews.com/2026/11/attackers-exploit-critical-siemens.html
- SecurityWeek:Critical Node-RED Flaw Exploited in Attacks(2026-11-03) https://www.securityweek.com/critical-node-red-flaw-exploited-in-attacks/
- Help Net Security:Attackers exploit critical Node-RED flaw to deploy Linux bot and backdoors (CVE-2026-58115)(2026-11-03) https://www.helpnetsecurity.com/2026/11/03/node-red-cve-2026-58115-exploitation/
- iThome:Node-RED重大漏洞出現攻擊嘗試,駭客企圖執行Linux惡意程式並部署網頁後門(2026-11-04) https://www.ithome.com.tw/news/180178
本文內容依據公開資料整理,僅供資安防護參考。所列檢測指令請在自身擁有或經授權的設備上執行。