脆弱性  ·  2026-11-03

Chainlit 2.12.0 MCP SSRF、セミコロンパスセグメントによるパススコープ付きallowed_urlsのバイパス

脆弱性Medium 影響度GlobalCVE-2026-120492
ChainlitのMCPエンドポイント検証により、攻撃者は「..;」セグメントを埋め込むことでパススコープ付きallowed_urlsエントリをバイパスでき、オペレーターが許可していないパスへのSSRFが可能になります。2026-11-02にGitHub Security AdvisoryとVulnCheckアドバイザリで公開されました。これはフレームワークのネイティブModel Context Protocolサーフェスにおける中程度の深刻度(CVSS 3.1 5.4 / CVSS 4.0 6.3)のサーバーサイドリクエストフォージェリです。
ChainlitはLLM/チャットボットアプリケーションを構築するための広く使われているオープンソースフレームワークであり、エージェントやユーザーが呼び出すMCPエンドポイントを公開しています。パススコープ付きMCP許可リストをバイパスすることで、フレームワーク自身のMCPサーバーが任意リクエストプリミティブになり、攻撃者は内部メタデータ、管理パス、またはオペレーターが遮断したと思っていた隣接サービスに到達できます。
認証されていない攻撃者が、「..;」パスセグメントを含むMCP URLを/mcpエンドポイントに送信します。Chainlitのvalidate_mcp_urlはセミコロン文字を拒否しないため、パススコープ付きプレフィックスがallowed_urlsの許可を通過するURLは、セミコロンパスパラメータを除去するオリジン上で、オペレーターの認可外のパスに解決され、サーバーサイドリクエストフォージェリを引き起こします。
Chainlit 2.12.0(GHSA-hvfh-5mj3-5f3jによるより広い範囲); backend/chainlit/mcp.py内のvalidate_mcp_url
GHSA-hvfh-5mj3-5f3j / VulnCheckアドバイザリが参照するパッチ済みバージョンにChainlitをアップグレードしてください。validate_mcp_urlでセミコロン文字を拒否し、MCP URLを許可されたパススコープに制限してください。バックエンドオリジンが実際にセミコロンパスパラメータを除去することを確認してください。
GitHub Security Advisory GHSA-hvfh-5mj3-5f3jNVD record CVE-2026-120492VulnCheck advisory — Chainlit 2.12.0 SSRF via semicolon path segment in MCP allowed_urls
ライブフィードで見る AIセキュリティとガバナンスの関連情報をさらに見る — 毎朝更新。
フィードを開く →