CVE-2026-48121 LangChain LangGraph MongoDB用NoSQLインジェクション脆弱性の詳細とAI Security対策ガイド

結論
- 危険度: Medium (CVSS 6.7)
- 対象: @langchain/langgraph-checkpoint-mongodb <= 1.3.0
- 修正: 1.3.1
- 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-08-04 | 本記事は公式情報をもとに作成しています。最新情報はベンダー公式アドバイザリを必ずご確認ください。
| STEP | やること | かかる目安 |
|---|---|---|
| STEP 1 | 何が起きているか理解する | 3分 |
| STEP 2 | 急ぎ対応すべきか判断する | 3分 |
| STEP 3 | 自分の環境が対象か確認する | 5分 |
| STEP 4 | 修正を適用する | 環境による |
| STEP 5 | 修正されたことを確認する | 3分 |
STEP 1: 何が起きているか
一言でいうと
CVE-2026-48121は@langchain/langgraph-checkpoint-mongodbのバージョン1.3.0以下で、認証なしに不正なデータを使い他のテナントのチェックポイント情報を読み取れるNoSQLインジェクションです。LLMゲートウェイ運用者にとって最優先対応の脆弱性です。
やさしく説明すると
この脆弱性は、共有のデータベースの鍵穴に合わない合鍵を勝手に使われたような状態を招きます。サービスごとの領域を区切ったはずが、鍵の検査が甘いために攻撃者が他の利用者の途中データをのぞき見できます。つまり、設定の甘さで多人数が使うデータの壁を簡単に越えられます。
技術的な原因
この問題はNoSQLインジェクション(非構造化のデータベース操作の注入攻撃)で、CWE-943に該当します。@langchain/langgraph-checkpoint-mongodbのMongoDBSaver.getTuple関数が、config.configurableから受け取ったチェックポイント識別子(thread_id, checkpoint_ns, checkpoint_id)を文字列として検証せず、MongoDBのfind()クエリに直接渡しています。
攻撃者がMongoDBの演算子(例: $gtや$ne)を含むオブジェクトを渡すと、それが「条件式」として解釈され、本来狙ったチェックポイント範囲の制限をすり抜けてしまいます。特にマルチテナントやユーザー隔離環境で外部からの未検証入力を受け渡している場合にリスクが高いです。
影響を受けると何が困るか
- マルチテナント環境で顧客ごとのチェックポイント情報が他テナントに漏洩する
- 進行中の書き込みデータを含む待機中の情報も盗まれる
- AI GatewayやLLM Proxyのセキュリティ境界が破られる
- APIキーや認証トークンの流出につながる可能性がある
- Agentフレームワークでプロンプトや状態の改ざんによる乗っ取りリスク
- バイブコーダーなどが利用する内部状態の漏洩によるコード生成ミスや情報漏洩
- 請求コストの不正な膨張を招く恐れ
- インフラ全体の信頼性と安全性が揺らぐ
もっと詳しく調べたい人へ — 公式情報源マップ
本記事は以下の公式・準公式の情報源から内容を集約しています。一次情報を確認したい場合や英語で詳細を読みたい場合は、各リンクから直接アクセスできます。
| カテゴリ | 情報源 | 言語 | 何が分かるか | リンク |
|---|---|---|---|---|
| 総合 | 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 v3.1 スコアは6.7 (Medium)。実務的には中程度の注意が必要だが、即時緊急対応レベルではない。
- 攻撃元は隣接ネットワーク(ADJACENT_NETWORK)、権限は低い(LOW)もののユーザ操作が必要(UI:R)で複雑度は低い。
- EPSSスコアは提供されていない(悪用予測データなし)。
- ランサムウェアによる悪用は未確認。
- 公開PoCやExploit情報はGitHub・ExploitDBともに存在しない。
- 不正な入力検証がない設定・マルチテナント環境で特に影響大。
誰が動くべきか
- LLM Gateway運用チーム(@langchain/langgraph-checkpoint-mongodbを利用している場合)
- Agentフレームワーク開発者(LangChain等のフレームワークで本脆弱性のパッケージを使っている人)
- RAGパイプライン保守者(マルチテナント運用環境の管理者)
- バイブコーダー開発者(Cursor/Cline/Aider/GitHub Copilot/Claude Codeユーザーのうちlanggraphの利用者)
- AI駆動開発を行っているMLインフラチーム
STEP 3: 自分の環境が対象か確認する
影響を受けるバージョン
| 製品 | 脆弱なバージョン範囲 | 修正版 |
|---|---|---|
| @langchain/langgraph-checkpoint-mongodb | 1.3.0 以下 | 1.3.1 |
バージョン確認コマンド
Node.js (npm)
npm list @langchain/langgraph-checkpoint-mongodb
出力例:
@project-name@1.0.0 /path/to/project
└─┬ @langchain/langgraph-checkpoint-mongodb@1.3.0
判定: バージョンが 1.3.0 以下なら脆弱。1.3.1以上なら安全。
Node.js (package.json)
cat package.json | grep langgraph-checkpoint-mongodb
出力例:
"@langchain/langgraph-checkpoint-mongodb": "^1.3.0"
判定: バージョン指定が 1.3.1 以上であることを確認。
設定確認
本脆弱性はMongoDBのNoSQLインジェクションによるものです。設定による緩和はなく、アプリケーションが untrusted input(信頼していない入力)を config.configurable に型変換やスキーマ検証なしに渡すことが根本原因です。したがって設定依存ではありません。バージョンが脆弱範囲なら危険です。
バージョンアップと入力検証の両方を必須で実施してください。
Nucleiテンプレートでの検出
本CVEの公開Nucleiテンプレートは執筆時点で確認されていません。検出はバージョンチェックや設定確認を基本としてください。
STEP 4: 修正を適用する
パッチ適用
Node.js (npm)
npm install @langchain/langgraph-checkpoint-mongodb@1.3.1
判定: バージョンが 1.3.1以上にアップグレードされることを確認してください。
Node.js (pnpm)
pnpm update @langchain/langgraph-checkpoint-mongodb@1.3.1
判定: アップグレード後、対象バージョンか確認してください。
注意: パッチ適用前に必ずバックアップと動作検証環境でのテストを行ってください。ステージング環境での動作確認後、本番環境へ慎重に適用してください。
パッチ即時適用ができない場合の暫定対応
現時点で公式からの暫定回避策は提示されていません。暫定対応としては不正入力を受け取らないように、アプリケーション側で入力値を文字列化、厳格なスキーマバリデーション処理を追加してください。加えて、ネットワーク分離やアクセス制御強化を検討してください。
STEP 5: 修正されたことを確認する
STEP 3で実行したバージョン確認コマンドを、パッチ適用後に再度実行してください。
期待される出力
Node.js (npm)
npm list @langchain/langgraph-checkpoint-mongodb
出力例:
@project-name@1.0.0 /path/to/project
└─┬ @langchain/langgraph-checkpoint-mongodb@1.3.1
判定: バージョンが 1.3.1 以上ならOK。
追加で確認すべきこと
- 利用可能であればNuclei等のスキャナを再度実行して検出されないことを確認する
- サービスログに異常なアクセスや試行がないかを監視する
- 多テナント環境では権限分離・アクセス制御設定に漏れがないかを再確認する
補足: 悪用観測状況
本CVEは2026年8月時点でCISA KEV(Known Exploited Vulnerabilities、悪用確認済み脆弱性カタログ)には未登録です。ランサムウェア等の悪用報告もありません。公開PoCやExploitコードもGitHub・ExploitDBで確認されていません。
よって現時点では積極的に悪用されている状況ではありませんが、マルチテナントを安全に運用するためには早急な対策が求められます。
補足: CVSSメトリクス詳細
- AV (攻撃元): ADJACENT_NETWORK(隣接ネットワーク)- 攻撃者は同じネットワーク内から攻撃できる
- AC (攻撃複雑度): LOW(低)- 攻撃は簡単に実行可能
- PR (必要権限): LOW(低)- 低権限ユーザーで攻撃可能
- UI (ユーザ操作): REQUIRED(必要)- 攻撃にはユーザ操作が必要
- S (スコープ): UNCHANGED(変化なし)- 侵害範囲は限定的
- C (機密性への影響): HIGH(高)- 機密情報が重大に漏洩する
- I (完全性への影響): HIGH(高)- データの改ざんが可能
- A (可用性への影響): NONE(なし)- サービス停止には繋がらない
よくある質問(FAQ)
Q. このCVEに対応するために最低限すべきことは何ですか?
A. STEP 3の自分の環境のバージョン確認とSTEP 4での1.3.1へのアップデートをまず実施してください。その後STEP 5の確認で修正が反映されたことを検証してください。
Q. パッチが適用できない場合、どうすればよいですか?
A. アプリケーション側で入力値を文字列に固定するスキーマバリデーションを追加し、不正なオブジェクト型注入を防いでください。加えてネットワーク隔離やアクセス制御の強化を検討してください。
Q. 既に攻撃を受けているか確認する方法はありますか?
A. 現時点で専用のIOCは公開されていません。ログに異常な形式のIDやMongoDBクエリがないか確認し、不審なイベントの監視を続けてください。
Q. なぜEPSSスコアが重要なのですか?
A. CVSSは「脆弱性の技術的な深刻度」を示す一方、EPSSは「実際に悪用される可能性」を示します。両者で対応優先度を正しく評価できます。
Q. このCVEと類似の脆弱性は他にもありますか?
A. CWE-943(NoSQLインジェクション)に分類される脆弱性は他にもあり、NoSQLデータベースを使うAI/LLM周辺の開発・運用では類似の注意が必要です。
参考文献
関連トピック・タグから探す
本記事に関連するキーワードから、他のAIセキュリティ記事を探せます。
