UI misrepresentation in better-auth device flow enables phishing
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Active
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Spoofing
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-451.
Summary
better-auth from 1.3.8-beta.3 before 1.7.0-rc.3 has a UI misrepresentation flaw in the deviceAuthorization plugin, where GET /device omits the requesting client_id and scope (CWE-451). An unauthenticated remote attacker can start a device request and trick a signed-in user into approving it, which gives the attacker a live session token. The attack requires the user to approve the request.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
better-auth from 1.3.8-beta.3 before 1.7.0-rc.3 contains a UI misrepresentation vulnerability in the deviceAuthorization plugin because GET /device omits the requesting client_id and scope. Attackers can start a device request via /device/code, trick signed-in users into approving the code, then redeem it at /device/token for a live session token.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| better-auth | better-auth | 1.3.8-beta.3 to before 1.7.0-rc.3 | 1.7.0-rc.3 | Patch available | CNA |
- better-auth Vendorbetter-auth Affected 1.3.8-beta.3 to before 1.7.0-rc.3 Fixed in 1.7.0-rc.3 Patch available CNA
CPE names Threatist (inferred) · 1
Inferred from how NVD named this product before; not given by a source.
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:better-auth:better_auth:*:*:*:*:*:*:*:* | — | — | better-auth |
- cpe:2.3:a:better-auth:better_auth:*:*:*:*:*:*:*:* Versions — — ·better-auth
Remediation
Update better-auth to version 1.7.0-rc.3, the fixed version.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
- Fix · CNA better-auth (better-auth) Fixed in 1.7.0-rc.3
Timeline
- 2026-10-12 Threatist record created from CVE-2026-109346
- 2026-10-12 Alias added: GHSA-v9c8-wq66-wf8g
- 2026-10-13 Priority changed: MEDIUM → LOW
- 2026-10-26 CISA SSVC decision points changed
References
More better-auth vulnerabilities
- TI-2025-38277 Better Auth: Unauthenticated API key creation through api-key plugin CVSS 4.0CRITICAL 9.3
- TI-2026-47627 better-auth SCIM 1.5.0 before 1.7.0-beta.4 Authorization Bypass CVSS 4.0HIGH 8.7
- TI-2025-20000 Beter Auth has an Open Redirect via Scheme-Less Callback Parameter CVSS 4.0MEDIUM 6.9
- TI-2026-13066 better-auth better-icons scan_project_icons/sync_icon path traversal CVSS 4.0MEDIUM 4.8
- TI-2026-79320 OAuth state accepted as Magic Link token in Better Auth CVSS 3.1CRITICAL 9.1
- TI-2026-74552 Authentication bypass in Better Auth Magic Link verification CVSS 4.0CRITICAL 9.3
Sources
- CVE-2026-109346 · CVE Program
- CVE-2026-109346 · NVD
- FIRST EPSS
- GHSA-v9c8-wq66-wf8g · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences