Skip to content
Heist/ feed
Back to feed
High

External Secrets Operator Missing Namespace Restriction in PushSecret and SecretStore List() Calls Allows Unauthorized Secret Access

Type: advisorySources: OSV

External Secrets Operator is a Kubernetes operator that integrates external secret management systems. From version 0.15.0 to before 0.19.2, a vulnerability was discovered where the List() calls for Kubernetes Secret and SecretStore resources performed by the PushSecret controller did not apply a namespace selector. This flaw allowed an attacker to use label selectors to list and read secrets/secret-stores across the cluster, bypassing intended namespace restrictions. An attacker with the ability to create or update PushSecret resources and control SecretStore configurations could exploit this vulnerability to exfiltrate sensitive data from arbitrary namespaces. This could lead to full disclosure of Kubernetes secrets, including credentials, tokens, and other sensitive information stored in the cluster. This vulnerability has been patched in version 0.19.2. A workaround for this issue includes auditing and restricting RBAC permissions so that only trusted service accounts can create or update PushSecret and SecretStore resources.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2025-55196
Confirmed fixed CVEs
Not specified
Updated in this feed
7 Nov 2026, 01:24 UTC · Revision 1

Source evidence

External Secrets Operator Missing Namespace Restriction in PushSecret and SecretStore List() Calls Allows Unauthorized Secret Access

core-osv · Original source

Published 13 Aug 2025, 22:54 UTC

External Secrets Operator is a Kubernetes operator that integrates external secret management systems. From version 0.15.0 to before 0.19.2, a vulnerability was discovered where the List() calls for Kubernetes Secret and SecretStore resources performed by the PushSecret controller did not apply a namespace selector. This flaw allowed an attacker to use label selectors to list and read secrets/secret-stores across the cluster, bypassing intended namespace restrictions. An attacker with the ability to create or update PushSecret resources and control SecretStore configurations could exploit this vulnerability to exfiltrate sensitive data from arbitrary namespaces. This could lead to full disclosure of Kubernetes secrets, including credentials, tokens, and other sensitive information stored in the cluster. This vulnerability has been patched in version 0.19.2. A workaround for this issue includes auditing and restricting RBAC permissions so that only trusted service accounts can create or update PushSecret and SecretStore resources.

osv:CVE-2025-55196
Complete source record
{
  "id": "3284d58332ec16385f388622788379a814dba089fbd33c6e4ace02520a2168b3",
  "url": "https://osv.dev/vulnerability/CVE-2025-55196",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "External Secrets Operator Missing Namespace Restriction in PushSecret and SecretStore List() Calls Allows Unauthorized Secret Access",
    "summary": "External Secrets Operator is a Kubernetes operator that integrates external secret management systems. From version 0.15.0 to before 0.19.2, a vulnerability was discovered where the List() calls for Kubernetes Secret and SecretStore resources performed by the PushSecret controller did not apply a namespace selector. This flaw allowed an attacker to use label selectors to list and read secrets/secret-stores across the cluster, bypassing intended namespace restrictions. An attacker with the ability to create or update PushSecret resources and control SecretStore configurations could exploit this vulnerability to exfiltrate sensitive data from arbitrary namespaces. This could lead to full disclosure of Kubernetes secrets, including credentials, tokens, and other sensitive information stored in the cluster. This vulnerability has been patched in version 0.19.2. A workaround for this issue includes auditing and restricting RBAC permissions so that only trusted service accounts can create or update PushSecret and SecretStore resources.",
    "evidence": "osv:CVE-2025-55196",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2025-55196",
      "aliases": [
        "CVE-2025-55196",
        "GHSA-fcxq-v2r3-cc8h",
        "GO-2025-3885"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/external-secrets/external-secrets",
              "type": "GIT",
              "events": [
                {
                  "introduced": "e07ba8088ef0a10031d13dac4d1d3d7e3264c1e1"
                },
                {
                  "fixed": "f6b47d56d1a5e86eaa3176b40bd00a86598b417e"
                },
                {
                  "fixed": "39cdba5863533007b582dc63dd300839326b2f1d"
                },
                {
                  "fixed": "de40e8f4fa9559c1d770bb674589b285da5ef2d1"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0.15.0"
                      },
                      {
                        "fixed": "0.19.2"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "39cdba5863533007b582dc63dd300839326b2f1d"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "de40e8f4fa9559c1d770bb674589b285da5ef2d1"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v0.19.1",
            "v0.19.0",
            "v0.18.2",
            "v0.18.1",
            "v0.18.0",
            "helm-chart-0.18.0-rc1",
            "v0.18.0-rc1",
            "v0.17.1-rc1",
            "helm-chart-0.17.0",
            "v0.17.0",
            "v0.16.2",
            "v0.16.1",
            "helm-chart-0.16.0",
            "v0.16.0",
            "helm-chart-0.15.1",
            "v0.15.1",
            "v0.15.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-55196.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:48.686345215Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/55xxx/CVE-2025-55196.json",
        "https://github.com/external-secrets/external-secrets/security/advisories/GHSA-fcxq-v2r3-cc8h",
        "https://nvd.nist.gov/vuln/detail/CVE-2025-55196",
        "https://github.com/external-secrets/external-secrets/commit/39cdba5863533007b582dc63dd300839326b2f1d",
        "https://github.com/external-secrets/external-secrets/commit/de40e8f4fa9559c1d770bb674589b285da5ef2d1",
        "https://github.com/external-secrets/external-secrets/pull/5109",
        "https://github.com/external-secrets/external-secrets/pull/5133"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-284"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/55xxx/CVE-2025-55196.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2025-55196",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 516959,
  "published_at": "2025-08-13T22:54:02.698+00:00"
}