{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-22865","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","state":"PUBLISHED","assignerShortName":"GitHub_M","dateReserved":"2026-01-12T16:20:16.746Z","datePublished":"2026-01-16T22:46:19.741Z","dateUpdated":"2026-01-20T14:47:41.205Z"},"containers":{"cna":{"title":"Gradle's failure to disable repositories failing to answer can expose builds to malicious artifacts","problemTypes":[{"descriptions":[{"cweId":"CWE-494","lang":"en","description":"CWE-494: Download of Code Without Integrity Check","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-829","lang":"en","description":"CWE-829: Inclusion of Functionality from Untrusted Control Sphere","type":"CWE"}]}],"metrics":[{"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"HIGH","attackRequirements":"PRESENT","privilegesRequired":"NONE","userInteraction":"PASSIVE","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"HIGH","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"NONE","subIntegrityImpact":"HIGH","subAvailabilityImpact":"NONE","baseScore":8.6,"baseSeverity":"HIGH","vectorString":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:H/SA:N","version":"4.0"}}],"references":[{"name":"https://github.com/gradle/gradle/security/advisories/GHSA-mqwm-5m85-gmcv","tags":["x_refsource_CONFIRM"],"url":"https://github.com/gradle/gradle/security/advisories/GHSA-mqwm-5m85-gmcv"}],"affected":[{"vendor":"gradle","product":"gradle","versions":[{"version":"< 9.3.0","status":"affected"}]}],"providerMetadata":{"orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","shortName":"GitHub_M","dateUpdated":"2026-01-16T22:46:19.741Z"},"descriptions":[{"lang":"en","value":"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."}],"source":{"advisory":"GHSA-mqwm-5m85-gmcv","discovery":"UNKNOWN"}},"adp":[{"metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-01-20T14:47:11.391813Z","id":"CVE-2026-22865","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2026-01-20T14:47:41.205Z"}}]}}