CVE-2024-32021: Local Git clone may hardlink arbitrary user-readable files into the new repository's "objects/" directory

Published May 14, 2024
·
Updated

Git is a revision control system. Prior to versions 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4, when cloning a local source repository that contains symlinks via the filesystem, Git may create hardlinks to arbitrary user-readable files on the same filesystem as the target repository in the objects/ directory. Cloning a local repository over the filesystem may creating hardlinks to arbitrary user-owned files on the same filesystem in the target Git repository's objects/ directory. When cloning a repository over the filesystem (without explicitly specifying the file:// protocol or --no-local), the optimizations for local cloning will be used, which include attempting to hard link the object files instead of copying them. While the code includes checks against symbolic links in the source repository, which were added during the fix for CVE-2022-39253, these checks can still be raced because the hard link operation ultimately follows symlinks. If the object on the filesystem appears as a file during the check, and then a symlink during the operation, this will allow the adversary to bypass the check and create hardlinks in the destination objects directory to arbitrary, user-readable files. 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.

Other sources

Local Git clone may hardlink arbitrary user-readable files into the new repository's "objects/" directory

Microsoft

When cloning a local source repository that contains symlinks via the filesystem, Git may create hardlinks to arbitrary user-readable files on the same filesystem as the target repository in the objects/ directory.

Red Hat

Affected Software

23 affected componentsFixes available
redhat/git<2.45.1
2.45.1
redhat/git<2.44.1
2.44.1
redhat/git<2.43.4
2.43.4
redhat/git<2.42.2
2.42.2
redhat/git<2.41.1
2.41.1
redhat/git<2.40.2
2.40.2
redhat/git<2.39.4
2.39.4
debian/git<=1:2.30.2-1+deb11u2
1:2.30.2-1+deb11u41:2.39.5-0+deb12u21:2.47.2-0.11:2.49.0-1
git-scm Git<2.39.4
git-scm Git>=2.40.0<2.40.2
git-scm Git>=2.42.0<2.42.2
git-scm Git>=2.43.0<2.43.4
git-scm Git=2.41.0
git-scm Git=2.44.0
git-scm Git=2.45.0
Fedoraproject Fedora=40
Debian Debian Linux=10.0
Debian Debian Linux=11.0
Microsoft azl3 git 2.45.2-1
Microsoft cbl2 git 2.33.8-2
Microsoft cbl2 git 2.39.4-1
Microsoft cbl2 git 2.33.8-2
Microsoft azl3 git 2.42.0-2

Event History

May 14, 2024
CVE Published
via MITRE·07:15 PM
Data Sourced
via MITRE·07:15 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·08:15 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·08:15 PM
Affected Software
May 17, 2024
Data Sourced
via Microsoft·07:00 AM
DescriptionSeverityWeakness
Data Sourced
via Microsoft·07:00 AM
Affected Software
Updated
via Microsoft·07:00 AM
DescriptionSeverity
Updated
via Microsoft·07:00 AM
Description
Jun 29, 2024
Data Sourced
via Launchpad·04:51 PM
Description
Sep 21, 2024
Data Sourced
via Ubuntu·05:04 PM
RemedyDescriptionSeverityAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2024-32021?

CVE-2024-32021 is classified with a moderate severity level due to its potential to create hardlinks to user-readable files.

2

How do I fix CVE-2024-32021?

To mitigate CVE-2024-32021, upgrade Git to versions 2.45.1 or newer, or ensure you are using a version not affected by the vulnerability.

3

Which versions of Git are affected by CVE-2024-32021?

CVE-2024-32021 affects Git versions prior to 2.45.1, including 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2, and 2.39.4.

4

Who is affected by CVE-2024-32021?

Anyone cloning Git repositories containing symlinks on their filesystem using affected versions of Git is at risk from CVE-2024-32021.

5

Is there a workaround for CVE-2024-32021?

The best workaround for CVE-2024-32021 is to avoid using affected versions of Git until you can upgrade to a fixed version.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203