Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain workspace member credentials
-
DeliveryAuthenticate to Windmill instance
-
ExploitQuery drafts API endpoint
-
ExecutionRetrieve null-owner drafts bypassing ACL
-
PersistExtract plaintext resource credentials
-
ImpactAccess external systems with stolen credentials
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK
2 techniques across 2 tactics: Collection, Discovery The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The attacker must hold a valid authenticated account within the target Windmill workspace (CVSS PR:L confirmed). The victim environment must contain at least one legacy draft script with a null owner email field - these are described as 'ownerless' drafts that arise from historical or migrated data rather than the default creation flow. The draft must also contain embedded plaintext resource credentials (e.g., database URIs, API tokens). Exploitation is limited to the confidentiality of those specific credentials - no integrity or availability impact is possible through this vector. Exploitation is bounded by: (1) requiring workspace-level authentication, which limits external threat actors; (2) requiring the existence of legacy null-owner drafts, which may not be present in all deployments; and (3) no scope change, meaning the attacker cannot leverage this vulnerability alone to pivot within the Windmill host. |
| Impact | The NVD-assigned CVSS 3.1 score of 6.5 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N) accurately reflects the threat profile. The network-accessible attack vector and low complexity mean exploitation requires nothing beyond a valid workspace account and knowledge of the drafts endpoint - no privilege escalation, no user interaction. The high confidentiality impact is justified because the exposed data is plaintext credentials, not just metadata. No EPSS score was provided in the intelligence data, and the vulnerability is not currently in CISA KEV, indicating no confirmed active exploitation. No public POC has been identified. The real-world risk is therefore contingent on two factors: whether an organization has legacy ownerless drafts in its Windmill instance, and whether those drafts contain live credentials. For organizations using Windmill extensively as an automation hub with long-lived drafts, the practical risk is elevated despite the moderate CVSS score. For fresh deployments without orphaned drafts, exposure is likely minimal. No conflicting signals between CVSS and description - both clearly indicate network-accessible, authenticated, low-complexity exploitation. |
| Exploit ScenarioDerived | An attacker with a valid Windmill workspace account - such as a low-privilege developer or contractor - sends an authenticated GET request to the drafts API endpoint. The server returns all ownerless drafts due to the null-owner ACL bypass, exposing plaintext database passwords, API keys, or OAuth tokens embedded in legacy automation scripts. The attacker then uses those credentials to access external databases or third-party services outside the Windmill platform entirely. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 11, 2026
Authenticated workspace members in Windmill through 1.783.0 can exfiltrate plaintext resource credentials stored in legacy ownerless draft scripts by querying the drafts API endpoint. The ACL enforcement logic fails to restrict access when a draft's owner email field is null, allowing any workspace member - regardless of their actual permissions - to retrieve these drafts and the secrets embedded within them. No public exploit code has been identified and this vulnerability is not listed in the CISA KEV catalog, but the low exploitation complexity and high confidentiality impact make it a meaningful internal threat wherever legacy drafts containing credentials persist.
RemediationAI
No vendor-released patched version has been independently confirmed at time of analysis - the GitHub repository (https://github.com/windmill-labs/windmill) should be monitored for a release beyond 1.783.0 that addresses this ACL enforcement defect. Until a patch is available, administrators should immediately audit the Windmill drafts endpoint to identify drafts with null owner email fields and delete or reassign them. Any credentials embedded in plaintext within those drafts should be treated as compromised and rotated in the target systems. As a compensating control, restrict workspace membership to the minimum necessary set of users, reducing the population of accounts that could exploit this flaw - note this does not eliminate the vulnerability but limits exposure. Additionally, consider monitoring API access logs for unusual or bulk queries to the drafts endpoint as a detection measure.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Windmill (cpe:2.3:a:windmill_labs:windmill:*:*:*:*:*:*:*:*) is an open-source developer platform for building internal tools and workflow automations. It supports scripts that interact with external services via resource credentials - database connection strings, API keys, tokens - that can be embedded in draft scripts prior to publication. The vulnerability, classified under CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor), arises from a defect in the ACL enforcement logic on the drafts endpoint: when a draft's owner email is null (a state that can exist for legacy or migrated drafts with no assigned owner), the system fails to apply access control checks and returns the draft - along with any embedded plaintext credentials - to any authenticated requester. This is a logic flaw at the authorization layer rather than a cryptographic or injection issue.
Know when Windmill gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Network-accessible drafts API requires only workspace membership (PR:L); no integrity or availability impact; high confidentiality loss from plaintext credential exposure.
Primary rating from Vendor (TuranSec).
CVSS VectorVendor: TuranSec
DescriptionCVE.org
An information disclosure vulnerability in Windmill Labs Windmill through 1.783.0 allows any authenticated workspace member to read legacy ownerless draft scripts that contain plaintext resource credentials. Drafts with a null owner email bypass ACL enforcement and are returned to any workspace member who queries the drafts endpoint. Sensitive credentials stored in these drafts are exposed across ACL boundaries.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
The Lukasavicus/WindMill repository through 1.0 on GitHub allows absolute path traversal because the Flask send_file fun
Authorization bypass in Windmill 1.56.0-1.614.0 enables Operator role users to escalate privileges to remote code execut
Windmill is an open-source developer platform for internal code: APIs, background jobs, workflows and UIs. Prior to vers
Cross-tenant DNS and TLS poisoning in Windmill versions prior to 1.703.2 allows authenticated low-privilege users to wri
JavaScript code injection in Windmill's NativeTS executor allows workspace administrators to achieve remote code executi
Broken authorization on the update_resource_type endpoint in Windmill through 1.783.0 allows any authenticated workspace
Missing authorization controls in Windmill through version 1.783.0 expose job metrics and progress endpoints to any auth
Windmill is an open-source developer platform for internal code: APIs, background jobs, workflows and UIs. Versions 1.63
EUVD-2026-56009
GHSA-6xgx-xx3m-pg85
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB