CVERadar
HIGH · CVSS 3.1 8CISA KEV · added 2025-08-25Public PoCEPSS 4.38% (p91)Threat level 56

CVE-2025-48384: Git Link Following Vulnerability

Git · Git · NVD published 2025-07-09 · posted 2025-08-25 · last modified 2026-09-24

What it is

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.

WeaknessCWE-59CWE-436
CVSS vectorCVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:H (source: [email protected])
CISA due date2025-09-15 (for US federal agencies under BOD; a good deadline for everyone)
ATT&CK tacticsn/a

Exploitation evidence

First exploit evidence seen: 2025-07-08 (earliest date across the sources below).

Exploited in the wild

  • CISA KEV: listed since 2025-08-25. Source

Public exploit code

GitHub proof-of-concept repositories

42 public repositories from 30 accounts, first seen 2025-07-08. Most starred: acheong08/CVE-2025-48384 (52 stars), view repository.

Verify before running: public PoCs can be malicious. Read the code and only run it in an isolated lab. A PoC means exploit code is public, not that this CVE is exploited in the wild.

Sources: CISA KEV · nomi-sec/PoC-in-GitHub.

No ATT&CK techniques could be mapped or inferred for this CVE yet.

How to fix it

CISA required action

Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable. (source: CISA KEV)

Fixed versions

  • git-scm git: upgrade to 2.43.7 or later
  • git-scm git: upgrade to 2.44.4 or later (affected from 2.44.0)
  • git-scm git: upgrade to 2.45.4 or later (affected from 2.45.0)
  • git-scm git: upgrade to 2.46.4 or later (affected from 2.46.0)
  • git-scm git: upgrade to 2.47.3 or later (affected from 2.47.0)
  • git-scm git: upgrade to 2.48.2 or later (affected from 2.48.0)
  • git-scm git: upgrade to 2.49.1 or later (affected from 2.49.0)
  • git-scm git: upgrade to 2.50.1 or later (affected from 2.50.0)
  • apple xcode: upgrade to 26.0 or later

Derived from the NVD CPE configuration (versionEndExcluding / versionEndIncluding). Always confirm with the vendor advisory.

Vendor advisories and patches

Detection Generic guidance

    Response checklist Generic guidance

    1. Inventory: find every instance of the affected product and version (include internet-facing and forgotten ones).
    2. Patch or mitigate per the vendor advisory; if you cannot patch, remove internet exposure or apply the vendor workaround.
    3. Assume compromise if the system was exposed before patching: hunt for the indicators in the advisory and review logs back to the disclosure date.
    4. Rotate credentials and secrets stored on or used by the affected system if compromise cannot be ruled out.

    Sources