CVE-2021-3754: Keycloak's improper input validation allows using email as username
3.7
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.89136%
CWE
Published
6/12/2024
Updated
12/20/2024
KEV Status
No
Technology
Java
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
org.keycloak:keycloak-services | maven | < 24.0.1 | 24.0.1 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stemmed from:
- UsersResource.createUser's original implementation (removed in patch) only checked username/email existence in isolation without cross-validation between fields
- Validators lacked bidirectional checks between username and email fields
- The CWE-670 (incorrect control flow) manifests in username validation occurring before email checks, allowing email-as-username registration before email uniqueness verification
- Patch adds cross-checks in validators and removes redundant checks from UsersResource, confirming these were the missing protections