CVE-2026-22865: Gradle's failure to disable repositories failing to answer can expose builds to malicious artifacts
Gradle is a build automation tool, and its native-platform tool provides Java bindings for native APIs. When resolving dependencies in versions before 9.3.0, some exceptions were not treated as fatal errors and would not cause a repository to be disabled. If a build encountered one of these exceptions, Gradle would continue to the next repository in the list and potentially resolve dependencies from a different repository. An exception like NoHttpResponseException can indicate transient errors. If the errors persist after a maximum number of retries, Gradle would continue to the next repository. This behavior could allow an attacker to disrupt the service of a repository and leverage another repository to serve malicious artifacts. This attack requires the attacker to have control over a repository after the disrupted repository. Gradle has introduced a change in behavior in Gradle 9.3.0 to stop searching other repositories when encountering these errors.
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-22865?
CVE-2026-22865 is classified as a high severity vulnerability due to the potential exposure of builds to malicious artifacts.
How do I fix CVE-2026-22865?
To fix CVE-2026-22865, upgrade Gradle native-platform to version 9.3.0 or later.
What software is affected by CVE-2026-22865?
CVE-2026-22865 affects Gradle's native-platform versions prior to 9.3.0.
What type of attack can CVE-2026-22865 facilitate?
CVE-2026-22865 can facilitate supply chain attacks by allowing malicious artifacts to be included in builds.
How does CVE-2026-22865 impact build automation processes?
CVE-2026-22865 can compromise the integrity of build automation processes by introducing unverified dependencies.