CVE-2024-24557

Moby classic builder cache poisoning

MEDIUM 6.9

At a glance

Source
NVD
EPSS
EPSS 0.26 % · percentile 18 ()
State
PUBLISHED
Published
Updated
Assigner
GitHub_M
NVD status
Modified

Description

Moby is an open-source project created by Docker to enable software containerization. The classic builder cache system is prone to cache poisoning if the image is built FROM scratch. Also, changes to some instructions (most important being HEALTHCHECK and ONBUILD) would not cause a cache miss. An attacker with the knowledge of the Dockerfile someone is using could poison their cache by making them pull a specially crafted image that would be considered as a valid cache candidate for some build steps. 23.0+ users are only affected if they explicitly opted out of Buildkit (DOCKER_BUILDKIT=0 environment variable) or are using the /build API endpoint. All users on versions older than 23.0 could be impacted. Image build API endpoint (/build) and ImageBuild function from github.com/docker/docker/client is also affected as it the uses classic builder by default. Patches are included in 24.0.9 and 25.0.2 releases.

Weaknesses (CWE)

  • CWE-346 — Origin Validation Error
  • CWE-345 — Insufficient Verification of Data Authenticity

References

Scores

VersionScoreVectorScored by
CVSS 3.1MEDIUM 6.9CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:C/C:L/I:H/A:LGitHub_M
CVSS 3.1MEDIUM 6.9CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:C/C:L/I:H/A:LNVD · security-advisories@github.com (Secondary)
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:HNVD · nvd@nist.gov (Primary)

Advisories

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
moby · mobyaffected >= 25.0.0, < 25.0.2 ; affected < 24.0.9

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD