[medium] OIDC links accounts by email across different sub values #11
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Severity: medium
Affects: main
File: oidc_controller.ex:207-214
No user for provider+sub, but a user with the same email and provider 'oidc' exists → logged in as that user. No email_verified check. On an IdP where users can set their email, that's account takeover.
Fix: match on provider+sub only; if you keep email linking, require user_info["email_verified"] == true.
Found by Nye's audit, 2026-10-18 (static review of main @
1d89af4and jtk/ebook-management @43a849e).