# CVE-2024-29033: JupyterHub GoogleOAuthenticator improper authorization in hosted_domain check

Source: https://junglewise.ai/threats/cve-2024-29033-jupyterhub-googleoauthenticator-improper-authorization-in-hosted  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2024-03-20. Updated: 2026-07-13  
License: CC BY 4.0 with a link back

CVE-2024-29033 · Severity: high · CVSS 7.5 · Published 2024-03-20

A vulnerability in the Google authentication library for JupyterHub allows unauthorized users to bypass domain restrictions. The system incorrectly verifies organization membership by only checking if an email address ends with a specific domain, rather than confirming the account is part of a verified Google Workspace. This could allow an attacker who has previously accessed a domain-linked email to gain unauthorized access to private JupyterHub environments.

Technologies: [oauthenticator (PyPI)](https://junglewise.ai/threats/technologies/oauthenticator). Vendors: [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2024-29033 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2024-29033 being exploited in the wild.

**How severe is CVE-2024-29033?** High severity, with a CVSS score of 7.5, published 20 March 2024.

**Which products and versions are affected?** oauthenticator (PyPI) < 16.3.0, ECOSYSTEM:introduced=0,fixed=16.3.0.

**Is there a fix for CVE-2024-29033?** Yes. oauthenticator (PyPI): upgrade to 16.3.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2024-29033 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2024-29033?** Check whether you run oauthenticator (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- oauthenticator (PyPI): upgrade to 16.3.0 or later

  ```sh
  pip install "oauthenticator>=16.3.0"
  ```


## Technical details

The GoogleOAuthenticator.hosted_domain configuration in the oauthenticator library (versions prior to 16.3.0) fails to properly validate that a Google account belongs to a specific Google organization or workspace. Instead of verifying the account's organizational membership via OAuth2 metadata, it performs a simple suffix check on the user's email address. An attacker who has created a Google account with a matching domain suffix (which is possible under certain conditions if they previously had access to the domain's email) can bypass authorization checks. This is an improper authorization vulnerability (CWE-285) exploitable over the network without prior privileges. The issue is resolved in version 16.3.0.

## Affected products

- JupyterHub oauthenticator < 16.3.0

## Identifiers

- CVE-2024-29033
- GHSA-55m3-44xf-hg4h
- PYSEC-2026-1710

## Timeline

- 2023-12-15: disclosed: Underlying Google OAuth behavior described in blog post
- 2024-03-20: advisory: GitHub Advisory published
- 2024-03-20: patched: Version 16.3.0 released

## References

- [https://api.github.com/users/manics](https://api.github.com/users/manics)
- [https://github.com/manics](https://github.com/manics)
- [https://api.github.com/users/manics/gists%7B/gist_id%7D](https://api.github.com/users/manics/gists%7B/gist_id%7D)
- [https://api.github.com/users/manics/repos](https://api.github.com/users/manics/repos)
- [https://avatars.githubusercontent.com/u/1644105?v=4](https://avatars.githubusercontent.com/u/1644105?v=4)
- [https://api.github.com/users/manics/events%7B/privacy%7D](https://api.github.com/users/manics/events%7B/privacy%7D)

## Related threats

- [PYSEC-2026-1711 - Globus `identity_provider` restriction ignored when used with `allow_all` in JupyterHub 5.0](https://junglewise.ai/threats/cve-2024-37300-globus-identity-provider-restriction-ignored-when-used-with-allow)
- [JupyterHub OAuthenticator authentication bypass in Auth0OAuthenticator](https://junglewise.ai/threats/cve-2026-33175-jupyterhub-oauthenticator-authentication-bypass-in)
- [Authorization Bypass Through User-Controlled Key when using CILogonOAuthenticator oauthenticator](https://junglewise.ai/threats/cve-2022-31027-authorization-bypass-through-user-controlled-key-when-using)
- [JupyterHub OAuthenticator whitelist configuration bypass](https://junglewise.ai/threats/cve-2020-26250-jupyterhub-oauthenticator-whitelist-configuration-bypass)
- [JupyterHub OAuthenticator elevation of privilege](https://junglewise.ai/threats/cve-2018-7206-jupyterhub-oauthenticator-elevation-of-privilege)
