libgit2 submodule path traversal before 1.8.6/1.9.5
CVE-2026-53584 Published on August 20, 2026
libgit2: Submodule path traversal
libgit2 is a portable C implementation of the Git core methods provided as a linkable library with a solid API, allowing to build Git functionality into your application. Prior to 1.8.6 and 1.9.5, libgit2 does not reject traversal components in a submodule path loaded from .gitmodules. The affected src/libgit2/submodule.c paths include git_submodule_lookup and git_submodule_add_setup. A crafted repository can specify a path such as ../escape-target, and applications that initialize the submodule can create directories outside the repository working tree. This issue is fixed in versions 1.8.6 and 1.9.5.
Vulnerability Analysis
CVE-2026-53584 is exploitable with network access, requires user interaction. This vulnerability is considered to have a low attack complexity. The potential impact of an exploit of this vulnerability is considered to have no impact on confidentiality, with no impact on integrity, and no impact on availability.
Weakness Type
What is a Directory traversal Vulnerability?
The software uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the software does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.
CVE-2026-53584 has been classified to as a Directory traversal vulnerability or weakness.
Products Associated with CVE-2026-53584
stack.watch emails you whenever new vulnerabilities are published in Canonical Ubuntu Linux or Libgit2. Just hit a watch button to start following.
Affected Versions
libgit2:- Version < 1.8.6 is affected.
- Version >= 1.9.0, < 1.9.5 is affected.