CVE-2020-8562 Bypass of Kubernetes API Server proxy TOCTOU
Attackers can bypass Kubernetes API server proxy restrictions to access private control plane networks via DNS race conditions.
- Exploited in the wild
- Not known
- Login needed
- An administrator
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2020-8562?
CVE-2020-8562 is a low-severity server-side request forgery vulnerability in Kubernetes Kubernetes, published on 1 Feb 2022. An attacker needs administrator access to exploit it, with no action from the victim.
Official description
As mitigations to a report from 2019 and CVE-2020-8555, Kubernetes attempts to prevent proxied connections from accessing link-local or localhost networks when making user-driven connections to Services, Pods, Nodes, or StorageClass service providers. As part of this mitigation Kubernetes does a DNS name resolution check and validates that response IPs are not in the link-local (169.254.0.0/16) or localhost (127.0.0.0/8) range. Kubernetes then performs a second DNS resolution without validation for the actual connection. If a non-standard DNS server returns different non-cached responses, a user may be able to bypass the proxy IP restriction and access private networks on the control plane.
Weakness: CWE-367
Which versions are affected by CVE-2020-8562?
8 open source packages ship an affected version, including k8s.io/kubernetes. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
k8s.io/kubernetes Go | All versions to 1.18.19 | None |
k8s.io/kubernetes Go | All versions to 1.18.19 | None |
k8s.io/kubernetes Go | From 1.19.0 to 1.19.11 | None |
k8s.io/kubernetes Go | From 1.19.0 to 1.19.11 | None |
k8s.io/kubernetes Go | From 1.20.0 to 1.20.7 | None |
k8s.io/kubernetes Go | From 1.20.0 to 1.20.7 | None |
2 more packages
k8s.io/kubernetes Go | From 1.21.0 to 1.21.1 | None |
k8s.io/kubernetes Go | From 1.21.0 to 1.21.1 | None |
Products include Kubernetes Kubernetes.
How do I fix CVE-2020-8562?
Apply the vendor's patch.
Upgrade, and send outbound requests through an allow-list that blocks internal addresses. More about Server-side request forgery.
Is CVE-2020-8562 being exploited?
There is no known exploitation of CVE-2020-8562 in the wild and no public exploit code.
Other vulnerabilities in Kubernetes Kubernetes
- CVE-2018-1002105 Privilege Escalation in Kubernetes
- CVE-2017-1000056 Kubernetes Privilege Escalation
- CVE-2016-1906 Authorization bypass in Openshift
- CVE-2023-3676 Kubernetes - Windows nodes - Insufficient input sanitization leads to privilege escalation
- CVE-2023-3955 Kubernetes - Windows nodes - Insufficient input sanitization leads to privilege escalation
Sources
Also known as AZL-89318, DEBIAN-CVE-2020-8562, GHSA-qh36-44jv-c8xj, MINI-262v-xw22-hmc4, MINI-265j-hhj6-f9f2, MINI-3367-2p29-x63f and 49 more.