The Kubernetes kube-apiserver mistakenly allows access to a cluster-scoped custom resource if the request is made as if the resource were namespaced. Authorizations for the resource accessed in this manner are enforced using roles and role bindings within the namespace, meaning that a user with access only to a resource in one namespace could create, view update or delete the cluster-scoped resource (according to their namespace role privileges). Kubernetes affected versions include versions prior to 1.13.9, versions prior to 1.14.5, versions prior to 1.15.2, and versions 1.7, 1.8, 1.9, 1.10, 1.11, 1.12.
The product performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check. This allows attackers to bypass intended access restrictions.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Kubernetes | Kubernetes | 1.7.0 (including) | 1.12.10 (including) |
Kubernetes | Kubernetes | 1.13.0 (including) | 1.13.9 (excluding) |
Kubernetes | Kubernetes | 1.14.0 (including) | 1.14.5 (excluding) |
Kubernetes | Kubernetes | 1.15.0 (including) | 1.15.2 (excluding) |
Kubernetes | Kubernetes | 1.12.11-beta0 (including) | 1.12.11-beta0 (including) |
Red Hat OpenShift Container Platform 3.10 | RedHat | atomic-openshift-0:3.10.170-1.git.0.8e592d6.el7 | * |
Red Hat OpenShift Container Platform 3.11 | RedHat | ansible-service-broker-1:1.3.23-2.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | ansible-service-broker-0:1.1.20-2.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | atomic-openshift-0:3.9.101-1.git.0.150f595.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | atomic-openshift-descheduler-0:3.9.13-2.git.267.bb59a3f.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | atomic-openshift-dockerregistry-0:3.9.101-1.git.1.13625cf.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | atomic-openshift-node-problem-detector-0:3.9.13-2.git.167.5d6b0d4.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | atomic-openshift-web-console-0:3.9.101-1.git.1.601c6d2.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | cockpit-0:195-2.rhaos.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | containernetworking-plugins-0:0.5.2-6.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | cri-o-0:1.9.16-3.git858756d.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | cri-tools-0:1.0.0-6.rhaos3.9.git8e6013a.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | golang-github-openshift-oauth-proxy-0:2.1-3.git885c9f40.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | golang-github-openshift-prometheus-alert-buffer-0:0-3.gitceca8c1.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | golang-github-prometheus-alertmanager-0:0.14.0-2.git30af4d0.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | golang-github-prometheus-node_exporter-0:3.9.101-1.git.1.8295224.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | golang-github-prometheus-prometheus-0:2.2.1-2.gitbc6058c.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | golang-github-prometheus-promu-0:0-5.git85ceabc.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | hawkular-openshift-agent-0:1.2.2-3.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | heapster-0:1.3.0-4.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | image-inspector-0:2.1.3-2.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | openshift-enterprise-image-registry-0:3.8.0-2.git.216.b6b90bb.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | openshift-eventrouter-0:0.1-3.git5bd9251.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | openshift-external-storage-0:0.0.1-9.git78d6339.el7 | * |
Red Hat OpenShift Container Platform 3.9 | RedHat | openvswitch-ovn-kubernetes-0:0.1.0-3.el7 | * |
Red Hat OpenShift Container Platform 4.1 | RedHat | openshift-0:4.1.10-201908060758.git.0.d81afa6.el7 | * |
Kubernetes | Ubuntu | trusty | * |
Assuming a user with a given identity, authorization is the process of determining whether that user can access a given resource, based on the user’s privileges and any permissions or other access-control specifications that apply to the resource. When access control checks are incorrectly applied, users are able to access data or perform actions that they should not be allowed to perform. This can lead to a wide range of problems, including information exposures, denial of service, and arbitrary code execution.