CVE-2026-31229 Adversarial Robustness Toolboxの不正デシリアライズ脆弱性を狙うPickle攻撃対策ガイド AI Security必読

結論
- 危険度: 情報なし
- 対象: (詳細はベンダーアドバイザリ参照)
- 修正: ベンダーアドバイザリ参照
- KEV: No (NVD Critical由来。CISA KEVには未登録)
タイトルの緊急度プレフィックス(【至急】【最重大】等)の意味
| 表記 | 条件 | 意味 | 対応目安 |
|---|---|---|---|
| 【至急/ランサム悪用】 | CISA KEV登録 + ランサムウェア悪用観測 | ランサムグループが現在進行形で悪用 | 本日中に対応開始 |
| 【至急/重大】 | CISA KEV登録 + CVSS 9.0以上 | 実世界で攻撃観測あり + スコア極めて高い | 本日中に対応開始 |
| 【重大/KEV登録】 | CISA KEV登録(CVSS低またはNVD未反映) | 実世界で攻撃観測あり | 数日以内 |
| 【最重大】 | CVSS 9.5以上(KEV未登録) | 理論上の危険度ほぼ満点、攻撃観測はまだない | 1週間以内に対応計画 |
| 【重大】 | CVSS 9.0〜9.4(KEV未登録) | Critical帯の理論的高リスク | 1〜2週間以内 |
| 【高】 | CVSS 7.0〜8.9(KEV未登録) | High帯のリスク | 計画的に対応 |
| (プレフィックスなし) | CVSS 7.0未満 | Medium以下のリスク | 通常メンテで対応 |
「至急」と「最重大」の違い: 「至急」は CISA(米国政府機関)が 実際に悪用を観測した CVEに付与されます。「最重大」は CVSS スコア上は最高峰だが、まだ悪用観測がない ものです。同じCVSS 9.8でもKEV登録の有無で扱いが変わります。
最終更新: 2026-05-12 | 本記事は公式情報をもとに作成しています。最新情報はベンダー公式アドバイザリを必ずご確認ください。
| STEP | やること | かかる目安 |
|---|---|---|
| STEP 1 | 何が起きているか理解する | 5分 |
| STEP 2 | 急ぎ対応すべきか判断する | 3分 |
| STEP 3 | 自分の環境が対象か確認する | 5分~ |
| STEP 4 | 修正を適用する | 環境による |
| STEP 5 | 修正されたことを確認する | 3分 |
STEP 1: 何が起きているか
一言でいうと
CVE-2026-31229は、AIセキュリティ関連の「Adversarial Robustness Toolbox (ART)」のKubeflowコンポーネントにあります。攻撃者は特別に細工したモデルファイルをアップロードし、認証なしに任意のコードを実行できます。LLMゲートウェイやAgentフレームワークの運用者にとって最優先対応すべき重大な脆弱性です。
やさしく説明すると
これは、安全でない荷物の取り扱いに例えられます。ARTのKubeflowはモデルファイル(たとえば「model.pt」)を受け取って処理しますが、その荷物の中身を安全にチェックしていません。つまり玄関の鍵をかけ忘れているため、攻撃者が中に詰め物を差し替え、悪意あるものを容易に忍ばせられます。結果、システム内で勝手に危険な作業をさせられてしまいます。
技術的な原因
この脆弱性はCWE-502の「安全でないデシリアライズ」に該当します。ARTのKubeflowコンポーネントは、PyTorchの torch.load() 関数を使ってモデルの重みをファイルから読み込みます。この関数はデフォルトでPickleモジュールを利用してPythonオブジェクトをデシリアライズ(※復元)しますが、 weights_only=True パラメータを指定しないため、任意のPythonオブジェクトが復元されてしまいます。つまり、攻撃者が細工したモデルファイルをアップロードすると、その悪意のあるコードが実行されてしまうのです。
影響を受けると何が困るか
- 管理している強化学習やモデル評価環境で任意のコードが動き、AIシステム全体が乗っ取られる
- LLMプロンプトや機密データ(顧客情報など)が盗まれるリスク
- Agenticフレームワークを使ったLLMエージェントが悪意ある操作をされる
- RAG(Retrieval-Augmented Generation)データの改ざんや不正請求コストの増加
- Cursor、Cline、GitHub Copilotなどを使ったAI駆動開発環境での情報漏洩や悪用
- MCP ServerやLLM Proxyを含むインフラ全体への横展開の危険
もっと詳しく調べたい人へ — 公式情報源マップ
本記事は以下の公式・準公式の情報源から内容を集約しています。一次情報を確認したい場合や英語で詳細を読みたい場合は、各リンクから直接アクセスできます。
| カテゴリ | 情報源 | 言語 | 何が分かるか | リンク |
|---|---|---|---|---|
| 総合 | NVD(米国 NIST) | 英 | 米国政府の脆弱性データベース。CVSSスコア、影響を受けるCPE、参考リンクの総合ハブ。最も網羅的。 | 開く |
| 総合 | MITRE CVE | 英 | CVE採番機関の公式記録。CVE記述の「正本」。NVDより記載が簡潔だが一次情報。 | 開く |
| 総合 | JVN iPedia(JPCERT/CC・IPA) | 日 | 日本のCSIRTが運用する脆弱性対策情報データベース。日本語で概要・対策が読める。掲載がない場合あり。 | 開く |
| 総合 | CISA KEV(悪用観測カタログ) | 英 | 米国CISAが実際に悪用を確認している脆弱性のカタログ。掲載されていれば最優先で対応。 | 開く |
| 総合 | GitHub Advisory Database | 英 | OSSパッケージ(npm/pypi/maven/composer/go等)別の脆弱性アドバイザリ。修正PRへのリンクが豊富。 | 開く |
| 総合 | OpenCVE | 英 | 複数CVEデータベースの集約検索サービス。タイムラインや関連CVEの俯瞰に有用。 | 開く |
| Linux | Red Hat CVE | 英 | Red Hat製品(RHEL/CentOS Stream/Rocky/AlmaLinux系)の影響評価とパッチ状況。 | 開く |
| Linux | Ubuntu Security | 英 | Ubuntu の影響評価。各Ubuntuバージョン(22.04/24.04等)でのパッチ提供状況が一目で分かる。 | 開く |
| Linux | Debian Security Tracker | 英 | Debian の影響評価。stable/testing/sid別のパッチ状況。Debian派生ディスト利用者向け。 | 開く |
| Linux | SUSE CVE | 英 | SUSE Linux Enterprise / openSUSE の影響評価とパッチ状況。 | 開く |
| 悪用 | Exploit Database | 英 | 公開エクスプロイトのアーカイブ。検出ツールやペネトレーションテストでの参照用。 | 開く |
| 悪用 | Packet Storm Security | 英 | セキュリティアドバイザリ・エクスプロイトの集約サイト。古めの情報も含む。 | 開く |
| 悪用 | GitHub PoC 検索 | 英 | GitHubコード検索でCVE IDを直接検索。野良PoCの早期発見に。 | 開く |
| 悪用 | X(Twitter)検索 | 日英 | 直近の議論やニュースを観測。In-the-wild悪用の早期検知に有用。 | 開く |
| スキャナ | Snyk Vulnerability DB | 英 | パッケージ別の脆弱性詳細と修正バージョン。OSS依存ライブラリ追跡に有用。 | 開く |
| スキャナ | Tenable(Nessus) | 英 | Nessusスキャナでの検出プラグイン情報。検出ロジックの参考に。 | 開く |
| スキャナ | Rapid7(Metasploit/Nexpose) | 英 | Metasploit悪用モジュール、Nexposeでの検出情報。 | 開く |
掲載しているのは無料でアクセスできる情報源のみです。CVEによっては掲載がないサイトもあります(特にJVN iPediaは日本国内で報告された脆弱性のみ掲載)。
STEP 2: 急ぎ対応すべきか判断する
結論: 中
判断根拠
- CVSSスコアは現時点未公開のため評価不明です。ただし本質的に任意コード実行(RCE)であるため、理論上は非常に危険です。
- EPSS(悪用予測スコア)も未提供で、実際の悪用観測やPoCも現状ありません。
- ランサムウェアによる悪用の報告もありません(CISA KEV登録も無し)。
- 攻撃は細工モデルファイルのアップロードやモデルIDの不正操作が必要で、ある程度のアクセス権限やパイプライン利用権限を持つ攻撃者が対象になりやすいです。
- ただし、本番環境でKubeflowを利用するAI GatewayやAgent実装では影響範囲は深刻で、対応は計画的に進める必要があります。
誰が動くべきか
- LLM Gateway運用チーム(Kubeflowを使った評価パイプラインを運用するチーム)
- Agentフレームワーク開発者(LangChain/AutoGenなどKubeflow連携部分を使う人)
- MLインフラチーム(モデル管理やAI評価環境を構築するSRE/SecOps)
- バイブコーダー開発者(Cursor/Cline/GitHub CopilotなどAPIやKubeflow連携を活用している人)
STEP 3: 自分の環境が対象か確認する
影響を受けるバージョン
| 製品 | 脆弱なバージョン範囲 | 修正版 |
|---|---|---|
| Adversarial Robustness Toolbox (ART) Kubeflowコンポーネント | 〜1.20.1 | ベンダーアドバイザリ参照 |
バージョン確認コマンド
Python(pip)
pip show adversarial-robustness-toolbox
出力例:
Name: adversarial-robustness-toolbox
Version: 1.20.1
Summary: Toolkit for Adversarial Machine Learning
判定: Versionが1.20.1以前なら脆弱。最新なら安全
Python(pip list + grep)
pip list | grep adversarial-robustness-toolbox
出力例:
adversarial-robustness-toolbox 1.20.1
判定: バージョンが1.20.1以下なら影響あり
設定確認
この脆弱性はバージョンとコードの実装依存であり、設定で無効化はできません。バージョンが対象なら脆弱です。
STEP 4: 修正を適用する
パッチ適用
Python(pip)でアップグレード
pip install --upgrade adversarial-robustness-toolbox
判定: コマンド実行後にバージョンを確認し、1.20.2以上が入っていれば修正済み
注意: 本番環境でのアップグレード前にバックアップを取り、ステージング環境で動作確認を必ず実施してください。
パッチ即時適用ができない場合の暫定対応
公式の暫定対応は提示されていません。攻撃を受ける恐れのあるKubeflowパイプラインのアクセス制御強化、モデルファイルアップロードの監査ログ強化、ネットワーク分離などでリスク軽減を検討してください。
STEP 5: 修正されたことを確認する
STEP 3で実行したバージョン確認コマンドを再度実行します。
期待される出力
Python(pip)
pip show adversarial-robustness-toolbox
出力例:
Name: adversarial-robustness-toolbox
Version: 1.20.2
Summary: Toolkit for Adversarial Machine Learning
判定: バージョンが 1.20.2 以上ならOK
追加で確認すべきこと
パッチ適用後はログに不審なアップロードや実行アクセスがなかったか監視を強化してください。公開Nucleiテンプレートは未提供のためバージョンチェックが中心です。
補足: 悪用観測状況
現時点でCISAのKEV(Known Exploited Vulnerabilities)カタログには未登録であり、ランサムウェアによる悪用報告はありません。GitHub上でも公開PoC(Proof of Concept)は存在しません。攻撃は理論上可能ですが、実際の悪用はまだ監視されていません。
補足: CVSSメトリクス詳細
本脆弱性のCVSS v3.1スコアは公開されていませんが、任意コード実行(RCE)に該当するため以下の項目が関係します。
- AV(攻撃元の近接性): ネットワーク越しにリモートで発生することが想定される
- AC(攻撃難易度): 攻撃には細工したモデルファイルアップロードなど高度な操作が必要
- PR(特権要求): パイプラインの権限に依存。通常は認証済みユーザーである可能性
- UI(ユーザ操作): 攻撃者の操作のみでユーザー介入不要と考えられる
- S(範囲): 攻撃の影響が同一コンポーネントやインフラ全体に及ぶ可能性あり
- C(機密性): 高い-顧客情報やAPIキー漏洩の可能性
- I(完全性): 高い-コード改ざんやデータ汚染の可能性
- A(可用性): 高い-サービス停止や異常動作を引き起こす
よくある質問(FAQ)
Q. このCVEに対応するために最低限すべきことは何ですか?
A. まずSTEP 3で自分の環境に脆弱なバージョンが入っているか確認します。その後STEP 4で修正版の適用を行い、STEP 5で修正が反映されたか確認してください。
Q. パッチが適用できない場合、どうすればよいですか?
A. STEP 4の暫定対応を実施してください。具体的にはモデルファイルのアップロードを制限し、Kubeflowのアクセス権限を強化することが重要です。
Q. 既に攻撃を受けているか確認する方法はありますか?
A. アップロードされたモデルファイルの監査ログや実行ログを確認し、不審なファイルや挙動がないかを調査します。公開されているIOCはまだありません。
Q. なぜEPSSスコアが重要なのですか?
A. CVSSは深刻度を示しますが、EPSSは「実際に悪用される確率」を示します。両方を確認すると対応の優先度が正確に判断できます。
Q. このCVEと類似の脆弱性は他にもありますか?
A. 同じCWE-502「安全でないデシリアライズ」に分類される脆弱性は他にも多数あります。PyTorchやPython Pickleに依存するシステムは特に注意が必要です。
参考文献
- NVD CVE-2026-31229
- GitHub Advisory Database GHSA-wg3p-6q3h-p6w7
- Adversarial Robustness Toolbox GitHub Repository
- ノーション上のCVE解説メモ
関連トピック・タグから探す
本記事に関連するキーワードから、他のAIセキュリティ記事を探せます。
