Skip to main content

OpenObserve EUVDEUVD-2026-86328

| CVE-2026-63645 HIGH
Information Exposure (CWE-200)
2026-09-24 GitHub_M
7.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Locate exposed OpenObserve instance
  2. Delivery
    Send GET /config/runtime unauthenticated
  3. Exploit
    Filter fails to mask dsn/creds fields
  4. Execution
    Receive full config with plaintext PostgreSQL DSN
  5. Impact
    Connect to backing database with leaked credentials

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK

2 techniques across 2 tactics: Collection, Discovery

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitable against default configurations because /config/runtime is registered without authentication and requires no user interaction (AV:N/AC:L/PR:N/UI:N) - any client with network reachability to the instance can trigger it. The MOST severe outcome (plaintext database credentials) is LIMITED to deployments using the PostgreSQL metadata backend, since the leaked meta_postgres_dsn/meta_postgres_ro_dsn/meta_ddl_dsn/usage_reporting_creds fields only carry credentials in that configuration; other deployments still leak root admin email, internal NATS address, and filesystem layout. Realistic risk is further gated by whether the instance is exposed to untrusted networks (e.g., internet-facing) versus isolated behind internal-only access. Affected versions are prior to 0.90.3.

Impact

The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N, base 7.5) is well-supported by the description: the /config/runtime endpoint is registered with no authentication and is reachable by any network client, requiring no user interaction and no special conditions on a default install. The confidentiality-only impact (C:H, I:N, A:N) is appropriate because the flaw leaks secrets rather than modifying state - but that leak is severe on PostgreSQL-backed deployments, where meta_postgres_dsn/meta_postgres_ro_dsn/meta_ddl_dsn expose full database connection strings (credentials included), enabling downstream compromise of the backing store. No EPSS score, KEV entry, POC, or SSVC decision data was provided, so exploitation-likelihood signals are absent; per the precision rules this is 'no public exploit identified at time of analysis.' The fix is confirmed (PR #12220 removes the /runtime and /reload routes; commit 4f3db1cf; release v0.90.3), and the root cause - a hide_sensitive_fields keyword filter that does not recognize 'dsn' or 'creds' substrings - is concrete and easily weaponized. Net: this is a genuine, high-value unauthenticated information-disclosure issue for exposed instances, tempered by the fact that OpenObserve is a moderately-deployed platform rather than ubiquitous infrastructure, so realistic risk depends heavily on whether the instance is internet-reachable and PostgreSQL-backed.

Exploit ScenarioDerived

An unauthenticated attacker who can reach an OpenObserve instance sends a single GET request to /config/runtime and receives the full server configuration serialized as JSON. Because the sensitive-field filter misses 'dsn' and 'creds' names, the response includes plaintext PostgreSQL DSNs (with credentials), the root admin email, internal NATS address, and filesystem layout, which the attacker then uses to connect directly to the backing database. No public exploit code is identified, but the attack is a trivial single HTTP GET requiring no authentication or tooling.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 24, 2026

Unauthenticated network clients can retrieve the complete runtime configuration of an OpenObserve instance - including plaintext PostgreSQL connection strings (meta_postgres_dsn, meta_postgres_ro_dsn, meta_ddl_dsn) and usage_reporting_creds - simply by issuing a GET request to /config/runtime, which is registered without any authentication check. The flaw affects all OpenObserve releases prior to 0.90.3 and stems from a hide_sensitive_fields keyword filter that does not recognize the field names dsn or creds, so those values are serialized verbatim; deployments using a PostgreSQL metadata backend are most severely impacted because live database credentials are exposed, while all deployments leak the root administrator email, internal NATS address, and filesystem layout. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N, base 7.5) confirms remote, unauthenticated, no-interaction exploitation against default configurations; no public exploit code or active exploitation was identified at time of analysis. Vendor-released patch: 0.90.3.

RemediationAI

Apply the vendor-released patch by upgrading OpenObserve to 0.90.3 or later; the fix commit 4f3db1cf790ffe8ea065d98f87344e839ec6e477 and PR 12220 (https://github.com/openobserve/openobserve/pull/12220) remove the /config/runtime and /config/reload routes from config_routes() outright, so there is no configuration toggle that re-enables the safe behavior - upgrading is the only complete fix. If immediate upgrade is not possible, block GET requests to /config/runtime and /config/reload at the reverse proxy, load balancer, or WAF in front of OpenObserve and restrict the instance to trusted networks; note that this compensating control only covers traffic through the proxy and does not protect clients with direct network reachability to the server port, so network segmentation must accompany it. Because the endpoint is unauthenticated, assume any exposure window resulted in disclosure: rotate the PostgreSQL credentials referenced by meta_postgres_dsn, meta_postgres_ro_dsn, meta_ddl_dsn, and usage_reporting_creds, and rotate any other secrets present in those DSNs; also review logs for requests to /config/runtime and treat the leaked root administrator email, internal NATS address, and filesystem paths as reconnaissance data that could enable follow-on attacks. Full details and version confirmation are in the advisory at https://github.com/openobserve/openobserve/security/advisories/GHSA-v496-g5c9-vqxw.

Affected VersionsENISA

openobserve < 0.90.3

Affected Packages

euvd openobserve fix: 0.90.3

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

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

Technical ContextAI · show details

OpenObserve is a cloud-native observability platform written in Rust, with HTTP routing defined in src/handler/http/router/mod.rs. The vulnerable handler, status::config_runtime, serializes the entire in-memory configuration structure to the HTTP response after passing it through a keyword-based redaction routine (hide_sensitive_fields). That routine operates on a denylist of sensitive key names and simply fails to include the substrings dsn and creds, so any configuration field whose name contains those tokens - meta_postgres_dsn, meta_postgres_ro_dsn, meta_ddl_dsn, and usage_reporting_creds - is emitted in cleartext. This is a classic CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor) failure: a denylist-based sanitizer combined with an unauthenticated diagnostic endpoint. The upstream fix (PR #12220, commit 4f3db1cf790ffe8ea065d98f87344e839ec6e477) removes the /runtime and /reload routes from config_routes() entirely rather than extending the keyword filter, eliminating the disclosure surface. CPE data (cpe:2.3:a:openobserve:openobserve:*:*:*:*:*:*:*:*) marks the whole pre-0.90.3 version range as affected.

Know when Openobserve 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 (GitHub_M) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
vuln.today AI 7.5 HIGH

Unauthenticated network GET with no interaction on default config (AV:N/AC:L/PR:N/UI:N); leaks DB credentials/secrets so C:H, with no integrity or availability impact.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

2
Patch available
Sep 24, 2026 - 19:04 EUVD
CVE Published
Sep 24, 2026 - 17:39 cve.org
HIGH 7.5

DescriptionCVE.org

OpenObserve is a cloud-native observability platform. Prior to 0.90.3, OpenObserve registers the /config/runtime endpoint without authentication and serializes the complete server configuration after applying the hide_sensitive_fields keyword filter. The filter does not recognize dsn or creds field names, so meta_postgres_dsn, meta_postgres_ro_dsn, meta_ddl_dsn, and usage_reporting_creds can be returned in plaintext to an unauthenticated network client. PostgreSQL deployments can expose database credentials, and the same response can disclose the root administrator email address, internal NATS address, filesystem layout, and other deployment details. This issue is fixed in version 0.90.3.

Technical POC Analysis

CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor), arising from two independent defects that combine: Missing authentication on the route.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

OpenObserve deployments running versions below 0.90.3 expose their complete runtime configuration - including live PostgreSQL connection strings - to anyone who can reach the service over the network, with no authentication required. For organizations using OpenObserve as their observability platform, this hands an attacker the keys to the underlying metadata database, creating a realistic path to broad data compromise and lateral movement beyond the observability stack. Leadership should treat this as a high-priority exposure, because the leaked credentials remain valid until they are rotated, even after the vulnerable endpoint is closed.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis; interim mitigations: block or deny access to /config/runtime at the reverse proxy, load balancer, or WAF, restrict OpenObserve management interfaces to trusted networks, and immediately rotate all exposed PostgreSQL DSN credentials and usage_reporting_creds.

Threat Intelligence Overview

EPSS Score
0.3%
Top 76% exploitable
Prevalence
Low
growing open-source observability platform, modest real-world production footprint
Data Quality
5 sources
Confidence: Medium

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 HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
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.

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