{"id":"CVE-2026-111927","revision":"dcc8277883f54cc8af482c404f4efcc0","records":[{"revision":"dcc8277883f54cc8af482c404f4efcc0","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-111927","aliases":[],"title":"Coder before 2.35.4 Credential Theft via Workspace Proxy Hostname Prefix Match","description":"Coder before 2.29.20, 2.33.0 before 2.33.12, 2.34.0 before 2.34.8, and 2.35.0 before 2.35.4 contains an improper hostname validation flaw in GetWorkspaceProxyByHostname whose SIMILAR TO pattern performs a prefix match, so any domain that is a string prefix of a workspace-proxy access URL is trusted as a proxy. Attackers owning such a domain can lure an authenticated victim to a crafted /api/v2/applications/auth-redirect link, capture the redirected application_connect API key, and replay it to access the victim's workspace apps.","state":0,"publishedAt":"2026-10-17T18:46:39.347+00:00","modifiedAt":"2026-10-21T21:45:39.027+00:00","affected":[{"ecosystem":"Vendor product","name":"coder","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"coder\",\n                    \"product\": \"coder\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"packageURL\": \"pkg:golang/github.com/coder/coder/v2\",\n                    \"versions\": [\n                        {\n                            \"version\": \"2.35.0\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\",\n                            \"lessThan\": \"2.35.4\"\n                        },\n                        {\n                            \"version\": \"2.35.4\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"coder","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"coder\",\n                    \"product\": \"coder\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"packageURL\": \"pkg:golang/github.com/coder/coder/v2\",\n                    \"versions\": [\n                        {\n                            \"version\": \"2.34.0\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\",\n                            \"lessThan\": \"2.34.8\"\n                        },\n                        {\n                            \"version\": \"2.34.8\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"coder","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"coder\",\n                    \"product\": \"coder\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"packageURL\": \"pkg:golang/github.com/coder/coder/v2\",\n                    \"versions\": [\n                        {\n                            \"version\": \"2.33.0\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\",\n                            \"lessThan\": \"2.33.12\"\n                        },\n                        {\n                            \"version\": \"2.33.12\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"coder","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"coder\",\n                    \"product\": \"coder\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"packageURL\": \"pkg:golang/github.com/coder/coder/v2\",\n                    \"versions\": [\n                        {\n                            \"version\": \"0\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\",\n                            \"lessThan\": \"2.29.20\"\n                        },\n                        {\n                            \"version\": \"2.29.20\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 4.0","vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:P/VC:H/VI:H/VA:N/SC:H/SI:H/SA:N","score":8.7,"severity":"HIGH"},{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N","score":7.7,"severity":"HIGH"}],"references":["https://github.com/coder/coder/security/advisories/GHSA-h58h-qvv5-xvwg","https://www.vulncheck.com/advisories/coder-before-2.35.4-credential-theft-via-workspace-proxy-hostname-prefix-match"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-111927","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-111927","identifiers":["CVE-2026-111927"]},"retained":false,"historicalAffected":[]}],"coverage":[]}