GitHub Advisoryadvisory · Go

GHSA-g42g-737j-qx6j Access Restriction Bypass in kube-apiserver

MEDIUM Published 2021-05-28 Modified 2022-03-22 Official page ↗
Aliases
CVE-2021-25735
Ecosystem
Go
Packages
k8s.io/kubernetes
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:H
Weaknesses
CWE-284, CWE-372, CWE-863
Reviewed
2022-03-22

Affected packages

• Go k8s.io/kubernetes: >= 1.20.0, < 1.20.6 → fixed in 1.20.6 • Go k8s.io/kubernetes: >= 1.19.0, < 1.19.10 → fixed in 1.19.10 • Go k8s.io/kubernetes: < 1.18.18 → fixed in 1.18.18

Description

A vulnerability in Kubernetes `kube-apiserver` could allow node updates to bypass a _Validating Admission Webhook_ and allow unauthorized node updates. The information that is provided to the admission controller could contain old configurations that overwrite values used for validation. Since the overwriting takes place before the validation, this could lead the admission controller to accept requests that should be blocked. The vulnerability can be exploited when an update action on node resources is performed and an admission controller is in place and configured to validate the action. Users are only affected by this vulnerability if they are running a _Validating Admission Webhook_ for Nodes that denies admission based partially on the old state of the Node object. It only impacts validating admission plugins that rely on old values in certain fields and does not impact calls from kubelets that go through the built-in NodeRestriction admission plugin.

Related

Alias · CVE (1)

  • CVE-2021-25735 A security issue was discovered in kube-apiserver that could allow node updates to bypass a Validating Admission Webhook. vulnerability

Weakness · CWE (3)

  • CWE-284 Improper Access Control weakness
  • CWE-372 Incomplete Internal State Distinction weakness
  • CWE-863 Incorrect Authorization weakness

References