Description
LTI JupyterHub Authenticator is a JupyterHub authenticator for LTI. Prior to version 1.6.3, the LTI 1.1 validator stores OAuth nonces in a class-level dictionary that grows without bounds. Nonces are added before signature validation, so an attacker with knowledge of a valid consumer key can send repeated requests with unique nonces to gradually exhaust server memory, causing a denial of service. This issue has been patched in version 1.6.3.
Published: 2026-04-03
Score: 5.9 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service via unbounded memory growth
Action: Immediate Patch
AI Analysis

Impact

The LTI JupyterHub Authenticator implements LTI 1.1 authentication and stores OAuth nonces in a class‑level dictionary. Each incoming request adds a nonce before signature validation, and the dictionary is never cleared. As a result, an attacker with knowledge of a valid consumer key can repeatedly issue requests using new nonces, causing the dictionary to grow without bounds and exhausting server memory. Once memory limits are reached the JupyterHub service will become unresponsive, effectively denying access to all users.

Affected Systems

JupyterHub developers ship the LTI Authenticator as the "ltiauthenticator" package. Versions prior to 1.6.3 are affected; any deployment using an earlier release with the same nonce handling logic is vulnerable. The patch was released with version 1.6.3, so systems running that or newer versions are not susceptible.

Risk and Exploitability

The CVSS score of 5.9 reflects a moderate severity. EPSS indicates a shooting‑star probability of less than 1 percent, and the vulnerability is not listed in the KEV catalog, suggesting exploitation opportunities are currently limited. The likely attack vector is remote, via crafted HTTP requests sent to the authenticator endpoint, and requires the attacker to possess a valid consumer key. Because the vulnerability only leads to a service denial rather than code execution, the impact is limited to availability degradation.

Generated by OpenCVE AI on April 13, 2026 at 18:28 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade LTI JupyterHub Authenticator to version 1.6.3 or later

Generated by OpenCVE AI on April 13, 2026 at 18:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-8mxq-7xr7-2fxj LTI JupyterHub Authenticator: Unbounded Memory Growth via Nonce Storage (Denial of Service)
History

Mon, 13 Apr 2026 17:45:00 +0000

Type Values Removed Values Added
First Time appeared Jupyter
Jupyter lti Jupyterhub Authenticator
CPEs cpe:2.3:a:jupyter:lti_jupyterhub_authenticator:*:*:*:*:*:*:*:*
Vendors & Products Jupyter
Jupyter lti Jupyterhub Authenticator

Tue, 07 Apr 2026 00:00:00 +0000

Type Values Removed Values Added
First Time appeared Jupyterhub
Jupyterhub ltiauthenticator
Vendors & Products Jupyterhub
Jupyterhub ltiauthenticator

Mon, 06 Apr 2026 20:00:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 03 Apr 2026 22:45:00 +0000

Type Values Removed Values Added
Description LTI JupyterHub Authenticator is a JupyterHub authenticator for LTI. Prior to version 1.6.3, the LTI 1.1 validator stores OAuth nonces in a class-level dictionary that grows without bounds. Nonces are added before signature validation, so an attacker with knowledge of a valid consumer key can send repeated requests with unique nonces to gradually exhaust server memory, causing a denial of service. This issue has been patched in version 1.6.3.
Title LTI JupyterHub Authenticator: Unbounded Memory Growth via Nonce Storage (Denial of Service)
Weaknesses CWE-401
CWE-770
References
Metrics cvssV3_1

{'score': 5.9, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H'}


Subscriptions

Jupyter Lti Jupyterhub Authenticator
Jupyterhub Ltiauthenticator
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-04-06T18:59:04.966Z

Reserved: 2026-03-25T15:29:04.746Z

Link: CVE-2026-34052

cve-icon Vulnrichment

Updated: 2026-04-06T18:58:56.743Z

cve-icon NVD

Status : Analyzed

Published: 2026-04-03T23:17:03.777

Modified: 2026-04-13T17:44:00.360

Link: CVE-2026-34052

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-04-14T16:41:41Z

Weaknesses