Skip to main content

OpenBao Agent CVE-2026-77285

| EUVDEUVD-2026-85518 LOW
Insertion of Sensitive Information into Log File (CWE-532)
2026-09-22 https://github.com/openbao/openbao GHSA-444v-8vxr-p36h
2.4
CVSS 4.0 · Vendor: https://github.com/openbao/openbao
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain read access to Agent stdout/logs
  2. Exploit
    Induce exec-mode error (num_retries exhausted)
  3. Impact
    Harvest leaked env_template secrets from output

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A09:2025 - Security Logging & Alerting Failures
ASVS 5.0
V16 - Security Logging and Error Handling Log data sanitization
Exploitation Conditions

Exploitation requires all of: the OpenBao Agent running in exec rendering mode; secrets supplied through the env_template configuration; an error condition being reached (primarily num_retries being exhausted) that triggers the errant write to stdout; and an adversary having read access to that stdout/log stream. It is not an attacker-initiated remote exploit - the leak is produced by the Agent's own failure handling, so the limiting factors are the non-default exec+env_template deployment mode, the need for a retry-exhaustion/error event, and pre-existing access to the Agent's output or aggregated logs. Affected versions are prior to OpenBao v2.6.0.

Impact

This is a genuine but low-priority information-disclosure issue. The vendor assigned no CVSS (N/A), and there is no EPSS score, no CISA KEV listing, no SSVC decision data, and no public exploit code. CWE-532 (insertion of sensitive information into log/output) combined with the description makes clear this is an accidental leak triggered by the OpenBao Agent's own error handling - NOT an attacker-initiated exploit primitive. Secrets from env_template are written to stdout when exec rendering mode hits certain error conditions, primarily num_retries exhaustion. The realistic risk therefore hinges on whether an adversary can already read the Agent's stdout/logs (via log aggregation, shared terminal, process output capture, or compromised host), which is itself a meaningful prerequisite. No signals point to widespread or targeted exploitation; the patch (io.Discard on the output stream in dry mode) is a straightforward defensive fix. Missing data note: no CVSS vector was supplied by the vendor, so attack vector and privileges must be inferred from the description - treat the assessed vector below as analyst-derived, not vendor-confirmed.

Exploit ScenarioDerived

An OpenBao Agent runs in exec rendering mode with secrets injected via env_template, and its stdout is captured by a centralized logging or container-orchestration pipeline. Transient upstream failures cause num_retries to be exhausted, and the Agent inadvertently prints previously rendered secrets to stdout, where they persist in logs. Any operator or process with read access to those logs - including a lower-privileged user who can view container/systemd output - can then harvest the leaked credentials. No public exploit code exists.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 22, 2026

OpenBao Agent's exec rendering mode leaks secrets to stdout when an error condition occurs, primarily when the configured num_retries is exhausted, exposing credentials supplied via env_template to anyone who can read the agent's output stream or aggregated logs. All OpenBao versions before v2.6.0 are affected; the defect is inherited from the original Vault codebase and the fix is a one-line change that discards the template runner's output stream during failures. The assessed CVSS 3.1 vector (AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N) reflects a local, non-default deployment prerequisite - exec rendering mode combined with env_template - and there is no public exploit identified at time of analysis, making this a genuine but low-priority information-disclosure issue.

RemediationAI

Upgrade to OpenBao v2.6.0 GA or later, which is the vendor-released patch for this issue (advisory GHSA-444v-8vxr-p36h, release https://github.com/openbao/openbao/releases/tag/v2.6.0; the fix originates from PR #3494 and PR #3495 and commits 90272575e5f58b3883fbb0ccb2238e9285722d1a / ee3aa4aff72c5176cf02af21eac7158899080878). If an immediate upgrade is not possible, the most effective compensating control is to stop using exec rendering mode with env_template for secret material, since the leak only occurs on that code path - the trade-off is loss of the env-template workflow and a need to re-architect secret delivery via file-based templates or direct API consumption, which is a non-trivial change. If the deployment mode must stay, restrict read access to the agent's stdout: ensure the process is not supervised by systemd/journald with unbounded retention, avoid capturing the agent's console output in CI/CD or container log aggregators that a broad group can read, and redirect stdout to a tightly permissioned sink, accepting that this only reduces the blast radius because any copy already written to a log remains exposed. In all cases, treat any prior retry-exhaustion or rendering failure of the agent as a potential credential disclosure event and rotate the affected secrets, and note that no vendor-published workaround beyond the v2.6.0 upgrade is documented at time of analysis.

Affected VersionsENISA

openbao < 2.6.0

Affected Packages

go github.com/openbao/openbao fix: 0.0.0-20260714163218-90272575e5f5
euvd openbao fix: 2.6.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

OpenBao Agent is the client-side daemon (a fork of HashiCorp Vault Agent) that renders secrets from a server into templates and can run a child process in 'exec' mode via command/agent/exec/exec.go. In exec rendering mode with env_template configuration, secrets are injected into the child process environment through a template runner; the runner is wired to an output stream, and during failure handling - most reliably after the configured num_retries is met and the agent aborts - the previously rendered secret material is written to that stream, which is stdout. This is a classic CWE-532 (Insertion of Sensitive Information into Log File) root cause: sensitive values flow into a diagnostic output channel that is not access-controlled as carefully as the secrets themselves. The upstream fix in PR #3494 simply calls s.runner.SetOutStream(io.Discard) before the failure path so rendered templates cannot reach stdout in this 'dry' mode; PR #3495 and commits 90272575e5f58b3883fbb0ccb2238e9285722d1a and ee3aa4aff72c5176cf02af21eac7158899080878 implement the same correction. Because the leak is generated by the agent's own error handling rather than by attacker-controlled input, exploitation requires pre-existing read access to the agent's stdout, container log, journald stream, or CI/CD log aggregation pipeline where that output is captured and retained.

Know when Go gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (https://github.com/openbao/openbao) PRIMARY 2.4 LOW
CVSS:4.0/AV:L/AC:L/AT:P/PR:H/UI:A/VC:L/VI:N/VA:N/SC:H/SI:H/SA:H
vuln.today AI 4.7 MEDIUM

Leak reaches local stdout/logs (AV:L) only under specific error/retry-exhaustion conditions (AC:H) and requires access to that output (PR:L); high confidentiality impact on secrets, no integrity or availability effect.

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

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

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

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
High
User Interaction
Active
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
High
Subsequent system: Integrity
High
Subsequent system: Availability
High

Lifecycle Timeline

1
CVSS changed
Sep 23, 2026 - 19:22 NVD
2.4 (LOW)

DescriptionCVE.org

Impact

During certain error conditions, OpenBao Agent's exec rendering mode will incorrectly write secrets specified in env_template to stdout. This primarily happens when num_retries is met.

This vulnerability is original to Vault and was reported via the OpenBao security mailing list.

Patches

This is addressed in OpenBao v2.6.0 GA.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Low
OpenBao is a niche Linux Foundation fork of Vault, limited adoption
Threat Intel
1
1 source
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

12
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +12
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Go

View all
CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2016-5386 HIGH
8.1 Jul 19

The net/http package in Go through 1.6 does not attempt to address RFC 3875 section 4.1.18 namespace conflicts and there

CVE-2025-68121 CRITICAL POC
10.0 Feb 05

Critical certificate validation bypass in Go crypto/tls during session resumption. If ClientCAs or RootCAs fields are mu

CVE-2019-14809 CRITICAL POC
9.8 Aug 13

net/url in Go before 1.11.13 and 1.12.x before 1.12.8 mishandles malformed hosts in URLs, leading to an authorization by

CVE-2026-90942 CRITICAL POC
9.3 Sep 14

Casdoor through 4.4.0 exposes its instance-wide built-in JWT signing private key unmasked through the /api/get-certs and

CVE-2026-101090 CRITICAL POC
9.3 Sep 27

Host header injection in Nezha 2.2.3's OAuth2 redirect endpoint (/api/v1/oauth2/{provider}) allows an unauthenticated re

CVE-2026-78428 HIGH POC
8.8 Sep 17

Session cross-wiring in SUSE NeuVector before 5.6.1 allows an unauthenticated remote attacker to obtain another user's a

CVE-2026-92791 HIGH POC
8.7 Sep 16

Unauthenticated path traversal in Uber Kraken through 0.1.29 allows remote attackers to read files outside the configure

CVE-2018-7187 HIGH POC
8.8 Feb 16

The "go get" implementation in Go 1.9.4, when the -insecure command-line option is used, does not validate the import pa

CVE-2026-16651 HIGH POC
8.7 Sep 21

Denial of service in Temporal Server allows an authenticated caller holding at least namespace read permission to crash

CVE-2026-82405 HIGH POC
8.7 Sep 23

Account takeover in Klever-Go's KleverUpdateAccountPermission built-in (all versions prior to 1.7.20) allows an attacker

CVE-2026-82409 HIGH POC
8.4 Sep 23

Maliciously crafted on-chain account names processed by Klever-Go prior to 1.7.20 are spliced into Elasticsearch _bulk r

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