GitHub Advisoryadvisory · Go

GHSA-99j8-wv67-4c72 Aiven Operator has cross-namespace secret exfiltration via ClickhouseUser connInfoSecretSource

MEDIUM Published 2026-04-10 Modified 2026-04-10 Official page ↗
Aliases
CVE-2026-39961
Ecosystem
Go
Packages
github.com/aiven/aiven-operator
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N
Weaknesses
CWE-269, CWE-441
Reviewed
2026-04-10

Affected packages

• Go github.com/aiven/aiven-operator: >= 0.31.0, < 0.37.0 → fixed in 0.37.0

Description

Impact A developer with create permission on ClickhouseUser CRDs in their own namespace can exfiltrate secrets from any other namespace — production database credentials, API keys, service tokens — with a single kubectl apply. The operator reads the victim's secret using its ClusterRole and writes the password into a new secret in the attacker's namespace. The operator acts as a confused deputy: its ServiceAccount has cluster-wide secret read/write (aiven-operator-role ClusterRole), and it trusts user-supplied namespace values in spec.connInfoSecretSource.namespace without validation. No admission webhook enforces this boundary — the ServiceUser webhook returns nil, and no ClickhouseUser webhook exists. Patches This vulnerability is resolved in version 0.37.0. We recommend all users update as soon as possible. Credits Credits to Andrés Cruciani for finding and reporting the bug through our bug bounty program

Related

Alias · CVE (1)

  • CVE-2026-39961 Aiven Operator allows you to provision and manage Aiven Services from your Kubernetes cluster. vulnerability

Weakness · CWE (2)

  • CWE-269 Improper Privilege Management weakness
  • CWE-441 Unintended Proxy or Intermediary weakness

References