CVE-2025-48384 Git Link Following

Exploited in the wild High 8.1 Published Updated

Attackers can execute arbitrary code via crafted submodule paths and symlinks due to improper config quoting in Git.

Exploited in the wild
Since 25 Aug 2025
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2025-48384?

CVE-2025-48384 is a high-severity code injection vulnerability in Apple Xcode, published on 8 Jul 2025. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.

Official description

Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals. When reading a config value, Git strips any trailing carriage return and line feed (CRLF). When writing a config entry, values with a trailing CR are not quoted, causing the CR to be lost when the config is later read. When initializing a submodule, if the submodule path contains a trailing CR, the altered path is read resulting in the submodule being checked out to an incorrect location. If a symlink exists that points the altered path to the submodule hooks directory, and the submodule contains an executable post-checkout hook, the script may be unintentionally executed after checkout. This vulnerability is fixed in v2.43.7, v2.44.4, v2.45.4, v2.46.4, v2.47.3, v2.48.2, v2.49.1, and v2.50.1.

Weakness: CWE-59, CWE-436

Which versions are affected by CVE-2025-48384?

1 open source package ship an affected version, including git. It affects 3 products.

PackageAffectedFixed in
git BitnamiAll versions2.50.1
Linux distribution packages (39)
git Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-all Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-core Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-core-debuginfo Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-core-doc Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-daemon Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-daemon-debuginfo Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-debuginfo Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-debugsource Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-email Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-gui Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-instaweb Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-subtree Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-svn Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git-svn-debuginfo Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
gitk Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
gitweb Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
perl-Git Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
perl-Git-SVN Red Hat:rhel_aus:8.2::appstreamAll versions0:2.18.4-5.el8_2.1
git Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-all Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-core Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-core-debuginfo Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-core-doc Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-credential-libsecret Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-credential-libsecret-debuginfo Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-daemon Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-daemon-debuginfo Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-debuginfo Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-debugsource Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-email Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-gui Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-instaweb Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-subtree Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
git-svn Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
gitk Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
gitweb Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
perl-Git Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1
perl-Git-SVN Red Hat:rhel_aus:8.4::appstreamAll versions0:2.27.0-5.el8_4.1

Products include Apple Xcode, Debian Debian Linux, Git-Scm Git.

How do I fix CVE-2025-48384?

Upgrade git to 2.50.1 or later. US federal agencies must fix it by 15 Sep 2025.

Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.

Is CVE-2025-48384 being exploited?

Yes. Attackers have exploited CVE-2025-48384 in the wild since at least 25 Aug 2025.

Public exploit code: 42 proofs of concept on GitHub.

All Apple Xcode vulnerabilities

Sources

Also known as ALPINE-CVE-2025-48384, AZL-65043, AZL-65057, BELL-CVE-2025-48384, BIT-git-2025-48384, CLSA-2025-1752655000 and 22 more.

Is CVE-2025-48384 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free