Vulnerability · Published Aug 30, 2023 · Assigned by GitHub_M

CVE-2023-41040GitPython blind local file inclusion

Medium 4.0

In plain English

A medium-severity path traversal in GitPython from gitpython-developers. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 1.1% (higher than 66% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)4.0Medium
Exploit odds (30 days)1.1%top 34.4% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

GitPython is a python library used to interact with Git repositories. In order to resolve some git references, GitPython reads files from the `.git` directory, in some places the name of the file being read is provided by the user, GitPython doesn't check if this file is located outside the `.git` directory. This allows an attacker to make GitPython read any file from the system. This vulnerability is present in https://github.com/gitpython-developers/GitPython/blob/1c8310d7cae144f74a671cbe17e51f63a830adbf/git/refs/symbolic.py#L174-L175. That code joins the base directory with a user given string without checking if the final path is located outside the base directory. This vulnerability cannot be used to read the contents of files but could in theory be used to trigger a denial of service for the program. This issue has been addressed in version 3.1.37.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Alpine:v3.20py3-gitpython3.1.37-r0ALPINE-CVE-2023-41040
Alpine:v3.21py3-gitpython3.1.37-r0ALPINE-CVE-2023-41040
Alpine:v3.22py3-gitpython3.1.37-r0ALPINE-CVE-2023-41040
Alpine:v3.23py3-gitpython3.1.37-r0ALPINE-CVE-2023-41040
Alpine:v3.24py3-gitpython3.1.37-r0ALPINE-CVE-2023-41040
Debian:12python-git3.1.30-1+deb12u2DEBIAN-CVE-2023-41040
Debian:13python-git3.1.36-1DEBIAN-CVE-2023-41040
Debian:14python-git3.1.36-1DEBIAN-CVE-2023-41040
PyPIgitpython3.1.35PYSEC-2023-165
PyPIgitpython3.1.37GHSA-cwvm-v4w8-q58c

Affected products (as reported)

VendorProductVersions
gitpython-developers GitPython < 3.1.37

Weakness: CWE-22 · Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L

References