V2: Coder's OIDC email_verified type coercion bypass enables account takeover via unverified email linking (CVE-2026-55076)
### Summary Coder's OIDC callback checked `email_verified` with a direct Go `bool` type assertion. When an IdP returned the claim as a non-boolean (for example the string `"false"`) or omitted it, the assertion failed open and the email was treated as verified. Combined with an unconditional email-based account fallback, this enabled account takeover. ### Impact An attacker who registered a victim's email at a compatible IdP without verifying it could log in via OIDC and be matched to the victim's existing Coder account, receiving a session for that account. No prior authentication to Coder was required and the result was full account takeover. ### Patches The fix coerces `email_verified` across bool, string and numeric types (fail-closed) and blocks the email fallback when the matched user already has a different linked IdP subject. The fix was backported to all supported release lines: | Release line | Patched version | |---|---| | 2.34 | [v2.34.2](https://github.com/coder/coder/releases/tag/v2.34.2) | | 2.33 | [v2.33.8](https://github.com/coder/coder/releases/tag/v2.33.8) | | 2.32 | [v2.32.7](https://github.com/coder/coder/releases/tag/v2.32.7) | | 2.29 (ESR) | [v2.29.17](https://github.com/coder/coder/releases/tag/v2.29.17) | ### Workarounds Ensure the IdP returns `email_verified` as a native JSON boolean. The email-fallback linking issue has no configuration workaround; upgrading is required. ### Resources - Fix: #25712, #25713 ### Credits Coder would like to thank Anthropic's Security Team (ANT-2026-22444) for independently disclosing this issue!
AI Analysis
Technical Summary
Coder's OIDC callback implementation performed a direct Go bool type assertion on the email_verified claim. When the IdP returned this claim as a non-boolean (e.g., the string "false") or omitted it, the assertion failed open, causing the system to treat the email as verified erroneously. Because Coder used an unconditional email-based account fallback, an attacker could register a victim's email at a compatible IdP without verifying it, then log in via OIDC and be matched to the victim's existing Coder account, resulting in full account takeover without prior authentication. The fix coerces email_verified across bool, string, and numeric types in a fail-closed manner and blocks email fallback when the matched user already has a different linked IdP subject. The fix has been backported to all supported release lines, specifically versions 2.34.2, 2.33.8, 2.32.7, and 2.29.17.
Potential Impact
An attacker can take over any existing Coder account by registering the victim's email at a compatible IdP without verifying it, then authenticating via OIDC. This results in full account compromise without requiring prior authentication to Coder. The vulnerability affects confidentiality and integrity of user accounts but does not impact availability.
Mitigation Recommendations
A fix is available and has been backported to all supported release lines: 2.34.2, 2.33.8, 2.32.7, and 2.29.17. Users should upgrade to these patched versions to remediate the vulnerability. As a partial workaround, ensure the IdP returns the email_verified claim as a native JSON boolean; however, this does not fully mitigate the email fallback linking issue, which requires upgrading.
V2: Coder's OIDC email_verified type coercion bypass enables account takeover via unverified email linking (CVE-2026-55076)
Description
### Summary Coder's OIDC callback checked `email_verified` with a direct Go `bool` type assertion. When an IdP returned the claim as a non-boolean (for example the string `"false"`) or omitted it, the assertion failed open and the email was treated as verified. Combined with an unconditional email-based account fallback, this enabled account takeover. ### Impact An attacker who registered a victim's email at a compatible IdP without verifying it could log in via OIDC and be matched to the victim's existing Coder account, receiving a session for that account. No prior authentication to Coder was required and the result was full account takeover. ### Patches The fix coerces `email_verified` across bool, string and numeric types (fail-closed) and blocks the email fallback when the matched user already has a different linked IdP subject. The fix was backported to all supported release lines: | Release line | Patched version | |---|---| | 2.34 | [v2.34.2](https://github.com/coder/coder/releases/tag/v2.34.2) | | 2.33 | [v2.33.8](https://github.com/coder/coder/releases/tag/v2.33.8) | | 2.32 | [v2.32.7](https://github.com/coder/coder/releases/tag/v2.32.7) | | 2.29 (ESR) | [v2.29.17](https://github.com/coder/coder/releases/tag/v2.29.17) | ### Workarounds Ensure the IdP returns `email_verified` as a native JSON boolean. The email-fallback linking issue has no configuration workaround; upgrading is required. ### Resources - Fix: #25712, #25713 ### Credits Coder would like to thank Anthropic's Security Team (ANT-2026-22444) for independently disclosing this issue!
CVSS v3.1
Score 7.4high
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
Coder's OIDC callback implementation performed a direct Go bool type assertion on the email_verified claim. When the IdP returned this claim as a non-boolean (e.g., the string "false") or omitted it, the assertion failed open, causing the system to treat the email as verified erroneously. Because Coder used an unconditional email-based account fallback, an attacker could register a victim's email at a compatible IdP without verifying it, then log in via OIDC and be matched to the victim's existing Coder account, resulting in full account takeover without prior authentication. The fix coerces email_verified across bool, string, and numeric types in a fail-closed manner and blocks email fallback when the matched user already has a different linked IdP subject. The fix has been backported to all supported release lines, specifically versions 2.34.2, 2.33.8, 2.32.7, and 2.29.17.
Potential Impact
An attacker can take over any existing Coder account by registering the victim's email at a compatible IdP without verifying it, then authenticating via OIDC. This results in full account compromise without requiring prior authentication to Coder. The vulnerability affects confidentiality and integrity of user accounts but does not impact availability.
Mitigation Recommendations
A fix is available and has been backported to all supported release lines: 2.34.2, 2.33.8, 2.32.7, and 2.29.17. Users should upgrade to these patched versions to remediate the vulnerability. As a partial workaround, ensure the IdP returns the email_verified claim as a native JSON boolean; however, this does not fully mitigate the email fallback linking issue, which requires upgrading.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-75vm-6w67-gwvp
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-55076"]
- Ecosystems
- ["Go"]
- Database Specific Severity
- HIGH
- Cvss Version
- 3.1
Threat ID: 6a4c340527e9c797195f6488
Added to database: 07/06/2026, 23:02:29 UTC
Last enriched: 07/06/2026, 23:13:40 UTC
Last updated: 07/31/2026, 19:22:59 UTC
Views: 46
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.