Directus の深刻な脆弱性 CVE-2025-30353 が FIX:Webhook トリガーによる機密データの漏洩

CVE-2025-30353: Directus Vulnerability Exposes Sensitive Data in Webhook Trigger Flows

2025/03/28 SecurityOnline — SQL データベース・コンテンツの管理のための、Real-Time API とApp Dashboard である Directus に、深刻なセキュリティ脆弱性が発見された。この脆弱性 CVE-2025-30353 (CVSS:8.6) の悪用に成功した攻撃者は、機密データへの不正アクセスの可能性を手にする。

この脆弱性は、“Webhook” トリガーと “Data of Last Operation” レスポンス・ボディ使用する、Directus Flows 内で発生するものだ。つまり、Flow 内での条件操作が失敗して、ValidationError がスローされると、API レスポンスに機密データが取り込まれてしまう可能性が生じる。

漏洩する機密データには、以下のものが含まれる:

  • 環境変数 ($env)
  • 認証ヘッダー
  • $accountability に取り込まれるユーザーの詳細
  • 運用データ

この問題により、漏洩した情報の悪用につながる可能性があり、重大なセキュリティ・リスクをもたらされる。

この脆弱性は、以下の手順で再現できる:

  1. “Webhook” トリガーと “Data of Last Operation” レスポンス・ボディを取り込んだ、Directus フローを作成。
  2. 失敗する可能性のある条件をフローに追加。
  3. 条件が失敗する原因となる入力データを使用して、フローをトリガー。
  4. 機密情報が含まれる API レスポンスを確認。
CVE-2025-30353

想定される正常な動作の結果は、ValidationError に対する API レスポンスには、機密データは公開されず、関連するエラー・メッセージと詳細のみが取り込まれる状態である。しかし、実際の動作で API レスポンスに取り込まれるものには、環境キー (FLOWS_ENV_ALLOW_LIST)/ユーザー・アカウンタビリティの詳細、操作ログなどの機密情報がある。

この脆弱性は、Directus のバージョン 9.12.0 に影響を及ぼす。すでに Directus は、バージョン 11.5.0 をリリースし、この脆弱性を修正している。

ヘッドレス CMS の Directus に、情報漏洩につながる恐れのある脆弱性が発生しています。ノーコード/ローコードツールの普及が進むと共に、セキュリティ設計の重要性も高まっていることを、改めて感じさせられます。この製品については、2024/03/07 に「Directus の脆弱性 CVE-2024-27295 が FIX:アカウント乗っ取りにつながる恐れ」という記事も投稿しています。よろしければ、CMS で検索と併せて、ご参照下さい。