---
id: CVE-2023-23946
title: >-
  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
summary: >-
  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 t…
severity: medium
cvss: 6.2
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N'
cwe:
  - CWE-22
  - CWE-22
vendor: git-scm
product: git
affected:
  - git < 2.30.8
  - 'git >= 2.31.0, < 2.31.7'
  - 'git >= 2.32.0, < 2.32.6'
  - 'git >= 2.33.0, < 2.33.7'
  - 'git >= 2.34.0, < 2.34.7'
  - 'git >= 2.35.0, < 2.35.7'
  - 'git >= 2.36.0, < 2.36.5'
  - 'git >= 2.37.0, < 2.37.6'
  - 'git >= 2.38.0, < 2.38.4'
  - 'git >= 2.39.0, < 2.39.2'
patched:
  - git 2.39.2
published: '2023-02-14'
updated: '2026-10-08'
sourceUpdated: '2026-10-08T22:17:23.000'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2023-23946'
references:
  - url: 'https://github.com/git/git/commit/c867e4fa180bec4750e9b54eb10f459030dbebfd'
    label: security-advisories@github.com
  - url: 'https://github.com/git/git/security/advisories/GHSA-r87m-v37r-cwfh'
    label: security-advisories@github.com
  - url: 'https://security.gentoo.org/glsa/202312-15'
    label: security-advisories@github.com
  - url: 'https://github.com/git/git/commit/c867e4fa180bec4750e9b54eb10f459030dbebfd'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://github.com/git/git/security/advisories/GHSA-r87m-v37r-cwfh'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://security.gentoo.org/glsa/202312-15'
    label: af854a3a-2127-422b-91ae-364da2661108
tags:
  - nvd
  - exploit-available
epss: 0.01144
epssPercentile: 0.65738
exploits:
  github: 2
  githubRepos:
    - 'https://github.com/bruno-1337/CVE-2023-23946-POC'
    - 'https://github.com/tralsesec/CVE-2023-23946'
  checkedAt: '2026-10-08T23:17:21.759Z'
exploitAvailable: true
ingestedAt: '2026-10-08T23:16:47.348Z'
---

## Overview

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.

## Affected

- `git < 2.30.8`
- `git >= 2.31.0, < 2.31.7`
- `git >= 2.32.0, < 2.32.6`
- `git >= 2.33.0, < 2.33.7`
- `git >= 2.34.0, < 2.34.7`
- `git >= 2.35.0, < 2.35.7`
- `git >= 2.36.0, < 2.36.5`
- `git >= 2.37.0, < 2.37.6`
- `git >= 2.38.0, < 2.38.4`
- `git >= 2.39.0, < 2.39.2`

## Remediation

Upgrade past the affected range:

- `git 2.39.2`
