Skip to main content

Coder CVE-2026-111933

| EUVDEUVD-2026-103300 MEDIUM
Observable Discrepancy (CWE-203)
2026-10-17 VulnCheck GHSA-wwfw-5crg-94f6
6.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach Coder login endpoint unauthenticated
  2. Delivery
    Submit login with password 'hunter2'
  3. Exploit
    Observe HTTP 403 vs 401 response
  4. Execution
    Enumerate valid accounts and SSO providers
  5. Impact
    Feed list into credential-stuffing or targeted phishing

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V6 - Authentication Timing-safe comparisons
Exploitation Conditions

No special target configuration is required - the oracle works against default deployments of Coder (self-hosted) on any version before 2.29.17, 2.32.7, 2.33.8, or 2.34.2, because userpassword.Compare() substitutes a placeholder hash derived from 'hunter2' whenever a stored password hash is empty. The specific precondition is that a probed account has an empty stored hash (nonexistent users and SSO-only users), which is what the password 'hunter2' matches; the subsequent login-type check then returns 403 (login type disclosed) versus 401 for real password users. Limiting factors: exploitation is unauthenticated and remote but yields only account-existence and authentication-provider enumeration - no authentication bypass, credential recovery, or data access - and the vendor notes the timing component is noisy, so value is confined to reconnaissance for credential-stuffing and phishing.

Impact

This is a genuine but modest-severity information-disclosure issue (CWE-203, observable discrepancy), not a high-impact priority. The input CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:N/UI:N) describes a remote, unauthenticated flaw but with elevated attack complexity and a present attack requirement, consistent with the base score of 6.3 (medium) and VC:L / VI:N / VA:N limiting impact to low confidentiality only. No EPSS score, no CISA KEV listing, and no public exploit were provided, so there is no signal of active or widespread exploitation; by the precision rules this is 'no public exploit identified at time of analysis.' The vendor advisory itself explicitly downgrades practical risk, noting the timing side channel is noisy and that the bug 'only reveals whether an account exists' with 'no authentication bypass or data access.' Signals are consistent rather than conflicting: the deterministic 403-vs-401 response-code oracle is reliable, but the overall value to an attacker is limited to account/login-type enumeration that aids downstream credential-stuffing and phishing. One nuance worth noting: the vendor assigned AC:H/AT:P largely because of the noisy timing channel, yet the HTTP 403-vs-401 distinction is itself deterministic, which arguably makes enumeration easier than the complexity metric implies - verify against the fix (PR #26205) behavior.

Exploit ScenarioDerived

An unauthenticated attacker scripts login requests against a public Coder instance, submitting the well-known password 'hunter2' for a list of candidate usernames. Accounts with an empty stored hash (nonexistent users and SSO-only users) match the placeholder and return HTTP 403 disclosing login type, while password users return 401, letting the attacker enumerate valid accounts and identify SSO providers. No public exploit code was identified, but the technique is trivial to reproduce from the advisory.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 17, 2026

Coder self-hosted deployments expose an unauthenticated account-enumeration oracle that lets remote attackers distinguish valid SSO-only accounts from nonexistent ones and identify the authentication provider, aiding credential-stuffing and phishing reconnaissance. The flaw affects Coder before 2.29.17, 2.30.0 through 2.32.6, 2.33.0 through 2.33.7, and 2.34.0 through 2.34.1, and is fixed in 2.29.17, 2.32.7, 2.33.8, and 2.34.2. No public exploit code was identified at time of analysis, and the issue yields only information disclosure-no authentication bypass, credential recovery, or data access.

RemediationAI

Upgrade to the vendor-released fixed versions: 2.34.2, 2.33.8, 2.32.7, or 2.29.17 (ESR) per GHSA-8fxq-53rx-ph5f; the fix changes the timing-defense placeholder to a secure random value no supplied password can match (PR #26205, commit 35a7dc8). The vendor lists no workarounds. Until upgrade, compensate by rate-limiting and monitoring the login endpoint for repeated "hunter2" submissions and 403/401 anomalies, restricting network access to the Coder login API where feasible, and enforcing strong MFA/SSO to reduce the value of enumerated accounts; these controls do not eliminate the oracle and can add operational friction or break legitimate integrations.

Affected VersionsENISA

coder 0 <2.29.17
coder 2.33.0 <2.33.8
coder 2.30.0 <2.32.7
coder 2.34.0 <2.34.2

Affected Packages

go github.com/coder/coder no fix
go github.com/coder/coder/v2 fix: 2.29.17, 2.32.7, 2.33.8, 2.34.2
euvd coder fix: 2.29.17, 2.32.7, 2.33.8, 2.34.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 3 packages in go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Coder's userpassword.Compare() function is intended to normalize login timing by comparing against a placeholder hash when an account has no stored password hash. That placeholder was derived from the well-known string "hunter2", so supplying "hunter2" matched accounts with empty hashes-nonexistent users and SSO-only users-and a follow-on login-type check returned HTTP 403 with provider information instead of HTTP 401 for password-backed accounts. This is CWE-203 (observable discrepancy): the response difference leaks account existence and authentication type. The affected Go module is go/github.com/coder/coder/v2; the vendor notes the timing side channel is noisy and practical value is confined to reconnaissance, with no special target configuration required on default self-hosted deployments.

Know when Coder 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

Vendor (VulnCheck) PRIMARY 6.3 MEDIUM
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.3 MEDIUM

Remote unauthenticated enumeration via a deterministic 403-vs-401 response oracle (AV:N/AC:L/PR:N/UI:N); only low confidentiality (account existence and login type), so C:L, I:N, A:N.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Oct 17, 2026 - 20:16 EUVD

DescriptionCVE.org

Coder before 2.29.17, 2.30.0 before 2.32.7, 2.33.0 before 2.33.8, and 2.34.0 before 2.34.2 contains a user enumeration vulnerability because userpassword.Compare() substitutes a placeholder hash derived from the string "hunter2" when a stored password hash is empty. Unauthenticated attackers can submit logins with the password "hunter2" and distinguish HTTP 403 from 401 responses to enumerate valid accounts and reveal the authentication provider of SSO-only users.

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Low
self-hosted developer environment platform, niche infrastructure footprint
Data Quality
6 sources
Confidence: High

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Coder

View all
CVE-2025-58437 HIGH POC
8.1 Sep 06

Coder allows organizations to provision remote development environments via Terraform. Rated high severity (CVSS 8.1), t

CVE-2025-66411 HIGH POC
7.8 Dec 03

Coder allows organizations to provision remote development environments via Terraform. Prior to 2.26.5, 2.27.7, and 2.28

CVE-2021-3810 HIGH POC
7.5 Sep 17

code-server is vulnerable to Inefficient Regular Expression Complexity. Rated high severity (CVSS 7.5), this vulnerabili

CVE-2023-26114 CRITICAL
9.3 Mar 23

Versions of the package code-server before 4.10.1 are vulnerable to Missing Origin Validation in WebSockets handshakes.

CVE-2026-111927 HIGH
8.7 Oct 17

Credential theft in Coder (before 2.29.20, 2.33.0 through 2.33.11, 2.34.0 through 2.34.7, and 2.35.0 through 2.35.3) let

CVE-2026-63443 HIGH
8.3 Sep 15

Authenticated Coder users who control a modified workspace agent can redirect the control plane's workspace-agent API re

CVE-2026-118687 HIGH
8.3 Oct 28

Coder deployments that run workspace agents on Google Compute Engine with GCP instance-identity authentication accept re

CVE-2024-27918 HIGH
8.2 Mar 21

Coder allows oragnizations to provision remote development environments via Terraform. Rated high severity (CVSS 8.2), t

CVE-2026-111934 MEDIUM
6.3 Oct 17

IP spoofing in the Coder platform (versions before 2.34.7) allows unauthenticated remote attackers to bypass per-IP rate

CVE-2026-111929 MEDIUM
6.0 Oct 17

Cross-organization file disclosure in Coder's provisioner daemon (versions 2.30.0 through 2.34.7) lets an authenticated

CVE-2026-111930 MEDIUM
5.3 Oct 17

Information disclosure in Coder 2.26.0 through 2.34.7 lets authenticated users who have been granted workspace 'use' acc

CVE-2026-111931 MEDIUM
5.3 Oct 17

Open redirect in Coder workspace-app proxy (versions 2.0.0 through 2.34.7) lets unauthenticated attackers craft links on

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy