|
Task Description
Severity: High
Summary: OAuth account linking occurs automatically and implicitly on the company's web application, without requiring user verification, which can enable account takeover. Suppose an attacker signs up using OAuth with the same email as an existing account (registered via email/password). In that case, they are granted access to that existing account without any ownership validation, which is a critical authentication flaw.
Steps to Reproduce: Create a target account (victim):
Go to alwaysdata.com
Register a new account using email/password, e.g., victim@example.com.
Log out.
Trigger the issue (attacker):
Go to the website
Log in using an OAuth provider (e.g., Google or Apple) that uses the same email address: victim@example.com.
Observe:
The OAuth login automatically links to the existing account created via email/password.
No verification (like password prompt, email confirmation, or user consent) is required.
The attacker now has full access to the victim's account.
Impact: This vulnerability allows an attacker to fully compromise accounts by using an OAuth provider with an email address matching an existing account, without needing the victim’s password or any verification step.
Possible consequences:
Unauthorized access to personal data.
Tracking information leakage
Service misuse or device control.
Breach of privacy and user trust.
Recommended Fixes: Do not auto-link OAuth accounts based solely on email.
Prompt the user for verification when an existing account with the same email exists (e.g., via:
Password input,
Email confirmation,
Explicit linking process in settings).
Provide clear UI/UX for account linking that ensures user intent.
Suggested CVSS (3.1) Score: 8.8 (High)
Attack Vector: Network
Attack Complexity: Low
Privileges Required: None
User Interaction: None
Confidentiality Impact: High
Integrity Impact: High
Availability Impact: Low
Regards, Mehedi Hasan
|