{"schema_version":"1.9.0","id":"CVE-2026-22822","published":"2026-01-21T21:22:05.249Z","modified":"2026-08-12T03:51:45.964421693Z","aliases":["GHSA-77v3-r3jw-j2v2","GO-2026-4330"],"related":["SUSE-SU-2026:0403-1","openSUSE-SU-2026:21483-1"],"summary":"External Secrets Operator insecurely retrieves secrets through the getSecretKey templating function","details":"External Secrets Operator reads information from a third-party service and automatically injects the values as Kubernetes Secrets.  Starting in version 0.20.2 and prior to version 1.2.0, the `getSecretKey` template function, while introduced for senhasegura Devops Secrets Management (DSM) provider, has the ability to fetch secrets cross-namespaces with the roleBinding of the external-secrets controller, bypassing our security mechanisms. This function was completely removed in version 1.2.0, as everything done with that templating function can be done in a different way while respecting External Secrets Operator's safeguards As a workaround, use a policy engine such as Kubernetes, Kyverno, Kubewarden, or OPA to prevent the usage of `getSecretKey` in any ExternalSecret resource.","affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/external-secrets/external-secrets","events":[{"introduced":"ea11b0ace2a7bf6a334442339233d2417ad19d95"},{"fixed":"f22b8a1b058d9497030b6a5c307ebee3af12a561"},{"fixed":"17d3e22b8d3fbe339faf8515a95ec06ec92b1feb"}],"database_specific":{"cpe":"cpe:2.3:a:external-secrets:external_secrets_operator:*:*:*:*:*:*:*:*","extracted_events":[{"introduced":"0.20.2"},{"fixed":"1.2.0"}],"source":["CPE_RANGE","REFERENCES"]}}],"versions":["helm-chart-1.1.1","v1.1.1","helm-chart-1.1.0","v1.1.0","helm-chart-1.0.0","v1.0.0","v0.2.1-esoctl","v0.2.0-esoctl","helm-chart-0.20.4","v0.20.4","helm-chart-0.20.3","v0.20.3","helm-chart-0.20.2","v0.20.2"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-22822.json"}}],"references":[{"type":"WEB","url":"https://github.com/external-secrets/external-secrets/releases/tag/v1.2.0"},{"type":"WEB","url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-22822.json"},{"type":"ADVISORY","url":"https://access.redhat.com/security/cve/CVE-2026-22822"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/22xxx/CVE-2026-22822.json"},{"type":"ADVISORY","url":"https://github.com/external-secrets/external-secrets/security/advisories/GHSA-77v3-r3jw-j2v2"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-22822"},{"type":"REPORT","url":"https://bugzilla.redhat.com/show_bug.cgi?id=2431873"},{"type":"REPORT","url":"https://github.com/external-secrets/external-secrets/issues/5690"},{"type":"FIX","url":"https://github.com/external-secrets/external-secrets/commit/17d3e22b8d3fbe339faf8515a95ec06ec92b1feb"},{"type":"FIX","url":"https://github.com/external-secrets/external-secrets/pull/3895"}],"database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-863"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/22xxx/CVE-2026-22822.json"},"severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H"}]}