{"id":"CVE-2026-11769","title":"Grafana Operator: Privilege escalation from namespace admin to cluster admin via GrafanaDashboard jsonnetLib fileName","summary":"Grafana Operator: Privilege escalation from namespace admin to cluster admin via GrafanaDashboard jsonnetLib fileName","severity":"medium","cwe":["CWE-22","CWE-200"],"vendor":"grafana","product":"github.com/grafana/grafana-operator/v5","ecosystem":"go","affected":["github.com/grafana/grafana-operator/v5 <= 5.23.0","github.com/grafana/grafana-operator <= 2.0.0"],"patched":["github.com/grafana/grafana-operator/v5 5.24.0"],"published":"2026-06-19","updated":"2026-06-19","source":"GHSA","sourceUrl":"https://github.com/advisories/GHSA-fcw4-wwqm-m8cf","references":[{"url":"https://github.com/grafana/grafana-operator/security/advisories/GHSA-fcw4-wwqm-m8cf"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-11769"},{"url":"https://grafana.com/security/security-advisories/cve-2026-11769"},{"url":"https://github.com/advisories/GHSA-fcw4-wwqm-m8cf"}],"tags":["ghsa","go"],"epss":0.00361,"epssPercentile":0.2993,"ingestedAt":"2026-06-22T13:35:24.382Z","slug":"CVE-2026-11769","body":"## Overview\n\nWe have released version 5.24.0 of the Grafana Operator. This patch includes a MODERATE severity security fix for a path traversal/privilege escalation vulnerability in the Grafana Operator.\n\n\n### Summary\n\nThe Grafana Operator supports loading dashboards & library panels using the jsonnet data templating language. The jsonnet expression is evaluated in the context of the operator manager pod.\n### Impact\n\nIt is possible for a malicious user who can create `Dashboard` or `LibraryPanel` resources for a `Grafana` instance to obtain the Kubernetes service account token of the Grafana Operator manager.\n\n### Affected versions\n\nAll Grafana Operator versions <= 5.23\n\n### Solutions and mitigations\n\nAll installations should be upgraded as soon as possible.\n\nAs a workaround, the following ValidatingAdmissionPolicy prevent the creation or modification of jsonnet based resources:\n```\napiVersion: admissionregistration.k8s.io/v1\nkind: ValidatingAdmissionPolicy\nmetadata:\n  name: \"prevent-jsonnet-dashboards\"\nspec:\n  failurePolicy: Fail\n  matchConstraints:\n    resourceRules:\n      - apiGroups: [\"grafana.integreatly.org\"]\n        apiVersions: [\"v1beta1\"]\n        operations: [\"CREATE\", \"UPDATE\"]\n        resources: [\"grafanadashboards\", \"grafanalibrarypanels\"]\n  validations:\n    - expression: \"!has(object.spec.jsonnetLib)\"\n---\napiVersion: admissionregistration.k8s.io/v1\nkind: ValidatingAdmissionPolicyBinding\nmetadata:\n  name: \"prevent-jsonnet-dashboards-clusterwide\"\nspec:\n  policyName: \"prevent-jsonnet-dashboards\"\n  validationActions: [Deny]\n```\n\n\n### Acknowledgement\n\nWe would like to thank [Artem Cherezov](https://github.com/cherez0ff) for responsibly disclosing the vulnerability.\n\n## Affected packages\n\n- `github.com/grafana/grafana-operator/v5 <= 5.23.0`\n- `github.com/grafana/grafana-operator <= 2.0.0`\n\n## Remediation\n\nUpgrade to a patched release:\n\n- `github.com/grafana/grafana-operator/v5 5.24.0`","depth":"sunlit","depthScore":28,"depthScoreParts":{"impact":27.5,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}