注目★★★★★GitHub Advisory
Chainlit の MCP 機能に認証なし RCE 脆弱性、v2.12.0 でパッチ
30秒で把握
- 1Chainlit v2.4.0~v2.12.0 未満・MCP 有効時に認証なしの RCE 脆弱性 (CVE-2026-45018)
- 2引数検証なしのコマンドインジェクション・`npx -c` で任意コマンド実行可・プロセス権限で動作
- 3v2.12.0 (2026-08-25) でパッチ・MCP はデフォルト無効だが有効設定の場合は即更新必須
要約
Chainlit v2.4.0 以降 v2.12.0 未満で、MCP (Model Context Protocol) 機能が有効な場合、`POST /mcp` エンドポイントがコマンドインジェクションに対して脆弱である。`validate_mcp_command()` 関数が実行ファイル名のみを許可リストで検証し、引数をチェックしないため、攻撃者は `npx -y -c 'ARBITRARY COMMAND'` を送信することで、Chainlit プロセスの権限でサーバ上の任意コマンドを実行できる。認証は不要で、セッションを開けるクライアントなら誰でも `/mcp` にアクセス可能。v2.7.0 以降は MCP がデフォルト無効化されているため、ほとんどのデプロイメントは影響を受けない。
あなたへの影響
Chainlit を本番運用しており `.chainlit/config.toml` で `features.mcp.enabled = true` を設定している場合、v2.12.0 への即座の更新を実施してください。
推奨:MCP がデフォルト無効なので設定を明示的に追加していなければ影響ありませんが、設定ファイルと実行中のバージョンを今すぐ確認し、有効な場合は速やかにパッチを当ててください。