5.8 MEDIUM
- CVSS version (CVSS): 3.1
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): High (H)
- Privileges Required (PR): Low (L)
- User Interaction (UI): Required (R)
- Scope (S): Changed (C)
- Confidentiality (C): High (H)
- Integrity (I): None (N)
- Availability (A): None (N)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): High (H)
- Modified Privileges Required (MPR): Low (L)
- Modified User Interaction (MUI): Required (R)
- Modified Confidentiality (MC): High (H)
- Modified Scope (MS): Changed (C)
- Modified Integrity (MI): None (N)
- Modified Availability (MA): None (N)
Activity log
- Created & dismissed (max. allowed matches exceeded) suggestion
Coder's subdomain workspace app routing trusts unauthenticated X-Forwarded-Host header, enabling cross-app data access
Coder allows organizations to provision remote development environments via Terraform. Prior to versions 2.29.7, 2.32.7, 2.33.8, and 2.34.2, the workspace app proxy resolves the target app from `httpapi.RequestHost()` which prefers the `X-Forwarded-Host` header over the real `Host` header. No middleware strips `X-Forwarded-Host` before routing and the header is not browser-forbidden so client-side JavaScript can set it on `fetch()` calls. Practical exploitation requires subdomain app routing (wildcard hostname) enabled, a victim who visits the attacker's shared app and a deployment whose upstream proxy does not strip `X-Forwarded-Host`. The fix in versions 2.29.7, 2.32.7, 2.33.8, and 2.34.2 trusts `X-Forwarded-Host` only from configured trusted proxies and otherwise resolves the routing host from the verified request host. As a workaround, place an upstream reverse proxy that strips or overwrites `X-Forwarded-Host` on untrusted requests.
References
-
https://github.com/coder/coder/security/advisories/GHSA-5g4w-3vw9-478w x_refsource_CONFIRM
-
https://github.com/coder/coder/pull/26204 x_refsource_MISC
-
https://github.com/coder/coder/releases/tag/v2.29.17 x_refsource_MISC
-
https://github.com/coder/coder/releases/tag/v2.32.7 x_refsource_MISC
-
https://github.com/coder/coder/releases/tag/v2.33.8 x_refsource_MISC
-
https://github.com/coder/coder/releases/tag/v2.34.2 x_refsource_MISC
Affected products
- ==>= 2.33.0, < 2.33.8
- ==>= 2.30.0, < 2.32.7
- ==< 2.29.17
- ==>= 2.34.0, < 2.34.2