CVE-2021-41194: Improper Access Control in jupyterhub-firstuseauthenticator
9.1
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.56976%
CWE
Published
10/28/2021
Updated
9/24/2024
KEV Status
No
Technology
Python
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
jupyterhub-firstuseauthenticator | pip | < 1.0.0 | 1.0.0 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stemmed from username normalization mismatch between JupyterHub core and the authenticator. The key vulnerable function was authenticate() which: 1. Originally used raw username input without normalization (pre-patch) 2. Stored passwords against non-normalized usernames in the DBM file 3. Allowed creation of duplicate accounts through case variations. The critical evidence is in the patch which added self.normalize_username() call and the _check_passwords() cleanup function to address this vulnerability. The authentication flow without proper normalization directly enabled the access control bypass.