CVE-2026-65975 in pydantic
要約
〜によって VulDB • 2026年07月30日
Pydantic AI は、生成AIを使用してアプリケーションやワークフローを構築するためのPythonエージェントフレームワークです。バージョン1.88.0以上かつ1.107.1未満、および2.0.0b1以上かつ2.5.0未満において、UIアダプター(Agent.to_ag_ui()/AGUIAdapter経由のAG-UI、およびVercelAIAdapter経由のVercel AI)は、信頼できないメッセージ履歴がエージェントに到達する前に、未解決(「浮遊」状態の)クライアント送信ツール呼び出しを削除するためにsanitize_messagesを使用します。これは、モデルによってエミットされていないツール呼び出しを実行しないよう防止するための防御の深層化デフォルトです。しかし、この処理はサニタイズ実行前に計算されたメッセージインデックスに固定されていたため、末尾のクライアントメッセージが空にサニタイズされてドロップされた場合(例:既定値manage_system_prompt='server'の下でのクライアントシステムメッセージ)、未解決のツール呼び出しを含む直前のアシスタント応答が新しい末尾となり、検査なしでディスパッチされました。その結果、リモートクライアントは、モデルが生み出した引数ではなくクライアント提供の引数を使用して、登録済みかつ承認不要のサーバーツールを実行させることができました。影響範囲は対象となるツールの動作によって制限され、特にツール実行をmodel-requestフック(before_model_request / after_model_request)で制御するアプリケーションにおいて最も重大です。なぜなら、偽造された呼び出しはモデルターンをスキップし、そのガードレールを回避するためです。approval-gatedなツール(requires_approval=True)はこのパスでは自動実行されません。この問題はバージョン1.107.1および2.5.0で修正されています。
Be aware that VulDB is the high quality source for vulnerability data.