CVE-2026-41574 json
Nhost Vulnerable to Account Takeover via OAuth Email Verification Bypass
published 2026-04-18 6 mo ago modified 2026-06-25 4 mo ago also GHSA-6g38-8j4p-j3pr , GO-2026-5176 , EUVD-2026-28650
- cvss
- 9.8
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.8%
- EPSS 0.8% chance of exploitation in 30 days, percentile 56%
- public exploits
- 0
- none known
Summary
Nhost is an open source Firebase alternative with GraphQL. Prior to version 0.49.1, Nhost automatically links an incoming OAuth identity to an existing Nhost account when the email addresses match. This is only safe when the email has been verified by the OAuth provider. Nhost's controller trusts a profile.EmailVerified boolean that is set by each provider adapter. The vulnerability is that several provider adapters do not correctly populate this field they either silently drop a verified field the provider API actually returns (Discord), or they fall back to accepting unconfirmed emails and marking them as verified (Bitbucket). Two Microsoft providers (AzureAD, EntraID) derive the email from non-ownership-proving fields like the user principal name, then mark it verified. The result is that an attacker can present an email they don't own to Nhost, have the OAuth identity merged into the victim's account, and receive a full authenticated session. This issue has been patched in version 0.49.1.
Patch / fix
- go github.com/nhost/nhost 0.0.0-20260417112436-ec8dab3f2cf4
- nhost nhost/auth 0.49.1
- govulncheck-vulndb openSUSE Leap 16.0 0.0.20260723T184607-160000.1.1
opensuse advisories openSUSE-SU-2026:21483-1
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- total
- Assessed
- 6 mo ago
Exploit prediction
0.80% chance of exploitation in the next 30 days, higher than 56% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/nhost/nhost/pull/4162 referenced PoC, tagged "exploit" by a source, unverified
- github.com https://github.com/nhost/nhost/security/advisories/GHSA-6g38-8j4p-j3pr referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 9.3 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N |
| CNA | 4.0 | 9.3 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| GitHub | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| go | github.com/nhost/nhost | <0.0.0-20260417112436-ec8dab3f2cf4 |
0.0.0-20260417112436-ec8dab3f2cf4 |
Affected products
- nhost nhost
Classification
- Weakness
-
- CWE-287 Improper Authentication
References
-
github.com
/nhost/nhost/pull/4162
web, exploit, patch
-
github.com
/nhost/nhost/commit/ec8dab3f2cf46e1131ddaf893d56c37aa00380b2
web, patch
-
github.com
/nhost/nhost/security/advisories/GHSA-6g38-8j4p-j3pr
web, exploit, patch, vendor-advisory, advisory
-
github.com
/nhost/nhost/releases/tag/auth%400.49.1
web, release-notes
-
nvd.nist.gov
/vuln/detail/CVE-2026-41574
advisory
-
github.com
/nhost/nhost
package
Sources
- CVE List CVE-2026-41574
- GitHub Advisory GHSA-6g38-8j4p-j3pr
- NVD CVE-2026-41574
- OSV GO-2026-5176
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.