メインコンテンツへスキップ
Nx ConsoleとTanStackのサプライチェーン侵害:開発端末で確認すること
ニュース 中級

Nx ConsoleとTanStackのサプライチェーン侵害:開発端末で確認すること

ニュース 中級

CISA KEVに追加されたNx Console CVE-2026-48027とTanStack CVE-2026-45321をもとに、拡張機能、npmパッケージ、開発端末、トークンの確認手順を整理する。

冒頭要約

2026年5月、CISA KEVNx Console CVE-2026-48027TanStack CVE-2026-45321 が登録されました。どちらも開発者が普段使う拡張機能やnpmパッケージを入口に、認証情報や開発環境へ影響し得るサプライチェーン事案として扱う必要があります。

最初に確認するのは、該当する拡張機能・パッケージの利用有無、インストール期間、開発端末・CIランナー・トークン・クラウド資格情報への影響です。単にパッケージを更新するだけでなく、どの端末・リポジトリ・CIが影響し得るかを記録します。

この記事では、攻撃コードや悪用手順ではなく、防御側が開発環境を安全に確認し、シークレット失効・再発行・ログ調査へ進むための実務手順に絞ります。

開発環境は高価値な入口

開発端末やCIランナーには、GitHubトークン、npmトークン、クラウド資格情報、SaaS APIキー、顧客データへの接続情報が集まりやすいです。サプライチェーン事案では、対象パッケージだけでなく、そこから読めた可能性のある資格情報を確認対象にします。


何が起きたか

CISA KEV JSONでは、Nx Consoleに関するCVE-2026-48027は悪性バージョンの公開を伴う事案として説明されています。TanStackに関するCVE-2026-45321も、信頼された開発者向けプロダクトの配布経路を通じて、認証情報を狙う悪性コードが配布された可能性として扱われています。

どちらも、利用者が「怪しいサイトを開いた」わけではなく、普段の開発作業の一部として拡張機能やパッケージを使っていた可能性があります。つまり、初動では開発者個人を責めるのではなく、どの開発環境に入り、どの権限へ到達できた可能性があるかを冷静に確認する必要があります。

影響を受ける可能性がある組織・担当者

読者まず確認すること見落とすと起きること
開発者VS Codeなどの拡張機能、npm/pnpm/yarnのlockfile、ローカル資格情報自分の端末にあるGitHub・npm・クラウド資格情報の露出を見落とす
SRE・DevOpsCIランナー、ビルドログ、パッケージキャッシュ、publish用トークンCI上の長期トークンやクラウド権限が残る
情シス・SOCEDRイベント、端末隔離判断、プロキシ・DNSIdPログ開発端末の不審通信やサインインを通常業務として見落とす
SaaS管理者GitHub Organization、npm、クラウド、SaaS APIキー退避・失効すべきトークンが残り、後続アクセスに使われる

特に、開発者端末に本番権限、個人アクセストークン、長期npmトークン、クラウドの長期キーがある環境では、サプライチェーン事案の確認範囲が広がります。

なぜ重要か

サプライチェーン侵害は、利用者から見ると「正規の名前」「正規の配布経路」「いつも通りの更新」に見える点が厄介です。防御側は、侵害が確認されたパッケージ名だけでなく、次のような周辺を確認する必要があります。

  • 該当する拡張機能やパッケージがどの端末、リポジトリ、CIで使われたか。
  • その環境に保存されていたGitHub、npm、クラウド、SaaSの資格情報は何か。
  • 悪性バージョンが入った可能性のある期間に、想定外のpublish、clone、workflow実行、API利用がなかったか。
  • パッケージキャッシュ、コンテナレイヤー、開発用イメージに古い状態が残っていないか。
  • 失効すべき長期トークンと、短命トークン・OIDCへ置き換えられるものは何か。

まず確認すべきこと

1. 利用有無と時刻を固定する

  • Nx Console、TanStack関連パッケージ、関連する拡張機能・ライブラリの利用有無を確認する。
  • CISA KEV、GitHub Advisory、NVDで対象名、対象バージョン、公開時刻、推奨対応を確認する。
  • 開発端末、CIランナー、コンテナビルド、パッケージキャッシュ、社内テンプレートを分けて確認する。
  • 確認した端末、リポジトリ、lockfile、ビルドID、日時を記録する。

2. 資格情報の影響範囲を見る

  • GitHub PAT、GitHub App、Actions Secrets、npm token、cloud access key、SaaS APIキーを一覧化する。
  • 端末ローカルに保存された認証情報と、CI/CD上のシークレットを分ける。
  • 長期トークン、広い権限、退職者・委託先・個人端末由来の資格情報を優先して確認する。
  • 露出可能性が否定できないトークンは、削除ではなく失効・再発行・利用ログ確認をセットで進める。

3. ログと変更履歴を見る

  • GitHubの監査ログ、リポジトリアクセス、workflow実行、token利用、secret scanningの通知を確認する。
  • npmやパッケージレジストリのpublish、token作成・利用、2FA設定、maintainer変更を確認する。
  • クラウド、IdP、SaaSの不審なAPI利用、地理的に不自然なサインイン、異常な利用量を確認する。
  • EDR、DNS、プロキシログで開発端末の異常通信や隔離イベントを確認する。

推奨される初動対応

やること

  • 公式アドバイザリを確認し、対象の拡張機能・パッケージを安全な版へ更新または削除する。
  • 対象期間に該当した開発端末とCIランナーを一覧化する。
  • 露出可能性のあるトークンを失効し、必要なものだけ最小権限で再発行する。
  • GitHub、npm、クラウド、SaaSの監査ログを同じ時系列で確認する。
  • パッケージキャッシュ、コンテナイメージ、開発用テンプレートに影響版が残っていないか確認する。

やらないこと

  • 悪性コードを実行して挙動を確認しようとしない。
  • 「該当パッケージを更新したから完了」と扱わない。
  • 端末上のシークレットをチャットやチケットに貼り付けない。
  • 公式情報で確認できない攻撃者名、被害規模、侵入経路を断定しない。
  • 影響端末を個人責任にせず、配布経路・トークン運用・検知の問題として扱う。

記録すること

対象アドバイザリ:
対象パッケージ・拡張機能:
確認した端末:
確認したリポジトリ:
該当lockfile / package manager:
対象期間:
失効したトークン:
再発行したトークン:
監査ログの確認結果:
未確認の端末・CI:
次回確認日:

判断基準

優先度条件推奨対応
対象期間に開発端末またはCIで該当拡張機能・パッケージを利用端末・CI・トークン・監査ログをインシデント初動として確認する
GitHub/npm/クラウドの長期トークンが対象環境に保存されていた失効、再発行、利用履歴確認、権限縮小を実施する
対象有無は不明だが、パッケージキャッシュや開発テンプレートに残存可能性があるキャッシュ削除、ビルド再生成、lockfile確認を実施する
Secret ScanningやEDRで関連イベントがある漏えい疑いとしてCSIRTへエスカレーションする
対象外が公式情報、lockfile、端末台帳で確認できる根拠と確認日時を残してクローズする

関連するCyberLens内部リンク

公式情報の確認先

まとめ

Nx ConsoleとTanStackの事案は、開発者向けツールやOSSパッケージが、通常業務の流れの中で攻撃面になり得ることを示しています。重要なのは、悪性コードの中身を追いかけることではなく、影響した可能性のある端末、CI、トークン、監査ログを防御側の手順で確認することです。

次に進むなら、開発ツール・OSSサプライチェーン確認チェックリスト で対象環境を棚卸しし、トークン露出が疑われる場合は GitHubトークン漏えい対応テンプレート に移ってください。

ESC