# |
CVE ID
|
CWE ID
|
# of Exploits
|
Vulnerability Type(s)
|
Publish Date
|
Update Date
|
Score
|
Gained Access Level
|
Access
|
Complexity
|
Authentication
|
Conf.
|
Integ.
|
Avail.
|
1 |
CVE-2021-21285 |
754 |
|
|
2021-02-02 |
2022-10-25 |
4.3 |
None |
Remote |
Medium |
Not required |
None |
None |
Partial |
In Docker before versions 9.03.15, 20.10.3 there is a vulnerability in which pulling an intentionally malformed Docker image manifest crashes the dockerd daemon. Versions 20.10.3 and 19.03.15 contain patches that prevent the daemon from crashing. |
2 |
CVE-2021-21284 |
22 |
|
Dir. Trav. |
2021-02-02 |
2022-04-29 |
2.7 |
None |
Local Network |
Low |
??? |
None |
Partial |
None |
In Docker before versions 9.03.15, 20.10.3 there is a vulnerability involving the --userns-remap option in which access to remapped root allows privilege escalation to real root. When using "--userns-remap", if the root user in the remapped namespace has access to the host filesystem they can modify files under "/var/lib/docker/<remapping>" that cause writing files with extended privileges. Versions 20.10.3 and 19.03.15 contain patches that prevent privilege escalation from remapped user. |
3 |
CVE-2020-27534 |
22 |
|
Dir. Trav. |
2020-12-30 |
2021-01-05 |
5.0 |
None |
Remote |
Low |
Not required |
Partial |
None |
None |
util/binfmt_misc/check.go in Builder in Docker Engine before 19.03.9 calls os.OpenFile with a potentially unsafe qemu-check temporary pathname, constructed with an empty first argument in an ioutil.TempDir call. |
4 |
CVE-2020-14300 |
273 |
|
Exec Code |
2020-07-13 |
2023-02-12 |
4.6 |
None |
Local |
Low |
Not required |
Partial |
Partial |
Partial |
The docker packages version docker-1.13.1-108.git4ef4b30.el7 as released for Red Hat Enterprise Linux 7 Extras via RHBA-2020:0053 (https://access.redhat.com/errata/RHBA-2020:0053) included an incorrect version of runc that was missing multiple bug and security fixes. One of the fixes regressed in that update was the fix for CVE-2016-9962, that was previously corrected in the docker packages in Red Hat Enterprise Linux 7 Extras via RHSA-2017:0116 (https://access.redhat.com/errata/RHSA-2017:0116). The CVE-2020-14300 was assigned to this security regression and it is specific to the docker packages produced by Red Hat. The original issue - CVE-2016-9962 - could possibly allow a process inside container to compromise a process entering container namespace and execute arbitrary code outside of the container. This could lead to compromise of the container host or other containers running on the same container host. This issue only affects a single version of Docker, 1.13.1-108.git4ef4b30, shipped in Red Hat Enterprise Linux 7. Both earlier and later versions are not affected. |
5 |
CVE-2020-14298 |
273 |
|
|
2020-07-13 |
2023-02-12 |
4.6 |
None |
Local |
Low |
Not required |
Partial |
Partial |
Partial |
The version of docker as released for Red Hat Enterprise Linux 7 Extras via RHBA-2020:0053 advisory included an incorrect version of runc missing the fix for CVE-2019-5736, which was previously fixed via RHSA-2019:0304. This issue could allow a malicious or compromised container to compromise the container host and other containers running on the same host. This issue only affects docker version 1.13.1-108.git4ef4b30.el7, shipped in Red Hat Enterprise Linux 7 Extras. Both earlier and later versions are not affected. |
6 |
CVE-2019-16884 |
863 |
|
Bypass |
2019-09-25 |
2023-03-27 |
5.0 |
None |
Remote |
Low |
Not required |
None |
Partial |
None |
runc through 1.0.0-rc8, as used in Docker through 19.03.2-ce and other products, allows AppArmor restriction bypass because libcontainer/rootfs_linux.go incorrectly checks mount targets, and thus a malicious Docker image can mount over a /proc directory. |
7 |
CVE-2019-14271 |
665 |
|
|
2019-07-29 |
2022-04-18 |
7.5 |
None |
Remote |
Low |
Not required |
Partial |
Partial |
Partial |
In Docker 19.03.x before 19.03.1 linked against the GNU C Library (aka glibc), code injection can occur when the nsswitch facility dynamically loads a library inside a chroot that contains the contents of the container. |
8 |
CVE-2019-13509 |
532 |
|
|
2019-07-18 |
2019-08-27 |
5.0 |
None |
Remote |
Low |
Not required |
Partial |
None |
None |
In Docker CE and EE before 18.09.8 (as well as Docker EE before 17.06.2-ee-23 and 18.x before 18.03.1-ee-10), Docker Engine in debug mode may sometimes add secrets to the debug log. This applies to a scenario where docker stack deploy is run to redeploy a stack that includes (non external) secrets. It potentially applies to other API users of the stack API if they resend the secret. |
9 |
CVE-2019-13139 |
78 |
|
Exec Code |
2019-08-22 |
2020-08-24 |
4.6 |
None |
Local |
Low |
Not required |
Partial |
Partial |
Partial |
In Docker before 18.09.4, an attacker who is capable of supplying or manipulating the build path for the "docker build" command would be able to gain command execution. An issue exists in the way "docker build" processes remote git URLs, and results in command injection into the underlying "git clone" command, leading to code execution in the context of the user executing the "docker build" command. This occurs because git ref can be misinterpreted as a flag. |
10 |
CVE-2019-5736 |
78 |
|
Exec Code |
2019-02-11 |
2021-12-16 |
9.3 |
None |
Remote |
Medium |
Not required |
Complete |
Complete |
Complete |
runc through 1.0-rc6, as used in Docker before 18.09.2 and other products, allows attackers to overwrite the host runc binary (and consequently obtain host root access) by leveraging the ability to execute a command as root within one of these types of containers: (1) a new container with an attacker-controlled image, or (2) an existing container, to which the attacker previously had write access, that can be attached with docker exec. This occurs because of file-descriptor mishandling, related to /proc/self/exe. |
11 |
CVE-2018-15664 |
362 |
|
Dir. Trav. |
2019-05-23 |
2019-06-25 |
6.2 |
None |
Local |
High |
Not required |
Complete |
Complete |
Complete |
In Docker through 18.06.1-ce-rc2, the API endpoints behind the 'docker cp' command are vulnerable to a symlink-exchange attack with Directory Traversal, giving attackers arbitrary read-write access to the host filesystem with root privileges, because daemon/archive.go does not do archive operations on a frozen filesystem (or from within a chroot). |
12 |
CVE-2018-15514 |
502 |
|
|
2018-09-01 |
2018-11-09 |
6.5 |
None |
Remote |
Low |
??? |
Partial |
Partial |
Partial |
HandleRequestAsync in Docker for Windows before 18.06.0-ce-rc3-win68 (edge) and before 18.06.0-ce-win72 (stable) deserialized requests over the \\.\pipe\dockerBackend named pipe without verifying the validity of the deserialized .NET objects. This would allow a malicious user in the "docker-users" group (who may not otherwise have administrator access) to escalate to administrator privileges. |
13 |
CVE-2018-10892 |
250 |
|
|
2018-07-06 |
2023-02-12 |
5.0 |
None |
Remote |
Low |
Not required |
None |
Partial |
None |
The default OCI linux spec in oci/defaults{_linux}.go in Docker/Moby from 1.11 to current does not block /proc/acpi pathnames. The flaw allows an attacker to modify host's hardware like enabling/disabling bluetooth or turning up/down keyboard brightness. |
14 |
CVE-2017-14992 |
20 |
|
DoS |
2017-11-01 |
2017-11-22 |
4.3 |
None |
Remote |
Medium |
Not required |
None |
None |
Partial |
Lack of content verification in Docker-CE (Also known as Moby) versions 1.12.6-0, 1.10.3, 17.03.0, 17.03.1, 17.03.2, 17.06.0, 17.06.1, 17.06.2, 17.09.0, and earlier allows a remote attacker to cause a Denial of Service via a crafted image layer payload, aka gzip bombing. |
15 |
CVE-2016-9962 |
362 |
|
|
2017-01-31 |
2018-10-09 |
4.4 |
None |
Local |
Medium |
Not required |
Partial |
Partial |
Partial |
RunC allowed additional container processes via 'runc exec' to be ptraced by the pid 1 of the container. This allows the main processes of the container, if running as root, to gain access to file-descriptors of these new processes during the initialization and can lead to container escapes or modification of runC state before the process is fully placed inside the container. |
16 |
CVE-2016-8867 |
264 |
|
Bypass |
2016-10-28 |
2017-07-28 |
5.0 |
None |
Remote |
Low |
Not required |
Partial |
None |
None |
Docker Engine 1.12.2 enabled ambient capabilities with misconfigured capability policies. This allowed malicious images to bypass user permissions to access files within the container filesystem or mounted volumes. |
17 |
CVE-2016-6595 |
399 |
|
DoS |
2017-01-04 |
2017-08-16 |
4.0 |
None |
Remote |
Low |
??? |
None |
None |
Partial |
** DISPUTED ** The SwarmKit toolkit 1.12.0 for Docker allows remote authenticated users to cause a denial of service (prevention of cluster joins) via a long sequence of join and quit actions. NOTE: the vendor disputes this issue, stating that this sequence is not "removing the state that is left by old nodes. At some point the manager obviously stops being able to accept new nodes, since it runs out of memory. Given that both for Docker swarm and for Docker Swarmkit nodes are *required* to provide a secret token (it's actually the only mode of operation), this means that no adversary can simply join nodes and exhaust manager resources. We can't do anything about a manager running out of memory and not being able to add new legitimate nodes to the system. This is merely a resource provisioning issue, and definitely not a CVE worthy vulnerability." |
18 |
CVE-2016-3697 |
264 |
|
+Priv |
2016-06-01 |
2021-01-05 |
2.1 |
None |
Local |
Low |
Not required |
Partial |
None |
None |
libcontainer/user/user.go in runC before 0.1.0, as used in Docker before 1.11.2, improperly treats a numeric UID as a potential username, which allows local users to gain privileges via a numeric username in the password file in a container. |
19 |
CVE-2015-3631 |
264 |
|
|
2015-05-18 |
2018-08-13 |
3.6 |
None |
Local |
Low |
Not required |
None |
Partial |
Partial |
Docker Engine before 1.6.1 allows local users to set arbitrary Linux Security Modules (LSM) and docker_t policies via an image that allows volumes to override files in /proc. |
20 |
CVE-2015-3630 |
264 |
|
+Info |
2015-05-18 |
2018-08-13 |
7.2 |
None |
Local |
Low |
Not required |
Complete |
Complete |
Complete |
Docker Engine before 1.6.1 uses weak permissions for (1) /proc/asound, (2) /proc/timer_stats, (3) /proc/latency_stats, and (4) /proc/fs, which allows local users to modify the host, obtain sensitive information, and perform protocol downgrade attacks via a crafted image. |
21 |
CVE-2015-3627 |
59 |
|
+Priv |
2015-05-18 |
2018-08-13 |
7.2 |
None |
Local |
Low |
Not required |
Complete |
Complete |
Complete |
Libcontainer and Docker Engine before 1.6.1 opens the file-descriptor passed to the pid-1 process before performing the chroot, which allows local users to gain privileges via a symlink attack in an image. |
22 |
CVE-2014-9358 |
20 |
|
|
2014-12-16 |
2018-10-09 |
6.4 |
None |
Remote |
Low |
Not required |
Partial |
Partial |
None |
Docker before 1.3.3 does not properly validate image IDs, which allows remote attackers to conduct path traversal attacks and spoof repositories via a crafted image in a (1) "docker load" operation or (2) "registry communications." |
23 |
CVE-2014-9357 |
264 |
|
Exec Code |
2014-12-16 |
2018-10-09 |
10.0 |
None |
Remote |
Low |
Not required |
Complete |
Complete |
Complete |
Docker 1.3.2 allows remote attackers to execute arbitrary code with root privileges via a crafted (1) image or (2) build in a Dockerfile in an LZMA (.xz) archive, related to the chroot for archive extraction. |
24 |
CVE-2014-9356 |
22 |
|
Dir. Trav. Bypass |
2019-12-02 |
2019-12-11 |
8.5 |
None |
Remote |
Low |
Not required |
None |
Complete |
Partial |
Path traversal vulnerability in Docker before 1.3.3 allows remote attackers to write to arbitrary files and bypass a container protection mechanism via a full pathname in a symlink in an (1) image or (2) build in a Dockerfile. |
25 |
CVE-2014-8179 |
20 |
|
Bypass |
2019-12-17 |
2023-02-13 |
5.0 |
None |
Remote |
Low |
Not required |
None |
Partial |
None |
Docker Engine before 1.8.3 and CS Docker Engine before 1.6.2-CS7 does not properly validate and extract the manifest object from its JSON representation during a pull, which allows attackers to inject new attributes in a JSON object and bypass pull-by-digest validation. |
26 |
CVE-2014-8178 |
20 |
|
|
2019-12-17 |
2023-02-13 |
1.9 |
None |
Local |
Medium |
Not required |
None |
Partial |
None |
Docker Engine before 1.8.3 and CS Docker Engine before 1.6.2-CS7 do not use a globally unique identifier to store image layers, which makes it easier for attackers to poison the image cache via a crafted image in pull or push commands. |
27 |
CVE-2014-6408 |
264 |
|
Bypass |
2014-12-12 |
2014-12-15 |
5.0 |
None |
Remote |
Low |
Not required |
None |
Partial |
None |
Docker 1.3.0 through 1.3.1 allows remote attackers to modify the default run profile of image containers and possibly bypass the container by applying unspecified security options to an image. |
28 |
CVE-2014-6407 |
59 |
|
Exec Code |
2014-12-12 |
2014-12-15 |
7.5 |
None |
Remote |
Low |
Not required |
Partial |
Partial |
Partial |
Docker before 1.3.2 allows remote attackers to write to arbitrary files and execute arbitrary code via a (1) symlink or (2) hard link attack in an image archive in a (a) pull or (b) load operation. |
29 |
CVE-2014-5282 |
20 |
|
|
2018-02-06 |
2019-04-29 |
5.5 |
None |
Remote |
Low |
??? |
Partial |
Partial |
None |
Docker before 1.3 does not properly validate image IDs, which allows remote attackers to redirect to another image through the loading of untrusted images via 'docker load'. |
30 |
CVE-2014-5278 |
|
|
|
2020-02-07 |
2020-02-11 |
4.3 |
None |
Remote |
Medium |
Not required |
None |
Partial |
None |
A vulnerability exists in Docker before 1.2 via container names, which may collide with and override container IDs. |
31 |
CVE-2014-5277 |
17 |
|
|
2014-11-17 |
2018-08-13 |
5.0 |
None |
Remote |
Low |
Not required |
Partial |
None |
None |
Docker before 1.3.1 and docker-py before 0.5.3 fall back to HTTP when the HTTPS connection to the registry fails, which allows man-in-the-middle attackers to conduct downgrade attacks and obtain authentication and image data by leveraging a network position between the client and the registry to block HTTPS traffic. |
32 |
CVE-2014-3499 |
264 |
|
+Priv |
2014-07-11 |
2023-02-13 |
7.2 |
None |
Local |
Low |
Not required |
Complete |
Complete |
Complete |
Docker 1.0.0 uses world-readable and world-writable permissions on the management socket, which allows local users to gain privileges via unspecified vectors. |
33 |
CVE-2014-0048 |
20 |
|
|
2020-01-02 |
2023-03-01 |
7.5 |
None |
Remote |
Low |
Not required |
Partial |
Partial |
Partial |
An issue was found in Docker before 1.6.0. Some programs and scripts in Docker are downloaded via HTTP and then executed or used in unsafe ways. |
34 |
CVE-2014-0047 |
|
|
|
2017-10-06 |
2017-10-13 |
4.6 |
None |
Local |
Low |
Not required |
Partial |
Partial |
Partial |
Docker before 1.5 allows local users to have unspecified impact via vectors involving unsafe /tmp usage. |