English version →
認証/ID
CVE-2026-42560 critical CVSS 9.1

oauth に 認証バイパス (CVE-2026-42560)

概要

oauth に 認証バイパス (CVE-2026-42560) が存在。機密情報が外部に流出する可能性があります。user.ID 経由で攻撃可能。

原文の説明

取得元が公開している説明をそのまま載せています (多くは英語)。

Summary

The Patreon OAuth provider maps every authenticated Patreon account to the same local user.ID, instead of deriving a unique ID from the Patreon account returned by Patreon.

In practice, this means all Patreon-authenticated users of an application using this library are collapsed into a single local identity. Any application that trusts token.User.ID as the stable account key can end up mixing or fully merging unrelated Patreon users, which can lead to cross-account access, privilege confusion, and subscription-state leakage.

Details

The bug is in the Patreon provider's user-mapping logic.

Both the root module and the v2 module create a fresh empty token.User{} and then derive the Patreon ID from userInfo.ID before that field has been populated:

mapUser: func(data UserData, bdata []byte) token.User {
    userInfo := token.User{}

    uinfoJSON := uinfo{}
    if err := json.Unmarshal(bdata, &uinfoJSON); err == nil {
        userInfo.ID = "patreon_" + token.HashID(sha1.New(), userInfo.ID)
        userInfo.Name = uinfoJSON.Data.Attributes.FullName
        userInfo.Picture = uinfoJSON.Data.Attributes.ImageURL
        ...
    }
    return userInfo
}

Affected locations:

  • provider/providers.go:257
  • v2/provider/providers.go:257

At that point, userInfo.ID is still the empty string, so the effective result is always:

patreon_ + sha1("")

which is:

patreon_da39a3ee5e6b4b0d3255bfef95601890afd80709

for every Patr…

出典: NIST National Vulnerability Database NVD GitHub Advisory

AI要約

外部の AI が作成した要約です。誤りを含むことがあります。重要な判断の前に、下の原文と参照URLを確認してください。

この脆弱性はPatreonに関連した問題で、特定のバージョンのソフトウェアで発生しています。Patreonを使った認証で異なるアカウントが同一ユーザーとして認識される可能性があります。この問題は、クロスアカウントアクセスや権限の混同を引き起こし、購読情報の漏洩につながる恐れがあります。影響を受けるバージョンは1.18.0から1.25.2未満、および2.0.0から2.1.2未満で、修正されたバージョンは1.25.2と2.1.2です。適切なバージョンにアップデートすることが推奨されます。

この脆弱性は、Patreon OAuthプロバイダが正しいユーザーIDマッピングを行わず、すべてのユーザーを同一のローカルIDに閉じ込めることにより発生します。影響を受けるバージョンは1.18.0から1.25.2未満、および2.0.0から2.1.2未満です。修正はバージョン1.25.2と2.1.2で行われており、暫定的な回避策は存在しません。危険な関数はprovider/providers.goとv2/provider/providers.goにあり、ここではuserInfo.IDが正しく初期化されずにハッシュ化されています。発見者はNadav0077氏です。この脆弱性は、ネットワークを経由した認証不要の攻撃を容易に許します。

❓ 何が問題か

CVE-2026-42560 に 認証バイパス (CWE-287) があります。攻撃者は user.ID を経由して脆弱な処理に到達し、認証なしで悪用できます。

📍 影響範囲

CVE-2026-42560 のうち 影響範囲: >= 1.18.0, <= 1.25.1。攻撃箇所: user.ID / token.User.ID / userInfo.ID / uinfoJSON.Data.ID。

🔥 重要度

重要度: 最重要 (CVSS 9.1/10)。機密情報が外部に流出する可能性があります

🔧 修正方法

ベンダー公式アドバイザリの修正版に更新してください。(修正前: >= 1.18.0, <= 1.25.1 該当バージョンが本番稼働中なら直ちに更新計画を立案)

🛡️ 暫定回避

修正版が未提供時は、影響機能の無効化・WAFルール・ネットワークACLでの遮断を検討。

🔍 検知方法

Webサーバ・プロキシ・WAFログで該当CVEのIOCに合致する不審リクエストを検索。SBOM/依存ファイルで影響バージョンを横断確認。

類似する過去の事例 過去のCVE/インシデントから類似事例を抽出

Also dealing with improper handling of user IDs leading to impersonation.

Another incident causing cross-account data access due to session management flaws.

Related to token-based authentication failures in OAuth systems.

もし自社で起きたら 業務シナリオごとの想定影響

📌 Organizations using Patreon for user authentication in SaaS applications.

Leads to potential unauthorized access between different accounts, compromising user data privacy.

📌 Companies relying on OAuth tokens as stable account keys for user management.

Could face data breaches resulting from privilege mix-up and identity confusion.

📌 Enterprises with subscription-based services that integrate Patreon OAuth.

Risk of subscription state leaks that could affect revenue and user trust.

推奨アクション

Organizations should immediately update affected libraries to patched versions to prevent unauthorized access and data breaches.

対応アクション

SOC/SREチームが順番に実行すべき具体的なステップとコマンド例

  1. 1
    影響範囲の特定 identify
    Audit SBOM/dependencies for affected components.

    依存マニフェストで影響コンポーネントを特定する。

  2. 2
    バージョン照合 verify
    Confirm if version satisfies `>= 1.18.0, <= 1.25.1`

    Step 1 で見つかったバージョンが影響範囲 >= 1.18.0, <= 1.25.1 に該当するか照合。本番で稼働中ならインシデント扱い。

  3. 7
    事後検証 verify
    Confirm patched version is live in production

    パッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番では Step 3 と同じログクエリでアラート再発が無いか継続監視。

影響パッケージ

go github.com/go-pkgz/auth
[{"type":"SEMVER","events":[{"introduced":"1.18.0"},{"fixed":"1.25.2"}]}]
go github.com/go-pkgz/auth/v2
[{"type":"SEMVER","events":[{"introduced":"2.0.0"},{"fixed":"2.1.2"}]}]

参照URL

当サイトでは、アクセス解析と広告の効果測定のために Cookie を使います。株式会社Game のサイト共通の設定です。 詳しく