CVE-2023-25815

Git looks for localized messages in the wrong place

LOW
2.2
CVSS Score
Published: April 25, 2023 at 07:51 PM UTC
Updated: June 17, 2026 at 05:42 AM UTC
3 products affected across 3 vendorsFedoraGit for WindowsGit

Using git by git-for-windows?

Get instant alerts when new vulnerabilities affect git - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
LOW2.2
Exploit prediction
EPSS 0.8%

Description

In Git for Windows, the Windows port of Git, no localized messages are shipped with the installer. As a consequence, Git is expected not to localize messages at all, and skips the gettext initialization. However, due to a change in MINGW-packages, the `gettext()` function's implicit initialization no longer uses the runtime prefix but uses the hard-coded path `C:\mingw64\share\locale` to look for localized messages. And since any authenticated user has the permission to create folders in `C:\` (and since `C:\mingw64` does not typically exist), it is possible for low-privilege users to place fake messages in that location where `git.exe` will pick them up in version 2.40.1. This vulnerability is relatively hard to exploit and requires social engineering. For example, a legitimate message at the end of a clone could be maliciously modified to ask the user to direct their web browser to a malicious website, and the user might think that the message comes from Git and is legitimate. It does require local write access by the attacker, though, which makes this attack vector less likely. Version 2.40.1 contains a patch for this issue. Some workarounds are available. Do not work on a Windows machine with shared accounts, or alternatively create a `C:\mingw64` folder and leave it empty. Users who have administrative rights may remove the permission to create folders in `C:\`.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v < 2.40.1
Affected range stops below 2.40.1, so it looks safe — our inference, not a vendor statement
v < 2.40.1
Affected range stops below 2.40.1, so it looks safe — our inference, not a vendor statement

Remediation

No guide yet

No remediation guidance has been written for this CVE yet. What the record does show:

CVSS

Attack Vector
LOCAL
Complexity
HIGH
Privileges
LOW
User Interaction
REQUIRED
Scope
UNCHANGED
Confidentiality
NONE
Integrity
LOW
Availability
NONE
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-22CWE-134

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card