The CVSS 6.5 score for CVE-2026-72539 badly understates the risk. What this vulnerability actually does is allow any authenticated workspace member in Windmill to retrieve plaintext credentials stored in draft scripts — credentials that can pivot to production systems, scheduled jobs, and third-party integrations. The CVSS framework treats this as 'low confidentiality impact' information disclosure, but credentials are not普通的用户数据. One exposed API key or database connection string can mean complete compromise of downstream infrastructure that the CVSS formula cannot model.
The root cause is an incomplete authorization refactoring. Windmill's ACL model was updated at some point, but draft scripts with null owners were never migrated — they silently bypass all access controls because the new authorization checks never accounted for them. This is not a one-off bug; it's the predictable consequence of refactoring an authorization model while assuming the underlying data was already clean. It wasn't.
Before patching, audit your Windmill instance for other legacy data states: query for any resources, flows, variables, or permissions objects with null owners or created by deleted users. The null-owner bypass is likely horizontal — affecting multiple object types that share the same edge case. Also examine whether credential storage in drafts is architecturally necessary; if it's not, that's a separate design flaw that compounds this vulnerability.
The disclosure itself creates urgency. Attackers now know to probe for similar edge states. Apply the patch immediately, but treat it as symptom resolution, not complete remediation. The real work is enumerating what other 'impossible but extant' states survived your authorization upgrades.