GitHub Advisoryadvisory · PyPI

GHSA-9x4q-3gxw-849f JupyterHub has a privilege escalation vulnerability with the `admin:users` scope

HIGH Published 2024-08-08 Modified 2025-01-21 Official page ↗
Aliases
CVE-2024-41942
Ecosystem
PyPI
Packages
jupyterhub
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-274
Reviewed
2024-08-08

Affected packages

• PyPI jupyterhub: < 4.1.6 → fixed in 4.1.6 • PyPI jupyterhub: >= 5.0.0, < 5.1.0 → fixed in 5.1.0

Description

Summary If a user is granted the `admin:users` scope, they may escalate their own privileges by making themselves a full admin user. Details The `admin:users` scope allows a user to edit user records: > admin:users > > Read, write, create and delete users and their authentication state, not including their servers or tokens. > > -- https://jupyterhub.readthedocs.io/en/stable/rbac/scopes.html#available-scopes However, this includes making users admins. Admin users are granted scopes beyond `admin:users` making this a mechanism by which granted scopes may be escalated. Impact The impact is relatively small in that `admin:users` is already an extremely privileged scope only granted to trusted users. In effect, `admin:users` is equivalent to `admin=True`, which is not intended. Note that the change here only prevents escalation to the built-in JupyterHub admin role that has unrestricted permissions. It does not prevent users with e.g. `groups` permissions from granting themselves or other users permissions via group membership, which is intentional.

Related

Alias · CVE (1)

  • CVE-2024-41942 JupyterHub is software that allows one to create a multi-user server for Jupyter notebooks. vulnerability

Weakness · CWE (1)

  • CWE-274 Improper Handling of Insufficient Privileges weakness

References