ghsa-fm3h-p9wm-h74h
Vulnerability from github
Published
2025-03-26 20:08
Modified
2025-03-26 20:08
Summary
Directus's webhook trigger flows can leak sensitive data
Details

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.

Image Image Image

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.

Show details on source website


{
  "affected": [
    {
      "package": {
        "ecosystem": "npm",
        "name": "directus"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "9.12.0"
            },
            {
              "fixed": "11.5.0"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2025-30353"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-200"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2025-03-26T20:08:58Z",
    "nvd_published_at": "2025-03-26T18:15:27Z",
    "severity": "HIGH"
  },
  "details": "### Describe the Bug\n\n 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.\n\nThis issue poses a significant security risk, as any unintended exposure of this data could lead to potential misuse.\n\n![Image](https://github.com/user-attachments/assets/fb894347-cd10-4e79-9469-8fc1b2289794)\n![Image](https://github.com/user-attachments/assets/a20337a2-005f-4cfd-ba30-fc5f579ed6c4)\n![Image](https://github.com/user-attachments/assets/9b776248-4a20-46f0-92a4-3760d8e53df9)\n\n\n### To Reproduce\n\n**Steps to Reproduce:**\n1. Create a Flow in Directus with:\n   - Trigger: Webhook\n   - Response Body: Data of Last Operation\n2. Add a condition that is likely to fail.\n3. Trigger the Flow with any input data that will fail the condition.\n4. Observe the API response, which includes sensitive information like:\n   - Environmental variables (`$env`)\n   - Authorization headers\n   - User details under `$accountability`\n   - Previous operational data.\n\n**Expected Behavior:**\nIn the event of a ValidationError, the API response should only contain relevant error messages and details, avoiding the exposure of sensitive data.\n\n**Actual Behavior:**\nThe API response includes sensitive information such as:\n- Environment keys (`FLOWS_ENV_ALLOW_LIST`)\n- User accountability (`role`, `user`, etc.)\n- Operational logs (`current_payments`, `$last`), which might contain private details.",
  "id": "GHSA-fm3h-p9wm-h74h",
  "modified": "2025-03-26T20:08:58Z",
  "published": "2025-03-26T20:08:58Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/directus/directus/security/advisories/GHSA-fm3h-p9wm-h74h"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2025-30353"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/directus/directus"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N",
      "type": "CVSS_V3"
    }
  ],
  "summary": "Directus\u0027s webhook trigger flows can leak sensitive data"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…