【活用ガイド】

JVNDB-2026-011687

langchainのLangchain Coreにおけるテンプレートエンジンで使用される特殊な要素の不適切な無効化に関する脆弱性

概要

LangChainはエージェントやLLM搭載アプリケーションを構築するためのフレームワークです。バージョン0.3.84および1.2.28以前には、LangChainのf文字列プロンプトテンプレートの検証に2つの不備がありました。第一に、一部のプロンプトテンプレートクラスはf文字列テンプレートを受け入れ、PromptTemplateと同様の属性アクセス検証を強制せずにフォーマットしていました。特に、DictPromptTemplateとImagePromptTemplateは属性アクセスやインデックス式を含むテンプレートを受け入れ、それらの式をフォーマット時に評価してしまう可能性がありました。第二に、解析されたトップレベルのフィールド名に基づくf文字列検証は、フォーマット指定子内のネストされた置換フィールドを拒否しませんでした。このパターンでは、ネストされた置換フィールドがトップレベルのフィールド名ではなくフォーマット指定子内に存在します。そのため、以前のフィールド名解析に基づく検証はテンプレートを拒否しませんでしたが、Pythonのフォーマットは実行時にネストされた式の解決を試みます。この脆弱性はバージョン0.3.84および1.2.28で修正されています。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 5.3 (警告) [その他]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 不要
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): 低
  • 完全性への影響(I): なし
  • 可用性への影響(A): なし
影響を受けるシステム


langchain
  • Langchain Core 0.3.84 未満
  • Langchain Core 1.0.0 以上 1.2.28 未満

本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。
想定される影響

当該ソフトウェアが扱う情報の一部が外部に漏れる可能性があります。
また、当該ソフトウェアが扱う情報について、書き換えは発生しません。
さらに、当該ソフトウェアは停止しません。
そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。
対策

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。
ベンダ情報

GitHub
CWEによる脆弱性タイプ一覧  CWEとは?

  1. テンプレートエンジンで使用される特殊な要素の不適切な無効化(CWE-1336) [その他]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-40087
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-40087
  2. 関連文書 : fix(core): add more sanitization to templates (#36612)  langchain-ai/langchain@af2ed47  GitHub
  3. 関連文書 : Release langchain-core==0.3.84  langchain-ai/langchain  GitHub
  4. 関連文書 : fix(core): add more sanitization to templates by eyurtsev  Pull Request #36612  langchain-ai/langchain  GitHub
  5. 関連文書 : fix(core): sanitize prompts more by eyurtsev  Pull Request #36613  langchain-ai/langchain  GitHub
  6. 関連文書 : fix(core): sanitize prompts more (#36613)  langchain-ai/langchain@6bab0ba  GitHub
  7. 関連文書 : Release langchain-core==1.2.28  langchain-ai/langchain  GitHub
更新履歴

  • [2026年04月20日]
      掲載