CVE-2021-29429
Information disclosure through temporary directory permissions
In Gradle before version 7.0, files created with open permissions in the system temporary directory can allow an attacker to access information downloaded by Gradle. Some builds could be vulnerable to a local information disclosure. Remote files accessed through TextResourceFactory are downloaded into the system temporary directory first. Sensitive information contained in these files can be exposed to other local users on the same system. If you do not use the TextResourceFactory API, you are not vulnerable. As of Gradle 7.0, uses of the system temporary directory have been moved to the Gradle User Home directory. By default, this directory is restricted to the user running the build. As a workaround, set a more restrictive umask that removes read access to other users. When files are created in the system temporary directory, they will not be accessible to other users. If you are unable to change your system's umask, you can move the Java temporary directory by setting the System Property java.io.tmpdir. The new path needs to limit permissions to the build user only.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- Low
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
4.0
Information disclosure through temporary directory permissions
In Gradle before version 7.0, files created with open permissions in the system temporary directory can allow an attacker to access information downloaded by Gradle. Some builds could be vulnerable to a local information disclosure. Remote files accessed through TextResourceFactory are downloaded into the system temporary directory first. Sensitive information contained in these files can be exposed to other local users on the same system. If you do not use the TextResourceFactory API, you are not vulnerable. As of Gradle 7.0, uses of the system temporary directory have been moved to the Gradle User Home directory. By default, this directory is restricted to the user running the build. As a workaround, set a more restrictive umask that removes read access to other users. When files are created in the system temporary directory, they will not be accessible to other users. If you are unable to change your system's umask, you can move the Java temporary directory by setting the System Property java.io.tmpdir. The new path needs to limit permissions to the build user only.
- Record
CVE-2021-29429- CVSS 3.1
- 4.0 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Weakness
- CWE-377
- Updated
- 2026-11-02
EUVDEUVD-2021-16060
4.0
In Gradle before version 7.0, files created with open permissions in the system temporary directory can allow an attacker to access information downloaded by Gradle. Some builds could be vulnerable to a local information disclosure. Remote files accessed through TextResourceFactory are downloaded into the system temporary directory first. Sensitive information contained in these files can be exposed to other local users on the same system. If you do not use the TextResourceFactory API, you are not vulnerable. As of Gradle 7.0, uses of the system temporary directory have been moved to the Gradle User Home directory. By default, this directory is restricted to the user running the build. As a workaround, set a more restrictive umask that removes read access to other users. When files are created in the system temporary directory, they will not be accessible to other users. If you are unable to change your system's umask, you can move the Java temporary directory by setting the System Property java.io.tmpdir. The new path needs to limit permissions to the build user only.
- Record
EUVD-2021-16060- CVSS 3.1
- 4.0 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Updated
- 2026-11-02
NVD
4.0
In Gradle before version 7.0, files created with open permissions in the system temporary directory can allow an attacker to access information downloaded by Gradle. Some builds could be vulnerable to a local information disclosure. Remote files accessed through TextResourceFactory are downloaded into the system temporary directory first. Sensitive information contained in these files can be exposed to other local users on the same system. If you do not use the TextResourceFactory API, you are not vulnerable. As of Gradle 7.0, uses of the system temporary directory have been moved to the Gradle User Home directory. By default, this directory is restricted to the user running the build. As a workaround, set a more restrictive umask that removes read access to other users. When files are created in the system temporary directory, they will not be accessible to other users. If you are unable to change your system's umask, you can move the Java temporary directory by setting the System Property java.io.tmpdir. The new path needs to limit permissions to the build user only.
- Record
CVE-2021-29429- CVSS 3.1
- 4.0 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - CVSS 2.0
- 1.9 Low
AV:L/AC:M/Au:N/C:P/I:N/A:N - Weakness
- CWE-377
- Updated
- 2026-11-02
OSV
5.5
In Gradle before version 7.0, files created with open permissions in the system temporary directory can allow an attacker to access information downloaded by Gradle. Some builds could be vulnerable to a local information disclosure. Remote files accessed through TextResourceFactory are downloaded into the system temporary directory first. Sensitive information contained in these files can be exposed to other local users on the same system. If you do not use the TextResourceFactory API, you are not vulnerable. As of Gradle 7.0, uses of the system temporary directory have been moved to the Gradle User Home directory. By default, this directory is restricted to the user running the build. As a workaround, set a more restrictive umask that removes read access to other users. When files are created in the system temporary directory, they will not be accessible to other users. If you are unable to change your system's umask, you can move the Java temporary directory by setting the System Property java.io.tmpdir. The new path needs to limit permissions to the build user only.
- Record
CVE-2021-29429- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVDEBIAN-CVE-2021-29429
5.5
In Gradle before version 7.0, files created with open permissions in the system temporary directory can allow an attacker to access information downloaded by Gradle. Some builds could be vulnerable to a local information disclosure. Remote files accessed through TextResourceFactory are downloaded into the system temporary directory first. Sensitive information contained in these files can be exposed to other local users on the same system. If you do not use the TextResourceFactory API, you are not vulnerable. As of Gradle 7.0, uses of the system temporary directory have been moved to the Gradle User Home directory. By default, this directory is restricted to the user running the build. As a workaround, set a more restrictive umask that removes read access to other users. When files are created in the system temporary directory, they will not be accessible to other users. If you are unable to change your system's umask, you can move the Java temporary directory by setting the System Property java.io.tmpdir. The new path needs to limit permissions to the build user only.
- Record
DEBIAN-CVE-2021-29429- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVBIT-gradle-2021-29429 No score
Information disclosure through temporary directory permissions
In Gradle before version 7.0, files created with open permissions in the system temporary directory can allow an attacker to access information downloaded by Gradle. Some builds could be vulnerable to a local information disclosure. Remote files accessed through TextResourceFactory are downloaded into the system temporary directory first. Sensitive information contained in these files can be exposed to other local users on the same system. If you do not use the TextResourceFactory API, you are not vulnerable. As of Gradle 7.0, uses of the system temporary directory have been moved to the Gradle User Home directory. By default, this directory is restricted to the user running the build. As a workaround, set a more restrictive umask that removes read access to other users. When files are created in the system temporary directory, they will not be accessible to other users. If you are unable to change your system's umask, you can move the Java temporary directory by setting the System Property java.io.tmpdir. The new path needs to limit permissions to the build user only.
- Record
BIT-gradle-2021-29429- Updated
- 2026-11-02
OSVSUSE-SU-2024:1119-1 No score
Security update for gradle, gradle-bootstrap
This update for gradle, gradle-bootstrap fixes the following issues:
- CVE-2021-29429: Fixed information disclosure through temporary directory permissions (bsc#1184799).
- CVE-2019-15052: Fixed authentication credentials disclosure (bsc#1145903).
gradle:
- Fixed RPM package building issues due to changed dependencies
gradle-bootstrap:
- Added missing dependency of aopalliance
- Record
SUSE-SU-2024:1119-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
gradleBitnami |
before 7.0.0 | 7.0.0 |
gradleDebian:12 |
All versions, plus listed versions 4.4.1-184.4.1-194.4.1-204.4.1-214.4.1-22 Show 5 moreShow less4.4.1-234.5.1-14.6-14.6-24.6-3 |
None known |
gradleDebian:13 |
All versions, plus listed versions 4.4.1-224.4.1-234.5.1-14.6-14.6-24.6-3 |
None known |
gradleDebian:14 |
All versions, plus listed versions 4.4.1-224.4.1-234.5.1-14.6-14.6-24.6-3 |
None known |
gradleSUSE:Linux Enterprise Module for Development Tools 15 SP5 From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleSUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleSUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleSUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleSUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleSUSE:Linux Enterprise Server 15 SP2-LTSS From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
Show 8 moreShow less
| Package | Affected | Fixed |
|---|---|---|
gradleSUSE:Linux Enterprise Server 15 SP3-LTSS From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleSUSE:Linux Enterprise Server 15 SP4-LTSS From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleSUSE:Linux Enterprise Server for SAP Applications 15 SP2 From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleSUSE:Linux Enterprise Server for SAP Applications 15 SP3 From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleSUSE:Linux Enterprise Server for SAP Applications 15 SP4 From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleSUSE:Enterprise Storage 7.1 From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradleopenSUSE:Leap 15.5 From an advisory covering 2 CVEs |
before 4.4.1-150200.3.15.1 | 4.4.1-150200.3.15.1 |
gradle-bootstrapopenSUSE:Leap 15.5 From an advisory covering 2 CVEs |
before 4.4.1-150200.3.9.1 | 4.4.1-150200.3.9.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2021-29429 is a medium vulnerability (CVSS 4.0) in Gradle, published April 12, 2021. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.48%, the 41st percentile. Fixed in gradle 7.0.0.
References
github.com/gradle/gradle/security/advisories/GHSA-fp8h-qmr5-j4c8
docs.gradle.org/7.0/release-notes.html
nvd.nist.gov/vuln/detail/CVE-2021-29429
security-tracker.debian.org/tracker/CVE-2021-29429
suse.com/support/update/announcement/2024/suse-su-20241119-1
bugzilla.suse.com/1145903
bugzilla.suse.com/1184799
suse.com/security/cve/CVE-2019-15052
suse.com/security/cve/CVE-2021-29429