Kubernetes DoS VulnerabilityGHSA-q4rr-64r9-fwgf
MEDIUMGHSA-q4rr-64r9-fwgf is a medium-severity (CVSS 6.5) CWE-770 vulnerability in k8s.io/kubernetes. EPSS puts its 30-day exploitation probability at 16.9% (97th percentile). A fix is available for k8s.io/kubernetes — see the affected versions and patch details below.
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
How urgent is this, really
Where this sits among everything scored
Real-World Exposure
k8s.io/kubernetes🐹k8s.io/kubernetes🐹k8s.io/kubernetes🐹k8s.io/kubernetesReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects Go packages — download data is not available via public APIs for these ecosystems.
Description
In all Kubernetes versions prior to v1.11.8, v1.12.6, and v1.13.4, users that are authorized to make patch requests to the Kubernetes API Server can send a specially crafted patch of type "json-patch" (e.g. kubectl patch --type json or "Content-Type: application/json-patch+json") that consumes excessive resources while processing, causing a Denial of Service on the API Server.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🐹Go | k8s.io/kubernetes | ≥ 1.0.0 | No fix |
| 🐹Go | k8s.io/kubernetes | ≥ 1.11.0&&< 1.11.8 | 1.11.8go get k8s.io/kubernetes@v1.11.8 |
| 🐹Go | k8s.io/kubernetes | ≥ 1.12.0&&< 1.12.6 | 1.12.6go get k8s.io/kubernetes@v1.12.6 |
| 🐹Go | k8s.io/kubernetes | ≥ 1.13.0&&< 1.13.4 | 1.13.4go get k8s.io/kubernetes@v1.13.4 |
Affected Products
kuberneteskubernetesopenshift container platformredhatDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for k8s.io/kubernetes, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
A fix is available for GHSA-q4rr-64r9-fwgf; check the affected-versions list above or the advisory for the patched release of k8s.io/kubernetes, then make sure no transitive dependency still pins the vulnerable range.
Workarounds
Cap what an attacker can consume: apply request size, rate and timeout limits in front of the affected component, and run it with memory and CPU limits so exhaustion degrades one worker rather than the whole service.
Fixing This On Your OS
If you run this on a Linux distribution, patch through your package manager against the distro's own security advisory below — it tracks the exact backported fix for your release, which can ship on a different timeline (and sometimes a different severity) than the upstream project.
This issue affects the Kubernetes API Server, shipped in OpenShift Container Platform versions 3.4 through 3.11 as part of the atomic-openshift package. Red Hat Product Security has rated this issue as having a security impact of Moderate. A future update may address this issue. For additional information, refer to…
Remove ‘patch’ permissions from untrusted users.Source: Red Hat security advisory for GHSA-q4rr-64r9-fwgf (CC BY 4.0)
| Product | Fixed in | Advisory |
|---|---|---|
| Red Hat OpenShift Container Platform 3.10 | atomic-openshift-0:3.10.181-1.git.0.3ab4b3d.el7 | RHSA-2019:3239 |
| Red Hat OpenShift Container Platform 3.11 | atomic-openshift-0:3.11.129-1.git.0.bd4f2d5.el7 | RHSA-2019:1851 |
Frequently Asked Questions
Is GHSA-q4rr-64r9-fwgf in your dependencies?
Find it across Go, including transitive dependencies.