better-auth、別ユーザーでログインされる欠陥 1.7.7で修正
Summary
TypeScript向け認証ライブラリ better-auth に、特定の設定の組み合わせで、他人のメールアドレスを知っているだけで本人としてログインできてしまう欠陥が見つかりました。Magic Link、OAuthログイン、account.storeStateStrategy の database 指定をすべて使っているアプリが対象です。1.7.7 で修正されているため、該当する構成なら更新を急いでください。
AI summary
Written by an external AI model and may contain mistakes. Check the original description and references below before acting on it.
TypeScript向け認証ライブラリ better-auth に、特定の設定の組み合わせで、他人のメールアドレスを知っているだけで本人としてログインできてしまう欠陥が見つかりました。Magic Link、OAuthログイン、account.storeStateStrategy の database 指定をすべて使っているアプリが対象です。1.7.7 で修正されているため、該当する構成なら更新を急いでください。
Affected packages
| Ecosystem | Package | Affected | Fixed |
|---|---|---|---|
| better-auth | better-auth | — | — |
Original description The description as published by the source.
Better Auth is an authentication and authorization library for TypeScript. From 1.4.0-beta.18 until 1.7.7, deployments that enable Magic Link with storeToken set to plain, or with storeToken set to hashed and the global verification.storeIdentifier setting also set to hashed, enable a built-in social or Generic OAuth provider, and use account.storeStateStrategy set to database can accept an OAuth sign-in state value as a Magic Link token. These settings can cause Magic Link verification records and OAuth state to resolve to the same stored identifier, allowing an unauthenticated attacker to start OAuth sign-in for a known email address and redeem the returned state through Magic Link without controlling the mailbox or completing the provider callback. The attacker can obtain a normal session for an existing user, or create an account incorrectly marked as email verified when sign-up is enabled. This issue is fixed in version 1.7.7.
Source: CVE.org (CVE Program・cvelistV5) NVD GitHub Advisory
References
- advisory github.com
- advisory github.com
- advisory nvd.nist.gov
- patch github.com
- patch github.com
- web github.com