Skip to main content

Gradle CVE-2021-29427

HIGH
Inclusion of Functionality from Untrusted Control Sphere (CWE-829)
2021-04-13 security-advisories@github.com
7.2
CVSS 3.1 · NVD
Share

Severity by source

NVD PRIMARY
7.2 HIGH
AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H

Primary rating from NVD · only source for this CVE.

CVSS VectorNVD

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

1
CVE Published
Apr 13, 2021 - 20:15 nvd
HIGH 7.2

DescriptionNVD

In Gradle from version 5.1 and before version 7.0 there is a vulnerability which can lead to information disclosure and/or dependency poisoning. Repository content filtering is a security control Gradle introduced to help users specify what repositories are used to resolve specific dependencies. This feature was introduced in the wake of the "A Confusing Dependency" blog post. In some cases, Gradle may ignore content filters and search all repositories for dependencies. This only occurs when repository content filtering is used from within a pluginManagement block in a settings file. This may change how dependencies are resolved for Gradle plugins and build scripts. For builds that are vulnerable, there are two risks: 1) Information disclosure: Gradle could make dependency requests to repositories outside your organization and leak internal package identifiers. 2) Dependency poisoning/Dependency confusion: Gradle could download a malicious binary from a repository outside your organization due to name squatting. For a full example and more details refer to the referenced GitHub Security Advisory. The problem has been patched and released with Gradle 7.0. Users relying on this feature should upgrade their build as soon as possible. As a workaround, users may use a company repository which has the right rules for fetching packages from public repositories, or use project level repository content filtering, inside buildscript.repositories. This option is available since Gradle 5.1 when the feature was introduced.

AnalysisAI

In Gradle from version 5.1 and before version 7.0 there is a vulnerability which can lead to information disclosure and/or dependency poisoning. Rated high severity (CVSS 7.2), this vulnerability is remotely exploitable, low attack complexity. Public exploit code available and no vendor patch available.

Technical ContextAI

This vulnerability is classified under CWE-829. In Gradle from version 5.1 and before version 7.0 there is a vulnerability which can lead to information disclosure and/or dependency poisoning. Repository content filtering is a security control Gradle introduced to help users specify what repositories are used to resolve specific dependencies. This feature was introduced in the wake of the "A Confusing Dependency" blog post. In some cases, Gradle may ignore content filters and search all repositories for dependencies. This only occurs when repository content filtering is used from within a pluginManagement block in a settings file. This may change how dependencies are resolved for Gradle plugins and build scripts. For builds that are vulnerable, there are two risks: 1) Information disclosure: Gradle could make dependency requests to repositories outside your organization and leak internal package identifiers. 2) Dependency poisoning/Dependency confusion: Gradle could download a malicious binary from a repository outside your organization due to name squatting. For a full example and more details refer to the referenced GitHub Security Advisory. The problem has been patched and released with Gradle 7.0. Users relying on this feature should upgrade their build as soon as possible. As a workaround, users may use a company repository which has the right rules for fetching packages from public repositories, or use project level repository content filtering, inside buildscript.repositories. This option is available since Gradle 5.1 when the feature was introduced. Affected products include: Gradle, Quarkus. Version information: version 5.1.

RemediationAI

No vendor patch is available at time of analysis. Monitor vendor advisories for updates. Apply vendor patches when available. Implement network segmentation and monitoring as interim mitigations.

More in Gradle

View all
CVE-2016-6199 CRITICAL POC
9.8 Feb 07

ObjectSocketWrapper.java in Gradle 2.12 allows remote attackers to execute arbitrary code via a crafted serialized objec

CVE-2019-15052 CRITICAL POC
9.8 Aug 14

The HTTP client in Gradle before 5.6 sends authentication credentials originally destined for the configured host. Rated

CVE-2021-29428 HIGH POC
7.8 Apr 13

In Gradle before version 7.0, on Unix-like systems, the system temporary directory can be created with open permissions

CVE-2021-32751 HIGH POC
7.5 Jul 20

Gradle is a build tool with a focus on build automation. Rated high severity (CVSS 7.5), this vulnerability is remotely

CVE-2023-49238 CRITICAL
9.8 Jan 09

In Gradle Enterprise before 2023.1, a remote attacker may be able to gain access to a new installation (in certain insta

CVE-2019-16370 MEDIUM POC
5.9 Sep 16

The PGP signing plugin in Gradle before 6.0 relies on the SHA-1 algorithm, which might allow an attacker to replace an a

CVE-2023-26053 CRITICAL
9.8 Mar 02

Gradle is a build tool with a focus on build automation and support for multi-language development. Rated critical sever

CVE-2022-27919 CRITICAL
9.8 Mar 25

Gradle Enterprise before 2022.1 allows remote code execution if the installation process did not specify an initial conf

CVE-2021-41589 CRITICAL
9.8 Oct 27

In Gradle Enterprise before 2021.3 (and Enterprise Build Cache Node before 10.0), there is potential cache poisoning and

CVE-2019-11403 CRITICAL
9.8 Apr 22

In Gradle Enterprise before 2018.5.2, Build Cache Nodes would reflect the configured password back when viewing the HTML

CVE-2019-11402 CRITICAL
9.8 Apr 22

In Gradle Enterprise before 2018.5.3, Build Cache Nodes did not store the credentials at rest in an encrypted format. Ra

CVE-2021-29429 MEDIUM POC
5.5 Apr 12

In Gradle before version 7.0, files created with open permissions in the system temporary directory can allow an attacke

Share

CVE-2021-29427 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy