要点
影響を受けるもの
- SIMATIC IoT2050 Advanced(6ES7647-0BA00-1YA2) の V4.3.4.1 未満で、Industrial OS 上に Node-RED をインストールしているもの(Siemens SSA-834709)。
今すぐやること
- V4.3.4.1 以降に更新する。すぐ更新できなければ、Node-REDを削除するか、Node-REDの管理画面・管理APIに認証をかける。
- Node-REDの画面(通常はTCP 1880番)がインターネットや社内の広い範囲から届かないか確認する。
- 配置済みのフローに、身に覚えのない
execノードやhttp inのエンドポイントがないか点検する。
何が起きているか
事実(Siemens、VulnCheck)
- Siemens ProductCERTは2026年8月11日、SSA-834709 で CVE-2026-58115 を公表した。Node-REDのHTTPインターフェースで認証が強制されておらず、認証なしの遠隔の攻撃者が不正なフローを作り、最高権限で任意のコードを実行できるというもの。CVSS v3.1・v4.0ともに 10.0、弱点の種類は CWE-306(重要な機能の認証欠落)。
- 脆弱性情報を集める米VulnCheckは11月2日、自社のおとり(カナリア)環境で10月30日にこの脆弱性を突く攻撃を捉えたと公表した。同社は同じ脆弱性の検知ルールを10月27日に出しており、その3日後の観測になる。
- 攻撃は
POST /flowsの1回のリクエストで、Node-REDのフローを配置する。フローは「起動時に一度だけ動くinjectノード」と「シェルコマンドを実行するexecノード」をつないだもので、配置した直後にコマンドが走る。コマンドはbase64で符号化されていた。 - 復号されたコマンドは、外部サーバー(
85.215.73[.]250:8080)からbot-linux-amd64を取得し、メモリ上のファイルシステムに/dev/shm/.bとして保存して実行するものだった。 - 11月1日の追記では、同じ送信元から次の手口も見つかったとしている。
- 同じサーバーから
wget.shを取得して実行する2段階型 - 別のサーバー(
45.194.90[.]57:38472)から.sys_updateを取得し、/tmp/.kworkerとして実行するもの - ダウンロードはせず、
/cmdなどのHTTPエンドポイントからクエリで受け取ったコマンドを実行するフロー(Webシェル)を残すもの。再起動でメモリ上の不正プログラムが消えても残る。
- 同じサーバーから
- 送信元は1つのIPアドレス(MicrosoftのAS8075)で、10月30日〜11月1日にこの脆弱性に対して16回、他の8件の脆弱性(Apache Solr、Gitea、MLflowなど)にも計125回アクセスしていた。VulnCheckは特定の標的を狙ったものではなく、無差別な大量スキャンとみている。
- VulnCheckは取得されたプログラムやスクリプトそのものは入手・解析しておらず、ボットの機能は不明としている。
- VulnCheckはこの脆弱性を自社のKEV(悪用確認済み脆弱性リスト)に追加した。2026年11月3日時点で、CISAのKEVには登録されていない(CISA KEV)。
- 観測はおとり環境への攻撃であり、実際のIoT2050の被害は公表されていない。
影響を受ける製品・バージョン
| 製品 | 影響を受ける版 | 修正版 |
|---|---|---|
| SIMATIC IoT2050 Advanced(6ES7647-0BA00-1YA2) | V4.3.4.1 未満で、Industrial OS 上に Node-RED を導入しているもの | V4.3.4.1 以降 |
- Siemensの勧告の対象は上の製品のみ。VulnCheckは、Node-REDがEmersonなど他社の産業用製品にも組み込まれていると触れているが、それらが影響を受けるかは確認していないとしている。
- 攻撃で使われたのは「認証なしでフローを配置できる」というNode-REDの状態そのもので、VulnCheckは「
adminAuth(管理画面の認証)を設定していないNode-RED」が自動的に見つけられ悪用されていると書いている。
修正版・回避策
- 修正:V4.3.4.1 以降に更新する(Siemensのダウンロードページ)。
- 回避策(Siemens):
- Node-REDをアンインストールする。
- Node-REDを堅牢化する(Node-REDの公式ガイド)。具体的には、HTTPSを有効にする、エディターと管理APIに認証(ID・パスワード、またはOAuth/OpenID)をかける、HTTPノードとダッシュボードにBasic認証をかける。
- Siemensは一般的な対策として、機器へのネットワークアクセスを適切に保護するよう求めている。
今すぐやること
- 社内にSIMATIC IoT2050 Advancedがあるか、ファームウェアの版とNode-REDの有無を確認する。
- 該当すればV4.3.4.1以降に更新する。止められない機器は、Node-REDの削除か認証設定を先に行う。
- Node-REDのポートが外部から届かないか確認し、届くならファイアウォールで閉じる。IoT2050以外でNode-REDを動かしている機器・サーバーも同じように確認する。
- 配置済みのフローを開き、作った覚えのない
execノード、http inノード、functionノードがないか見る。 - 機器上に
/dev/shm/.b、/tmp/.kworkerなどの不審なファイルやプロセスがないか、VulnCheckが公表した通信先(85.215.73[.]250、45.194.90[.]57、攻撃元4.201.105[.]116)への通信がないかを確認する。
考察
- 「機能」がそのまま攻撃手段になる: Node-REDはもともとシェルコマンドを実行できる道具で、認証さえなければ脆弱性の細工は要らない。フロー1つを送るだけで済むため、攻撃の敷居は極めて低いと考える。
- 8月の修正が3か月後に効いてくる: 修正版は8月に出ていたが、検知ルールが出回った直後に攻撃が始まった。産業用の機器は更新が後回しになりやすく、未更新の機器が残っている可能性は高いとみる。
- IoT2050だけの問題と考えない方がよい: 勧告の対象はIoT2050だが、攻撃者が探しているのは「認証のないNode-RED」全般と読める。試作や現場の見える化で立てたNode-REDが外部に公開されたままになっていないか、この機会に棚卸ししたい。
- Webシェル型は更新だけでは消えない: フローとして残された裏口は、機器の更新後も残る可能性がある。更新と合わせてフローの中身を確認するのが無難だと考える。
出典
- Siemens ProductCERT: SSA-834709 Missing Authentication Vulnerability in Node-RED on SIMATIC IoT2050 Advanced with Industrial OS(2026年8月11日)
- VulnCheck: Exploitation Targeting Node-RED, a Tool Embedded in ICS Products(2026年11月2日)
- NVD: CVE-2026-58115
- Node-RED: Securing Node-RED
- The Hacker News: Attackers Exploit Critical Siemens IoT2050 Flaw to Plant Remote Command Backdoors(2026年11月3日)