CVE-2023-23946

MEDIUM

Git <2.39.2-2.30.8 - Path Traversal

Title source: llm
STIX 2.1

Exploitation Summary

EIP tracks 2 public exploits for CVE-2023-23946. PoCs published by tralsesec, bruno-1337.

AI-analyzed exploit summary This repository contains a functional exploit for CVE-2023-23946, leveraging Git's improper handling of symbolic links during patch application to write arbitrary files. The exploit dynamically generates a Git patch file that renames a symlink and creates a new file within the symlink's target directory.

Description

Git, a revision control system, is vulnerable to path traversal prior to versions 2.39.2, 2.38.4, 2.37.6, 2.36.5, 2.35.7, 2.34.7, 2.33.7, 2.32.6, 2.31.7, and 2.30.8. By feeding a crafted input to `git apply`, a path outside the working tree can be overwritten as the user who is running `git apply`. A fix has been prepared and will appear in v2.39.2, v2.38.4, v2.37.6, v2.36.5, v2.35.7, v2.34.7, v2.33.7, v2.32.6, v2.31.7, and v2.30.8. As a workaround, use `git apply --stat` to inspect a patch before applying; avoid applying one that creates a symbolic link and then creates a file beyond the symbolic link.

Exploits (2)

nomisec WORKING POC
by tralsesec · poc
https://github.com/tralsesec/CVE-2023-23946

This repository contains a functional exploit for CVE-2023-23946, leveraging Git's improper handling of symbolic links during patch application to write arbitrary files. The exploit dynamically generates a Git patch file that renames a symlink and creates a new file within the symlink's target directory.

Classification
Working Poc 95%
Attack Type
Lpe
Complexity
Moderate
Reliability
Reliable
Target: Git versions prior to 2.39.2, 2.38.4, 2.37.6, 2.36.5, 2.35.7, 2.34.7, 2.33.7, 2.32.6, 2.31.7, and 2.30.8
Auth required
Prerequisites: access to a Git repository · ability to execute Git commands as the target user
devstral-2 · analyzed May 18, 2026 Full analysis →
nomisec WORKING POC
by bruno-1337 · poc
https://github.com/bruno-1337/CVE-2023-23946-POC

The PoC exploits a flaw in Git's handling of symbolic links, allowing an attacker to bypass protections and write to files outside the working tree by renaming a symlink and creating a new file in its place. The provided patch demonstrates how to manipulate the symlink to achieve arbitrary file write.

Classification
Working Poc 90%
Attack Type
Other
Complexity
Moderate
Reliability
Reliable
Target: Git
No auth needed
Prerequisites: Access to a Git repository · Ability to create symbolic links · Permission to apply patches
devstral-2 · analyzed Feb 18, 2026 Full analysis →

Scores

CVSS v3 6.2
EPSS 0.0114
EPSS Percentile 62.8%
Attack Vector LOCAL
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

Details

CWE
CWE-22
Status published
Products (1)
git-scm/git < 2.30.8
Published Feb 14, 2023
Tracked Since Feb 18, 2026