CVE-2026-55775: Github.com/openbao/openbao OpenBao's System Backend Allows Unauthorized Vulnerability

LOW
Advisory Identifier: GHSA-mwr2-wmgp-crj6
CWE-285
Published
Advisory Summary

CVE-2026-55775 is a LOW openbao's system backend allows unauthorized vulnerability (CWE-285: Improper Authorization) affecting Github.com/openbao/openbao libraries in the Go ecosystem. The issue involves openbao's system backend allows unauthorized management of the containing namespace. Remediation is available by upgrading affected packages to version 0.0.0-20260617103935-d3c1cc64b1ae.

CVE-2026-55775 at a Glance

CVE Identifier CVE-2026-55775
GHSA Identifier GHSA-mwr2-wmgp-crj6
Severity LOW
CVSS v3.1 Base Score N/A
CWE Classification CWE-285: Improper Authorization
Affected Product Github.com/openbao/openbao
Package Ecosystem Go
Published Date
Last Updated

How to Fix CVE-2026-55775

To remediate this vulnerability, upgrade all affected Github.com/openbao/openbao dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

github.com/openbao/openbao fixed: 0.0.0-20260617103935-d3c1cc64b1ae
Upgrade github.com/openbao/openbao to 0.0.0-20260617103935-d3c1cc64b1ae
github.com/openbao/openbao fixed: Latest secure release
Upgrade github.com/openbao/openbao to Latest secure release
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

inspect dependencies for github.com/openbao/openbao

How to Check if You Are Affected

To determine whether your application is affected by CVE-2026-55775, inspect your project dependencies for Github.com/openbao/openbao:

inspect dependencies for github.com/openbao/openbao

Analyze the terminal output to locate any version of Github.com/openbao/openbao in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 0.0.0-20260617103935-d3c1cc64b1ae), your application is affected.

Note: Verify declared build manifests and deployed runtime container environments.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-285: Improper Authorization, where the product does not perform or incorrectly performs an authorization check when an actor attempts to access a resource or perform an action. In Github.com/openbao/openbao, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

### Summary A user that is granted namespace management (`/sys/namespaces`) capabilities within a non-root namespace ("the victim namespace") can abuse special handling of the literal path `"root"` in namespace path canonicalization to manage the victim namespace itself. ### Details Several endpoints under `/sys/namespaces/*` accept a namespace path segment that is canonicalized and then appended to the path of the sys mount's containing namespace (set via path prefix or `X-Vault-Namespace` header) to determine the absolute path of the namespace to operate on. Given the special namespace path `"root"` canonicalizes to en empty path (`""`), when passed as `/sys/namespaces/root`, the resulting absolute namespace path remains equal to the sys mount's containing namespace. Given ACLs are evaluated before namespace path canonicalization, this allows users with capabilities on `/sys/namespaces/root` within any given namespace to operate on the namespace itself instead. ### Impact Users that were granted the required capabilities can abuse this vulnerability to: - Look up - Delete - Lock - Patch custom metadata against the namespace containing the system backend they can manage `sys/namespaces/root` in. The exact range of operations that can be performed depends on the specific capabilities granted on said path and any sub-paths such as `/api-lock`. Notably, the root namespace is immutable and cannot be modified, deleted or locked, and is thus unaffected. Also note that users can only abuse this vulnerability to operate on the direct parent or "containing" namespace relative to their capabilities, not arbitrary namespaces. ### Patch This will be fixed in OpenBao v2.5.5. ### PoC Start a development server: ```sh bao server -dev ``` Create a namespace: ```sh bao namespace create victim ``` This will be the namespace we gain unauthorized management of. Create a policy that allows management of namespaces, _inside_ of the victim namespace. ```sh bao policy write -namespace=victim namespace-management - <<EOF path "sys/namespaces/*" { capabilities = ["read", "update", "patch", "delete"] } EOF ``` Then create a token with above policy attached: ```sh export BAO_TOKEN=$(bao token create -namespace=victim -policy=namespace-management -field=token) ``` Operate on the victim's namespace using the token, for example by outright deleting it: ```sh bao namespace delete -namespace=victim root ```

CVE-2026-55775 Affected Github.com/openbao/openbao Versions

2 component(s)
Fixed Versions:
0.0.0-20260617103935-d3c1cc64b1ae
Product / Package Ecosystem Affected Versions Fixed Version
github.com/openbao/openbao
Go
< 0.0.0-20260617103935-d3c1cc64b1ae
0.0.0-20260617103935-d3c1cc64b1ae
github.com/openbao/openbao
Go
≥ 0.1.0
≤ 2.5.4

References

Frequently Asked Questions

What is CVE-2026-55775?
CVE-2026-55775 is a security vulnerability in Github.com/openbao/openbao involving OpenBao's System Backend allows Unauthorized Management of the containing Namespace under CWE-285: Improper Authorization.
Which Github.com/openbao/openbao versions are affected?
Affected versions include releases prior to 0.0.0-20260617103935-d3c1cc64b1ae across affected packages: github.com/openbao/openbao.
What version fixes CVE-2026-55775?
Upgrading to 0.0.0-20260617103935-d3c1cc64b1ae (or the latest patched release for your respective branch) resolves the vulnerability.
Is github.com/openbao/openbao affected?
Yes, github.com/openbao/openbao is affected in releases prior to 0.0.0-20260617103935-d3c1cc64b1ae, Latest secure release. Upgrade your dependency to 0.0.0-20260617103935-d3c1cc64b1ae, Latest secure release or later.
What CWE is associated with CVE-2026-55775?
CVE-2026-55775 is classified under CWE-285: Improper Authorization (The product does not perform or incorrectly performs an authorization check when an actor attempts to access a resource or perform an action.).
How can I check Go dependencies for CVE-2026-55775?
Run the dependency tree command: 'inspect dependencies for github.com/openbao/openbao'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-mwr2-wmgp-crj6",
  "modified" : "2026-06-19T21:42:06Z",
  "published" : "2026-06-19T21:42:06Z",
  "aliases" : [ "CVE-2026-55775" ],
  "summary" : "OpenBao's System Backend allows Unauthorized Management of the containing Namespace",
  "details" : "### Summary\n\nA user that is granted namespace management (`/sys/namespaces`) capabilities within a non-root namespace (\"the victim namespace\") can abuse special handling of the literal path `\"root\"` in namespace path canonicalization to manage the victim namespace itself. \n\n### Details\n\nSeveral endpoints under `/sys/namespaces/*` accept a namespace path segment that is canonicalized and then appended to the path of the sys mount's containing namespace (set via path prefix or `X-Vault-Namespace` header) to determine the absolute path of the namespace to operate on.\n\nGiven the special namespace path `\"root\"` canonicalizes to en empty path (`\"\"`), when passed as `/sys/namespaces/root`, the resulting absolute namespace path remains equal to the sys mount's containing namespace. Given ACLs are evaluated before namespace path canonicalization, this allows users with capabilities on `/sys/namespaces/root` within any given namespace to operate on the namespace itself instead.\n\n### Impact\n\nUsers that were granted the required capabilities can abuse this vulnerability to:\n\n- Look up\n- Delete\n- Lock\n- Patch custom metadata\n\nagainst the namespace containing the system backend they can manage `sys/namespaces/root` in. The exact range of operations that can be performed depends on the specific capabilities granted on said path and any sub-paths such as `/api-lock`.\n\nNotably, the root namespace is immutable and cannot be modified, deleted or locked, and is thus unaffected. Also note that users can only abuse this vulnerability to operate on the direct parent or \"containing\" namespace relative to their capabilities, not arbitrary namespaces.\n\n### Patch\n\nThis will be fixed in OpenBao v2.5.5.\n\n### PoC\n\nStart a development server:\n\n```sh\nbao server -dev\n```\n\nCreate a namespace:\n\n```sh\nbao namespace create victim\n```\n\nThis will be the namespace we gain unauthorized management of.\n\nCreate a policy that allows management of namespaces, _inside_ of the victim\nnamespace.\n\n```sh\nbao policy write -namespace=victim namespace-management - <<EOF\npath \"sys/namespaces/*\" {\n\tcapabilities = [\"read\", \"update\", \"patch\", \"delete\"]\n}\nEOF\n```\n\nThen create a token with above policy attached:\n\n```sh\nexport BAO_TOKEN=$(bao token create -namespace=victim -policy=namespace-management -field=token)\n```\n\nOperate on the victim's namespace using the token, for example by outright deleting it:\n\n```sh\nbao namespace delete -namespace=victim root\n```",
  "severity" : [ {
    "type" : "CVSS_V4",
    "score" : "CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Go",
      "name" : "github.com/openbao/openbao"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "0.0.0-20260617103935-d3c1cc64b1ae"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Go",
      "name" : "github.com/openbao/openbao"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0.1.0"
      }, {
        "last_affected" : "2.5.4"
      } ]
    } ]
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/openbao/openbao/security/advisories/GHSA-mwr2-wmgp-crj6"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/openbao/openbao/commit/d3c1cc64b1ae7f9868b5c3e80b8b11671f0d97ae"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/openbao/openbao"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/openbao/openbao/releases/tag/v2.5.5"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-285" ],
    "severity" : "LOW",
    "github_reviewed" : true,
    "github_reviewed_at" : "2026-06-19T21:42:06Z",
    "nvd_published_at" : null
  }
}