Skip to main content

OpenBao CVE-2026-55774

| EUVDEUVD-2026-78681 LOW
Incorrect Authorization (CWE-863)
2026-06-19 https://github.com/openbao/openbao GHSA-c36x-h252-g9x2
2.1
CVSS 4.0 · Vendor: https://github.com/openbao/openbao

Severity by source

Vendor (https://github.com/openbao/openbao) PRIMARY
2.1 LOW
CVSS:4.0/AV:N/AC:L/AT:P/PR:H/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
6.4 MEDIUM

Network API exploitation with low-privilege auth token (PR:L); scope changes because impact crosses namespace security boundaries (S:C); no credential confidentiality exposure, only revocation (C:N, I:L, A:L).

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L/SC:N/SI:L/SA:L

Primary rating from Vendor (https://github.com/openbao/openbao).

CVSS VectorVendor: https://github.com/openbao/openbao

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
X

Lifecycle Timeline

3
CVSS changed
Sep 15, 2026 - 16:22 NVD
2.1 (LOW)
Source Code Evidence Fetched
Jun 19, 2026 - 23:46 vuln.today
Analysis Generated
Jun 19, 2026 - 23:46 vuln.today

DescriptionCVE.org

Summary

OpenBao users with access to the sys/leases/revoke/:lease_id endpoint in any namespace can revoke leases in any other namespace as long as the lease identifier is known to them, bypassing ACLs that should apply for cross-namespace revocations.

Impact

OpenBao's namespaces provide multi-tenant separation. A tenant who intentionally leaks lease identifiers can have their lease and underlying credential revoked by a user in another tenant.

Patch

This will be fixed in OpenBao v2.5.5.

References

This vulnerability is similar to but distinct from:

  • CVE-2026-45808 / GHSA-v8v8-cm84-m686
  • CVE-2026-40264 / GHSA-p49j-v9wc-wg57

AnalysisAI

Cross-namespace lease revocation in OpenBao allows authenticated tenants in one namespace to revoke leases belonging to any other namespace, bypassing multi-tenant ACL boundaries. Affected are all OpenBao versions from 0.1.0 through 2.5.4 (Go module pkg:go/github.com/openbao/openbao). An attacker who knows a lease identifier from a foreign namespace - for example through an intentional or accidental leak - can call sys/leases/revoke/:lease_id and force revocation of that namespace's credentials without any authorization to do so in that namespace. No public exploit has been identified at time of analysis, and this is noted as an incomplete fix of the related CVE-2026-45808.

Technical ContextAI

OpenBao is an open-source secrets management platform (a fork of HashiCorp Vault) written in Go. It uses a namespace model to provide multi-tenant isolation: each tenant operates within a discrete namespace, and ACL policies are scoped per namespace. Lease identifiers in OpenBao embed a namespace ID as a suffix (extracted via namespace.SplitIDFromString). The root cause (CWE-863: Incorrect Authorization) is that the request handling code in vault/request_handling.go was overriding the request's namespace context with the namespace embedded inside the lease ID itself, before ACL evaluation. This meant that when a tenant in namespace A presented a lease ID belonging to namespace B via the canonical path sys/leases/revoke/:lease_id, the system switched the execution context to namespace B and processed the revocation, skipping ACL enforcement that should have prevented cross-namespace operations. A parallel bug existed in vault/expiration.go's loadEntry function, which also extracted namespace context from the embedded lease ID during storage lookups, compounding the bypass. The fix in PR #3307 removes this automatic namespace-context override logic and adds explicit namespace validation in FetchLeaseTimesByToken.

RemediationAI

Upgrade to OpenBao v2.5.5, which contains the fix from commit b20b999dd4044d7b419a5472d8fe08407828be37 and PR #3307 (https://github.com/openbao/openbao/pull/3307). The advisory is published at https://github.com/openbao/openbao/security/advisories/GHSA-c36x-h252-g9x2. Note that the GHSA advisory package data lists the fixed version as a pre-release commit hash (0.0.0-20260617103932-b20b999dd404) rather than a tagged release, so confirm the v2.5.5 tagged release is available and published before upgrading. If immediate patching is not possible, restrict access to the sys/leases/revoke and sys/leases/renew endpoints via namespace-scoped ACL policies so that only privileged operators or root tokens hold those capabilities - this reduces, but does not eliminate, the attack surface if lease IDs can still be obtained. Additionally, audit audit logs and error outputs to ensure lease identifiers are not being exposed across namespace trust boundaries.

Share

CVE-2026-55774 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy