Description
Kyverno is a policy engine designed for cloud native platform engineering teams. Prior to versions 1.18.0-rc1, 1.17.2-rc1, and 1.16.4, Kyverno's apiCall feature in ClusterPolicy automatically attaches the admission controller's ServiceAccount token to outgoing HTTP requests. The service URL has no validation — it can point anywhere, including attacker-controlled servers. Since the admission controller SA has permissions to patch webhook configurations, a stolen token leads to full cluster compromise. Versions 1.18.0-rc1, 1.17.2-rc1, and 1.16.4 patch the issue.
Problem types
CWE-200: Exposure of Sensitive Information to an Unauthorized Actor
CWE-918: Server-Side Request Forgery (SSRF)
Product status
>= 1.17.0-rc1, < 1.17.2-rc1
References
github.com/...yverno/security/advisories/GHSA-f9g8-6ppc-pqq4
github.com/...yverno/security/advisories/GHSA-f9g8-6ppc-pqq4
github.com/...ommit/bc4f91c4801b1eaa2edc0a14e2f1b0af8cf0c1f5
github.com/...ommit/c2eab00033e635bda4e4efb58c1b472b41728bb6
github.com/...ommit/f70e8ac1e7acd2e3844f9553e4a884f07f953de0