CVE-2024-32465: Git's protections for cloning untrusted repositories can be bypassed
Git is a revision control system. The Git project recommends to avoid working in untrusted repositories, and instead to clone it first with git clone --no-local to obtain a clean copy. Git has specific protections to make that a safe operation even with an untrusted source repository, but vulnerabilities allow those protections to be bypassed. In the context of cloning local repositories owned by other users, this vulnerability has been covered in CVE-2024-32004. But there are circumstances where the fixes for CVE-2024-32004 are not enough: For example, when obtaining a .zip file containing a full copy of a Git repository, it should not be trusted by default to be safe, as e.g. hooks could be configured to run within the context of that repository. The problem has been patched in versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4. As a workaround, avoid using Git in repositories that have been obtained via archives from untrusted sources.
Other sources
Git's protections for cloning untrusted repositories can be bypassed
— Microsoft
The Git project recommends to avoid working in untrusted repositories, and instead to clone them first with git clone --no-local to obtain a clean copy. Git has specific protections to make that a safe operation even with an untrusted source repository, but vulnerabilities allow those protections to be bypassed.
In the context of cloning local repositories owned by other users, this vulnerability has been covered in CVE-2024-32004.
But there are circumstances where the fixes for CVE-2024-32004 are not enough: For example, when obtaining a .zip file containing a full copy of a Git repository, it should not be trusted by default to be safe, as e.g. hooks could be configured to run within the context of that repository.
— Red Hat
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
debian/gitto a version that resolves this vulnerability.Fixed in 1:2.30.2-1+deb11u4Fixed in 1:2.39.5-0+deb12u2Fixed in 1:2.47.2-0.1Fixed in 1:2.49.0-1 - Upgrade
Upgrade
redhat/gitto a version that resolves this vulnerability.Fixed in 2.45.1 - Upgrade
Upgrade
redhat/gitto a version that resolves this vulnerability.Fixed in 2.44.1 - Upgrade
Upgrade
redhat/gitto a version that resolves this vulnerability.Fixed in 2.43.4 - Upgrade
Upgrade
redhat/gitto a version that resolves this vulnerability.Fixed in 2.42.2 - Upgrade
Upgrade
redhat/gitto a version that resolves this vulnerability.Fixed in 2.41.1 - Upgrade
Upgrade
redhat/gitto a version that resolves this vulnerability.Fixed in 2.40.2 - Upgrade
Upgrade
redhat/gitto a version that resolves this vulnerability.Fixed in 2.39.4 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 2.45.1 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 2.44.1 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 2.43.4 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 2.42.2 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 2.41.1 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 2.40.2 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 2.39.4 - Configuration
Do not work directly in repositories obtained via archives from untrusted sources; instead clone the repository first with `git clone --no-local` to obtain a clean copy.
Git Avoid using untrusted repositories; clone first with --no-local = git clone --no-local
Event History
Frequently Asked Questions
What is the severity of CVE-2024-32465?
CVE-2024-32465 is considered a moderate severity vulnerability affecting Git.
How do I fix CVE-2024-32465?
To fix CVE-2024-32465, upgrade Git to version 2.45.1 or later.
What software is affected by CVE-2024-32465?
CVE-2024-32465 affects multiple versions of the Git package, specifically versions prior to 2.45.1.
What could happen if I do not mitigate CVE-2024-32465?
If CVE-2024-32465 is not mitigated, you may expose your system to security risks from untrusted repositories.
Is CVE-2024-32465 a local or remote vulnerability?
CVE-2024-32465 is primarily a local vulnerability, as it deals with untrusted repositories that are cloned locally.