Vulnerability Details : CVE-2024-41110
Potential exploit
Moby is an open-source project created by Docker for software containerization. A security vulnerability has been detected in certain versions of Docker Engine, which could allow an attacker to bypass authorization plugins (AuthZ) under specific circumstances. The base likelihood of this being exploited is low.
Using a specially-crafted API request, an Engine API client could make the daemon forward the request or response to an authorization plugin without the body. In certain circumstances, the authorization plugin may allow a request which it would have otherwise denied if the body had been forwarded to it.
A security issue was discovered In 2018, where an attacker could bypass AuthZ plugins using a specially crafted API request. This could lead to unauthorized actions, including privilege escalation. Although this issue was fixed in Docker Engine v18.09.1 in January 2019, the fix was not carried forward to later major versions, resulting in a regression. Anyone who depends on authorization plugins that introspect the request and/or response body to make access control decisions is potentially impacted.
Docker EE v19.03.x and all versions of Mirantis Container Runtime are not vulnerable.
docker-ce v27.1.1 containes patches to fix the vulnerability. Patches have also been merged into the master, 19.03, 20.0, 23.0, 24.0, 25.0, 26.0, and 26.1 release branches. If one is unable to upgrade immediately, avoid using AuthZ plugins and/or restrict access to the Docker API to trusted parties, following the principle of least privilege.
Vulnerability category: Gain privilege
Products affected by CVE-2024-41110
Please log in to view affected product information.
Exploit prediction scoring system (EPSS) score for CVE-2024-41110
2.19%
Probability of exploitation activity in the next 30 days
EPSS Score History
~ 84 %
Percentile, the proportion of vulnerabilities that are scored at or less
CVSS scores for CVE-2024-41110
Base Score | Base Severity | CVSS Vector | Exploitability Score | Impact Score | Score Source | First Seen |
---|---|---|---|---|---|---|
9.9
|
CRITICAL | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H |
3.1
|
6.0
|
GitHub, Inc. | 2024-07-24 |
CWE ids for CVE-2024-41110
-
The product performs a comparison that only examines a portion of a factor before determining whether there is a match, such as a substring, leading to resultant weaknesses.Assigned by: security-advisories@github.com (Secondary)
-
The product acts as an intermediary HTTP agent (such as a proxy or firewall) in the data flow between two entities such as a client and server, but it does not interpret malformed HTTP requests or responses in ways that are consistent with how the messages will be processed by those entities that are at the ultimate destination.Assigned by: security-advisories@github.com (Secondary)
-
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.Assigned by: security-advisories@github.com (Secondary)
References for CVE-2024-41110
-
https://github.com/moby/moby/commit/a79fabbfe84117696a19671f4aa88b82d0f64fc1
If url includes scheme, urlPath will drop hostname, which would not m… · moby/moby@a79fabb · GitHub
-
https://github.com/moby/moby/security/advisories/GHSA-v23v-6jw2-98fq
Authz zero length regression · Advisory · moby/moby · GitHub
-
https://github.com/moby/moby/commit/fc274cd2ff4cf3b48c91697fb327dd1fb95588fb
Authz plugin security fixes for 0-length content and path validation … · moby/moby@fc274cd · GitHub
-
https://github.com/moby/moby/commit/a31260625655cff9ae226b51757915e275e304b0
Merge commit from fork · moby/moby@a312606 · GitHub
-
https://github.com/moby/moby/commit/852759a7df454cbf88db4e954c919becd48faa9b
Merge commit from fork · moby/moby@852759a · GitHub
-
https://www.docker.com/blog/docker-security-advisory-docker-engine-authz-plugin
Docker Security Advisory: AuthZ Plugin Bypass Regression in Docker Engine | Docker
-
https://github.com/moby/moby/commit/42f40b1d6dd7562342f832b9cd2adf9e668eeb76
Merge commit from fork · moby/moby@42f40b1 · GitHub
-
https://github.com/moby/moby/commit/cc13f952511154a2866bddbb7dddebfe9e83b801
Merge commit from fork · moby/moby@cc13f95 · GitHub
-
https://github.com/moby/moby/commit/ae160b4edddb72ef4bd71f66b975a1a1cc434f00
Merge commit from fork · moby/moby@ae160b4 · GitHub
-
https://github.com/moby/moby/commit/411e817ddf710ff8e08fa193da80cb78af708191
Merge commit from fork · moby/moby@411e817 · GitHub
-
https://github.com/moby/moby/commit/65cc597cea28cdc25bea3b8a86384b4251872919
Merge commit from fork · moby/moby@65cc597 · GitHub
-
https://github.com/moby/moby/commit/ae2b3666c517c96cbc2adf1af5591a6b00d4ec0f
Merge commit from fork · moby/moby@ae2b366 · GitHub
Jump to