Coder's workspace app CORS origin check can be bypassed via UUID-based subdomain spoofing
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub. Impact type from CWE-346.
Summary
Coder allows organizations to provision remote development environments via Terraform. Prior to versions 2.29.17, 2.32.7, 2.33.8, and 2.34.2, Coder's subdomain-based workspace app proxy allowed the same-owner CORS check to be bypassed. When a workspace-name subdomain segment parsed as a UUID, the workspace was resolved by ID without confirming the URL's username matched the real owner, while the CORS middleware trusted the unverified username in the hostname. Practical exploitation requires subdomain app routing (wildcard hostname) enabled and a victim who visits the attacker's crafted app URL while authenticated. The fix in versions 2.29.17, 2.32.7, 2.33.8, and 2.34.2 validates the subdomain username against the resolved workspace's actual owner and bases the same-owner CORS decision on the authoritative owner identity. No known workarounds are available.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| coder | coder | 2.34.0 to before 2.34.2; 2.33.0 to before 2.33.8; 2.30.0 to before 2.32.7; before 2.29.17 | 2.34.2, 2.33.8, 2.32.7, 2.29.17 | Patch available | CNA |
| — | github.com/coder/coder/v2 (Go) | 2.34.0 to before 2.34.2 | 2.34.2 | Patch available | GHSA-5wg6-jmq2-53pw |
| — | github.com/coder/coder/v2 (Go) | 2.33.0 to before 2.33.8 | 2.33.8 | Patch available | GHSA-5wg6-jmq2-53pw |
| — | github.com/coder/coder/v2 (Go) | 2.30.0 to before 2.32.7 | 2.32.7 | Patch available | GHSA-5wg6-jmq2-53pw |
| — | github.com/coder/coder/v2 (Go) | before 2.29.17 | 2.29.17 | Patch available | GHSA-5wg6-jmq2-53pw |
- coder Vendorcoder Affected 2.34.0 to before 2.34.2; 2.33.0 to before 2.33.8; 2.30.0 to before 2.32.7; before 2.29.17 Fixed in 2.34.2, 2.33.8, 2.32.7, 2.29.17 Patch available CNA
- github.com/coder/coder/v2 (Go) Vendor— Affected 2.34.0 to before 2.34.2 Fixed in 2.34.2 Patch available GHSA-5wg6-jmq2-53pw
- github.com/coder/coder/v2 (Go) Vendor— Affected 2.33.0 to before 2.33.8 Fixed in 2.33.8 Patch available GHSA-5wg6-jmq2-53pw
- github.com/coder/coder/v2 (Go) Vendor— Affected 2.30.0 to before 2.32.7 Fixed in 2.32.7 Patch available GHSA-5wg6-jmq2-53pw
- github.com/coder/coder/v2 (Go) Vendor— Affected before 2.29.17 Fixed in 2.29.17 Patch available GHSA-5wg6-jmq2-53pw
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:coder:coder:*:*:*:*:*:go:*:* | before 2.29.17; 2.30.0 to before 2.32.7; 2.33.0 to before 2.33.8; 2.34.0 to before 2.34.2 | Vulnerable | coder |
- cpe:2.3:a:coder:coder:*:*:*:*:*:go:*:* Versions before 2.29.17; 2.30.0 to before 2.32.7; 2.33.0 to before 2.33.8; 2.34.0 to before 2.34.2 Vulnerable ·coder
Remediation
- Fix · CNA coder (coder) Fixed in 2.34.2, 2.33.8, 2.32.7, 2.29.17
- Fix · GHSA-5wg6-jmq2-53pw github.com/coder/coder/v2 (Go) Fixed in 2.34.2 Advisory →
- Fix · GHSA-5wg6-jmq2-53pw github.com/coder/coder/v2 (Go) Fixed in 2.33.8 Advisory →
- Fix · GHSA-5wg6-jmq2-53pw github.com/coder/coder/v2 (Go) Fixed in 2.32.7 Advisory →
- Fix · GHSA-5wg6-jmq2-53pw github.com/coder/coder/v2 (Go) Fixed in 2.29.17 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-55438
- 2026-10-03 Alias added: GHSA-5wg6-jmq2-53pw
References
Patch 3
More Coder vulnerabilities
- TI-2026-34071 Coder: PKCS#7 signature bypass in Azure instance identity allows unauthenticated agent token theft CVSS 3.1CRITICAL 9.1
- TI-2026-32394 Coder vulnerable to workspace auto-creation via crafted URL parameters without user consent CVSS 3.1HIGH 8.8
- TI-2024-18523 Coder's OIDC authentication allows email with partially matching domain to register CVSS 3.1HIGH 8.2
- TI-2026-39997 Coder's workspace app upsert allows cross-workspace agent rebinding via user-controlled app ID CVSS 3.1HIGH 8.7
- TI-2026-39996 Coder: Route hijacking through lack of validation of agent-supplied AllowedIPs in tailnet coordinator CVSS 3.1HIGH 8.2
- TI-2026-39995 Coder vulnerable to SSH config injection via unsanitized server-supplied values in `coder config-ssh` CVSS 3.1HIGH 8.3
Sources
- CVE-2026-55438 · CVE Program
- CVE-2026-55438 · NVD
- FIRST EPSS
- GHSA-5wg6-jmq2-53pw · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences