Description
OpenObserve is a cloud-native observability platform. Prior to 1.1.0, the shared authentication validator in src/api/common/src/auth/validator.rs accepts an empty or whitespace-only HTTP Basic password for an account whose password_ext value is missing or empty. SSO-provisioned and migration-created users can have this state, allowing an unauthenticated attacker who knows an affected user's email address and organization to authenticate on protected non-ingestion API routes with the victim's role and permissions. A compromised privileged account can expose or modify telemetry, alerts, streams, users, and security configuration. An account with search permission can submit a DataFusion COPY ... TO statement through the search API to create or overwrite attacker-controlled files at service-process-writable locations, creating a conditional escalation to pre-authentication remote code execution. This issue is fixed in version 1.1.0.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
openobserve openobserve
< 1.1.0affected
References
- https://github.com/openobserve/openobserve/security/advisories/GHSA-7w4v-2c9r-q94v ↗
- https://github.com/openobserve/openobserve/pull/15054 ↗
- https://github.com/openobserve/openobserve/commit/46678ea8daba94c3904286471794f80c5a74ecea ↗
- https://github.com/openobserve/openobserve/commit/dc5c657002d97e9e29726cefcadec49cae755e1a ↗
- https://github.com/openobserve/openobserve/releases/tag/v1.1.0 ↗