English version →
カテゴリ
CVE-2026-68904 high CVSS 7.0

node-opcua-transport の脆弱性 (CVE-2026-68904)

概要

node-opcua-transport に 脆弱性 (CVE-2026-68904) が存在。不正な操作・情報露出のリスクがあります。対策: 2.170.0 以上に更新。

原文の説明

取得元が公開している説明をそのまま載せています (多くは英語)。

SUMMARY

A combination of bugs in node-opcua causes unlimited TCP socket accumulation (FIN-WAIT-2 state) during automatic reconnection, leading to memory exhaustion and eventual container/process crash (OOM kill). The issue is triggered by the default configuration (keepSessionAlive: true) when the OPC UA server has clock skew relative to the client.

Affected version: Tested on 2.169.0 (latest as of April 2026).

ENVIRONMENT

  • Node.js: v24.11.0
  • node-opcua: 2.169.0
  • OS: Linux (containerized via Podman, slirp4netns networking)
  • OPC UA Server: Industrial PLC (opc.tcp endpoint), clock skew of ~50 minutes ahead of client
  • Client config: keepSessionAlive: true (default), keepAliveInterval: 3000, securityMode: None, securityPolicy: None

ROOT CAUSE ANALYSIS

Bug #1 - ClientTCP_transport._on_ACK_response() uses socket.end() instead of socket.destroy()

File: node-opcua-transport/src/client_tcp_transport.ts, _on_ACK_response() method

When the HEL/ACK handshake fails during a reconnection attempt, the error handler calls socket.end():

if (err || !data) {
    externalCallback(err || new Error("no data"));
    if (this._socket) {
        this._socket.end();   // <- sends TCP FIN, leaves socket in FIN-WAIT-2
    }
}

socket.end() sends a TCP FIN and waits for the peer to close its side. If the peer doesn't respond (common with PLCs), the socket remains in FIN-WAIT-2 state indefinitely, leaking file descriptors and memo…

出典: NIST National Vulnerability Database NVD GitHub Advisory

自動生成の要約

取得元のデータ (CVSS・CWE・影響バージョンなど) から SecPulse が定型文で組み立てた要約です。AI は使っていません。正確な内容は下の原文と参照URLで確認してください。

node-opcua-transport という製品で、CVE-2026-68904 という番号がついた弱点 (脆弱性) が見つかりました。
不正な操作・情報露出のリスクがあります。重要度は CVSS スコア 7.0/10 です。
対策: node-opcua-transport を 2.170.0 以上に更新してください。
心配なら、システム担当者や製品の公式サイトで「node-opcua-transport CVE-2026-68904」を検索してください。

CVE-2026-68904 (node-opcua-transport) — CWE-400 / CVSS v3 7.0
攻撃ベクター: ネットワーク経由 (リモート攻撃可) / 認証不要 / 被害者操作不要
修正バージョン: 2.170.0 (即時適用推奨)
対応方針: 1) SBOMで影響バージョン横断確認, 2) ステージング検証→本番更新, 3) WAF/プロキシで該当エンドポイントを監視, 4) ログでIOC調査。
参考: 当ページの『参照URL』の GHSA / vendor advisory / patched release を参照。

❓ 何が問題か

node-opcua-transport に 脆弱性 (CWE-400) があります。

📍 影響範囲

node-opcua-transport の影響バージョンはベンダーのアドバイザリで確認してください。

🔥 重要度

重要度: 重要 (CVSS 7.0/10)。不正な操作・情報露出のリスクがあります。

🔧 修正方法

2.170.0 に更新してください。

🛡️ 暫定回避

修正版が未提供時は、影響機能の無効化・WAFルール・ネットワークACLでの遮断を検討。

🔍 検知方法

Webサーバ・プロキシ・WAFログで該当CVEのIOCに合致する不審リクエストを検索。SBOM/依存ファイルで影響バージョンを横断確認。

対応アクション

SOC/SREチームが順番に実行すべき具体的なステップとコマンド例

  1. 1
    影響範囲の特定 identify
    grep -r 'node-opcua-transport' . | grep -v node_modules

    リポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で node-opcua-transport を grep し、稼働しているサービス・バージョンを把握する。

  2. 2
    パッチ適用 patch
    Upgrade node-opcua-transport to 2.170.0

    ステージング環境で 2.170.0 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。

  3. 3
    事後検証 verify
    Confirm patched version is live in production

    パッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。

影響パッケージ

npm node-opcua-transport
[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.170.0"}]}]
npm node-opcua-client
[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.170.0"}]}]
npm node-opcua
[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.170.0"}]}]

参照URL

当サイトでは、アクセス解析と広告の効果測定のために Cookie を使います。株式会社Game のサイト共通の設定です。 詳しく