GitHub Advisoryadvisory · npm
GHSA-fm3h-p9wm-h74h Directus's webhook trigger flows can leak sensitive data
HIGH
Official page ↗
- Aliases
- CVE-2025-30353
- Ecosystem
- npm
- Packages
- directus
- Severity
- High
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
- Weaknesses
- CWE-200
- Reviewed
- 2025-03-26
Affected packages
• npm directus: >= 9.12.0, < 11.5.0 → fixed in 11.5.0
Description
Describe the Bug
In Directus, when a Flow with the "_Webhook_" trigger and the "_Data of Last Operation_" response body encounters a ValidationError thrown by a failed condition operation, the API response includes sensitive data. This includes environmental variables, sensitive API keys, user accountability information, and operational data.
This issue poses a significant security risk, as any unintended exposure of this data could lead to potential misuse.
To Reproduce
Steps to Reproduce:
1. Create a Flow in Directus with:
• Trigger: Webhook
• Response Body: Data of Last Operation
2. Add a condition that is likely to fail.
3. Trigger the Flow with any input data that will fail the condition.
4. Observe the API response, which includes sensitive information like:
• Environmental variables (`$env`)
• Authorization headers
• User details under `$accountability`
• Previous operational data.
Expected Behavior:
In the event of a ValidationError, the API response should only contain relevant error messages and details, avoiding the exposure of sensitive data.
Actual Behavior:
The API response includes sensitive information such as:
• Environment keys (`FLOWS_ENV_ALLOW_LIST`)
• User accountability (`role`, `user`, etc.)
• Operational logs (`current_payments`, `$last`), which might contain private details.
Related
Alias · CVE (1)
- CVE-2025-30353 Directus is a real-time API and App dashboard for managing SQL database content. vulnerability
Weakness · CWE (1)
- CWE-200 Exposure of Sensitive Information to an Unauthorized Actor weakness