CVE details
CVE-2026-22865
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 ports (5)
| Port | Package | Version | Status | Maintainer |
|---|---|---|---|---|
| devel/gradle5 | gradle5 | 5.0_3 | unaddressed | yuri@FreeBSD.org |
| devel/gradle6 | gradle6 | 6.9.4_2 | unaddressed | ports@FreeBSD.org |
| devel/gradle62 | gradle62 | 6.2.2_3 | unaddressed | yuri@FreeBSD.org |
| devel/gradle761 | gradle761 | 7.6.1_2 | unaddressed | ports@FreeBSD.org |
| devel/gradle8 | gradle8 | 8.8_2 | unaddressed | acm@FreeBSD.org |
Template for a VuXML entry
Range taken from the CVE record, check it before committing. make newentry in security/vuxml creates the vid.
<vuln vid="FIXME (make newentry)">
<topic>FIXME -- FIXME</topic>
<affects>
<package>
<name>gradle5</name>
<range><lt>8.14.4</lt></range>
</package>
<package>
<name>gradle6</name>
<range><lt>8.14.4</lt></range>
</package>
<package>
<name>gradle62</name>
<range><lt>8.14.4</lt></range>
</package>
<package>
<name>gradle761</name>
<range><lt>8.14.4</lt></range>
</package>
<package>
<name>gradle8</name>
<range><lt>8.14.4</lt></range>
</package>
</affects>
<description>
<body xmlns="http://www.w3.org/1999/xhtml">
<p>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.</p>
</body>
</description>
<references>
<cvename>CVE-2026-22865</cvename>
<url>https://nvd.nist.gov/vuln/detail/CVE-2026-22865</url>
</references>
<dates>
<discovery>2026-01-16</discovery>
<entry>2026-10-25</entry>
</dates>
</vuln>