title: Kubernetes API Server JSON/YAML parsing vulnerable to resource exhaustion attack
description: Improper input validation in the Kubernetes API server in versions v1.0-1.12 and versions prior to v1.13.12, v1.14.8, v1.15.5, and v1.16.2 allows authorized users to send malicious YAML or JSON payloads, causing the API server to consume excessive CPU or memory, potentially crashing and becoming unavailable. Prior to v1.14.0, default RBAC policy authorized anonymous users to submit requests that could trigger this vulnerability. Clusters upgraded from a version prior to v1.14.0 keep the more permissive policy by default for backwards compatibility.
problem types: CWE-20: Improper Input Validation
affected:
{
product: Kubernetes
vendor: Kubernetes
versions:
status: affected, version: prior to 1.13.12
status: affected, version: prior to 1.14.8
status: affected, version: prior to 1.15.5
status: affected, version: prior to 1.16.2
status: affected, version: 1.1
status: affected, version: 1.2
status: affected, version: 1.3
status: affected, version: 1.4
status: affected, version: 1.5
status: affected, version: 1.6
status: affected, version: 1.7
status: affected, version: 1.8
status: affected, version: 1.9
status: affected, version: 1.10
status: affected, version: 1.11
status: affected, version: 1.12
}
metrics:
cvssV3_1: [
attackComplexity: LOW
attackVector: NETWORK
availabilityImpact: HIGH
baseScore: 7.5
baseSeverity: HIGH
confidentialityImpact: NONE
integrityImpact: NONE
privilegesRequired: NONE
scope: UNCHANGED
userInteraction: NONE
vectorString: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
version: 3.1
]
workarounds: Exposure to requests from unauthenticated users can be mitigated by removing all write permissions from unauthenticated users, following instructions at https://github.com/kubernetes/kubernetes/issues/83253