Attacker Value
High
(1 user assessed)
Exploitability
Very Low
(1 user assessed)
User Interaction
Required
Privileges Required
None
Attack Vector
Local
0

kubectl cp path traversal

Disclosure Date: April 01, 2019
Add MITRE ATT&CK tactics and techniques that apply to this CVE.

Description

The kubectl cp command allows copying files between containers and the user machine. To copy files from a container, Kubernetes creates a tar inside the container, copies it over the network, and kubectl unpacks it on the user’s machine. If the tar binary in the container is malicious, it could run any code and output unexpected, malicious results. An attacker could use this to write files to any path on the user’s machine when kubectl cp is called, limited only by the system permissions of the local user. The untar function can both create and follow symbolic links. The issue is resolved in kubectl v1.11.9, v1.12.7, v1.13.5, and v1.14.0.

Add Assessment

1
Ratings
Technical Analysis

There are a lot of moving parts to be able to exploit this. But if successful will give an attacker a container escape on to the kube host.
An attacker must already have shell access to a container and there must be a process running from the host that uses the kubectl cp command.
This is occasionally seen used to copy files like log files out of a container to the host for backup or additional processing.

If a user can replace the tar binary in the container it is possible to perform actions like editing the .bashrc file on the host. This could be used to create new SSH accounts, or establish a reverse shell as that user. Typically with root permissions.

General Information

Vendors

  • Kubernetes

Products

  • Kubernetes
Technical Analysis