Security Resilience

CVE-2026-32726

Access Control in Scitokens Cpp Library ≤ 1.4.1

Public PoCAccess Control
Published
31 March 2026
Modified
24 July 2026
Patch / advisory
CVSS Score v3.1 8.1
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
EPSS Score 0.0038 31th percentile
Risk Priority 59 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2026-32726 is a high-severity Incorrect Authorization (CWE-863) vulnerability in Scitokens Scitokens Cpp Library. Its CVSS base score is 8.1 (High).

Operationally, ranked at the 31th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

The strongest mitigations our analysis identified map to AC-24 (Access Control Decisions) and AC-25 (Reference Monitor) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2026-32726 is an authorization bypass vulnerability in the SciTokens C++ library (scitokens-cpp), a minimal implementation for creating and using SciTokens from C or C++. In versions prior to 1.4.1, the library's enforcer performs path-based scope validation using a simple string-prefix comparison without enforcing path-segment boundaries. This allows a token authorized for a specific path to incorrectly grant access to sibling paths that share the same prefix, as the check does not require delimiter separation. The issue is classified under CWE-863 (Incorrect Authorization) with a CVSS v3.1 base score of 8.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N).

An attacker with low privileges (PR:L) can exploit this over the network (AV:N) with low complexity and no user interaction required. By obtaining a valid SciTokens token scoped to a path prefix, such as "/data/special/", the attacker could access unauthorized sibling resources like "/data/specialist/" or "/data/specialops/". Successful exploitation enables high confidentiality and integrity impacts (C:H/I:H), potentially allowing unauthorized data access or modification within the affected SciTokens-protected services, while availability remains unaffected (A:N).

The vulnerability has been patched in scitokens-cpp version 1.4.1, as detailed in the GitHub security advisory (GHSA-q5fm-fgvx-32jq) and the fixing commit (decfe2f00cb9cabbf1e17a3bb2cd4ea1bbbd8a73). Security practitioners should upgrade to version 1.4.1 or later to mitigate the issue, and review token scopes in deployments using earlier versions for potential over-permissions.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

SciTokens C++ is a minimal library for creating and using SciTokens from C or C++. Prior to version 1.4.1, scitokens-cpp is vulnerable to an authorization bypass in path-based scope validation. The enforcer used a simple string-prefix comparison when checking whether…

more

a requested resource path was covered by a token's authorized scope path. Because the check did not require a path-segment boundary, a token scoped to one path could incorrectly authorize access to sibling paths that merely started with the same prefix. This issue has been patched in version 1.4.1.

CWE(s)

Related Threats

CVEs Like This One

CVE-2026-32725Same product: Scitokens Scitokens Cpp Library
CVE-2026-32716Same vendor: Scitokens
CVE-2026-32714Same vendor: Scitokens
CVE-2026-32727Same vendor: Scitokens
CVE-2026-73708Shared CWE-863
CVE-2026-80203Shared CWE-863
CVE-2023-40315Shared CWE-863
CVE-2023-3459Shared CWE-863
CVE-2024-34434Shared CWE-863
CVE-2026-53935Shared CWE-863

Affected Assets

scitokens
scitokens cpp library
≤ 1.4.1

Mitigating Controls

Mitigating Controls (NIST 800-53 r5) AI

AC-3 directly requires correct enforcement of authorization decisions on every access request, structurally preventing incorrect checks.

AC-24 ensures access-control decisions are made and applied consistently, reducing the chance of an incorrect authorization result.

A reference monitor that is always invoked and tamper-proof forces every authorization decision through a verified, correct path.

Least-privilege assignments shrink the set of authorizations that must be checked correctly, limiting exposure to flawed checks.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

blocks

A.5.18's provisioning, revocation, review and adjustment of access rights (incl. before role changes/termination, with segregation and owner approval) directly stops incorrect authorization decisions from being exploitable in the vast majority of cases; the bounded remainder is incorrectness inside the authorization logic itself (e.g. flawed conditional or missing check) rather than rights that were wrongly granted.

blocks

A.8.3 directly mandates restricting access to information per policies via configuration, identity/group controls, isolation, and dynamic techniques that enforce correct authorization decisions, addressing most but not all slices of CWE-863 (e.g., remainder in non-access-decision authorization errors like timing or environmental factors).

blocks

Requiring consistency between access rights and classification plus formal approval steps ensures that the authorization logic correctly distinguishes between entities that should and should not be granted access.

Hardening callouts derived

DISA STIG baselines are authored against specific weaknesses. Where this CVE cites a broad weakness class, the mapping is not asserted at that abstraction (owner ruling, 2026-09-25: grade only at Base and below), so no rule is shown here rather than a rule shown against the wrong grain.

  • No fine-grained STIG row for CWE-863, a class-level weakness, and none of its children carries one either.

References