情報取得日: 2026/10/14・本ページは公開情報の非公式まとめです
| CVE ID | CVE-2026-110862 |
|---|---|
| 製品 | Better Auth / better-auth(npm・1.4.0-beta.18 以上 1.7.7 未満) |
| CVSS | 9.1(Critical) CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| 種別 (CWE) | CWE-287 不適切な認証 |
| 登録/公開日 | 2026/10/14 |
| 出典 | https://nvd.nist.gov/vuln/detail/CVE-2026-110862 |
**TypeScript の認証ライブラリ Better Auth に、相手のメールアドレスを知っているだけでそのアカウントにログインできる欠陥がある。** GitHub のアドバイザリ(GHSA-965c-763c-88jm)によれば、攻撃者は被害者のメールアドレスで OAuth のサインインを始め、返ってきた state の値を Magic Link の検証に渡すと、その値がログイン用トークンとして通ってしまう。メールボックスに触れずに**被害者のセッション**を得られ、アカウントが無ければ「メール確認済み」の偽アカウントを作れる。 **影響を受けるのは次の3つが揃うとき。** (1)Magic Link プラグインが有効(`storeToken` が既定の `"plain"`、または `"hashed"` かつ `verification.storeIdentifier` も `"hashed"`)、(2)ソーシャルログインか Generic OAuth のプロバイダが1つ以上有効、(3)OAuth の state をデータベースに保存している(`account.storeStateStrategy: "database"`。データベースか二次ストレージを設定していれば既定)。 CVSS 3.1 は **9.1 Critical**(VulnCheck の評価。CVSS 4.0 は 9.3)。影響版は 1.4.0-beta.18 以上 1.7.7 未満。NVD は2026年10月14日に公開した。CISA KEV には収載されておらず、悪用の報告は確認できていない。
各ベンダー公式アドバイザリで確認できた事実に基づき整理しています。確認できていない項目は「情報確認中」と明記し、存在しないパッチ番号・バージョンは記載しません。
| 環境 | 対応状況 | 対応方法・備考 |
|---|---|---|
| AWS (ECS/EC2) | パッチあり(アプリ更新) |
Lambda / ECS / EKS / Amplify などで動かすアプリは、better-auth を 1.7.7 以上に上げて再デプロイする。すぐ上げられなければ `account.storeStateStrategy` を `"cookie"` にする。
AWS 側の修正ではなくアプリの依存更新が対処。AWS から本 CVE 個別の速報は確認できていない(2026-10-16 時点)。
参照リンク
|
| GCP | パッチあり(アプリ更新) |
Cloud Run / GKE / Cloud Functions などで動かすアプリは、better-auth を 1.7.7 以上に上げて再デプロイする。
GCP 側の修正ではなくアプリの依存更新が対処。
参照リンク
|
| Azure | パッチあり(アプリ更新) |
App Service / Container Apps / Functions / AKS などで動かすアプリは、better-auth を 1.7.7 以上に上げて再デプロイする。
Azure 側の修正ではなくアプリの依存更新が対処。
参照リンク
|
| Linux | パッチあり(アプリ更新) |
アプリに同梱する npm パッケージなので、OS の更新では直らない。アプリの依存を better-auth 1.7.7 以上に上げる。
Ubuntu USN / Red Hat RHSA / Debian security tracker の対象ではない。
参照リンク
|
**better-auth を 1.7.7 以上に上げる。** npm の依存を更新して再デプロイする。ロックファイルで固定されている場合は `npm ls better-auth` などで実際に入っている版を確かめる。 **すぐ上げられない場合**、アドバイザリは次のいずれかを回避策として示している。(1)`account.storeStateStrategy` を `"cookie"` にする(OAuth Proxy を使っているなら、先にグローバルの secret とは別の専用 secret を設定する)、(2)Magic Link の `storeToken` を `"hashed"` にし、`verification.storeIdentifier` は未設定か `"plain"` のままにする、(3)Magic Link か、ソーシャル / Generic OAuth のどちらかのサインインを止める。Magic Link プラグインの `disableSignUp: true` ではなりすましは防げない。 **乗っ取りの確認**として、身に覚えのない Magic Link 経由のログインや、メール確認済みなのに確認メールの送信記録が無いアカウントが無いかを見る。 **完了条件**は、(1)全てのアプリで better-auth が 1.7.7 以上であること、(2)それまでの不審なセッションを失効させたこと、の2点である。
Critical(CVSS 9.1)に分類されるBetter Auth better-auth(npm・1.4.0-beta.18 以上 1.7.7 未満)の脆弱性です。**TypeScript の認証ライブラリ Better Auth に、相手のメールアドレスを知っているだけでそのアカウントにログインできる欠陥がある。** GitHub のアドバイザリ(GHSA-965c-763c-88jm)によれば、攻撃者は被害者のメールアドレスで OAuth のサインインを始め、返ってきた state の値を Magic Link の検証に渡すと、その値がログイン用トークンとして通ってしまう。メールボックスに触れずに**被害者のセッション**を得られ、アカウントが無ければ「メール確認済み」の偽アカウントを作れる。 **影響を受けるのは次の3つが揃うとき。** (1)Magic Link プラグインが有効(`storeToken` が既定の `"plain"`、または `"hashed"` かつ `verification.storeIdentifier` も `"hashed"`)、(2)ソーシャルログインか Generic OAuth のプロバイダが1つ以上有効、(3)OAuth の state をデータベースに保存している(`account.storeStateStrategy: "database"`。データベースか二次ストレージを設定していれば既定)。 CVSS 3.1 は **9.1 Critical**(VulnCheck の評価。CVSS 4.0 は 9.3)。影響版は 1.4.0-beta.18 以上 1.7.7 未満。NVD は2026年10月14日に公開した。CISA KEV には収載されておらず、悪用の報告は確認できていない。
**better-auth を 1.7.7 以上に上げる。** npm の依存を更新して再デプロイする。ロックファイルで固定されている場合は `npm ls better-auth` などで実際に入っている版を確かめる。 **すぐ上げられない場合**、アドバイザリは次のいずれかを回避策として示している。(1)`account.storeStateStrategy` を `"cookie"` にする(OAuth Proxy を使っているなら、先にグローバルの secret とは別の専用 secret を設定する)、(2)Magic Link の `storeToken` を `"hashed"` にし、`verification.storeIdentifier` は未設定か `"plain"` のままにする、(3)Magic Link か、ソーシャル / Generic OAuth のどちらかのサインインを止める。Magic Link プラグインの `disableSignUp: true` ではなりすましは防げない。 **乗っ取りの確認**として、身に覚えのない Magic Link 経由のログインや、メール確認済みなのに確認メールの送信記録が無いアカウントが無いかを見る。 **完了条件**は、(1)全てのアプリで better-auth が 1.7.7 以上であること、(2)それまでの不審なセッションを失効させたこと、の2点である。
Better Auth better-auth(npm・1.4.0-beta.18 以上 1.7.7 未満) を利用している場合、稼働バージョンが影響範囲に含まれるかを一次情報(https://nvd.nist.gov/vuln/detail/CVE-2026-110862)で確認してください。AWS・GCP・Azure・Linux それぞれの対応状況は本ページの「クラウド/OS 別の対応状況」表にまとめています。確認できていない項目は「情報確認中」と明記しており、存在しないパッチ番号・バージョンは記載していません。
本ページの記載は下記の一次情報に基づく非公式まとめです。数値・対応状況は各出典元で最終確認してください。