title: Node address isn't always verified when proxying
description: Users may have access to secure endpoints in the control plane network. Kubernetes clusters are only affected if an untrusted user can modify Node objects and send proxy requests to them. Kubernetes supports node proxying, which allows clients of kube-apiserver to access endpoints of a Kubelet to establish connections to Pods, retrieve container logs, and more. While Kubernetes already validates the proxying address for Nodes, a bug in kube-apiserver made it possible to bypass this validation. Bypassing this validation could allow authenticated requests destined for Nodes to to the API server's private network.
problem types: CWE-20 Improper Input Validation
affected:
{
vendor: Kubernetes
product: Kubernetes
versions:
version: unspecified, lessThanOrEqual: v1.25.3, status: affected, versionType: custom
version: unspecified, lessThanOrEqual: v1.24.7, status: affected, versionType: custom
version: unspecified, lessThanOrEqual: v1.23.13, status: affected, versionType: custom
version: unspecified, lessThanOrEqual: v1.22.15, status: affected, versionType: custom
}
metrics:
cvssV3_1: [
version: 3.1
vectorString: CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H
attackVector: NETWORK
attackComplexity: HIGH
privilegesRequired: HIGH
userInteraction: NONE
scope: UNCHANGED
confidentialityImpact: HIGH
integrityImpact: HIGH
availabilityImpact: HIGH
baseScore: 6.6
baseSeverity: MEDIUM
]
workarounds: Configuring an egress proxy for egress to the cluster network can mitigate this vulnerability