CVE-2026-63478 in isomorphic-gitinfo

Summary

by MITRE • 11/03/2026

isomorphic-git is a pure JavaScript implementation of Git for Node.js and browsers. Prior to 1.38.6, isomorphic-git's tree parser in src/models/GitTree.js accepts a standalone .. tree-entry name because it rejects only path separators. During clone or checkout from a malicious or man-in-the-middle-controlled non-GitHub remote, nested .. entries can escape the working-tree root and write files at attacker-selected parent paths on any host-backed fs provider. The arbitrary file write can overwrite startup or configuration files and lead to code execution. GitHub-hosted trees are not a direct source because GitHub rejects .. entries during repository integrity checks. This issue is fixed in version 1.38.6.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Analysis

by VulDB Data Team • 11/03/2026

The vulnerability identified in the isomorphic-git library, specifically within versions prior to 1.38.6, represents a critical path traversal flaw rooted in insufficient validation of file system paths during repository operations. As a pure JavaScript implementation of Git designed for both Node.js and browser environments, isomorphic-git relies on its internal tree parser located at src/models/GitTree.js to interpret the structure of git repositories. The core technical deficiency lies in how this parser handles directory traversal sequences. While the code correctly rejects explicit path separators such as forward slashes or backslashes, it fails to adequately sanitize relative navigation components like double dots (..). This oversight allows an attacker who controls a remote repository or intercepts traffic via a man-in-the-middle attack to inject nested .. entries into the tree structure. When isomorphic-git processes these malicious trees during clone or checkout operations, the parser interprets the traversal sequences without verifying that they remain within the bounds of the designated working directory root.

This lack of boundary enforcement enables arbitrary file write capabilities on the host system's file system provider. By carefully constructing a repository with deeply nested .. entries in its tree objects, an attacker can force isomorphic-git to resolve paths that escape the intended project directory and target parent directories or even absolute paths depending on the underlying operating system and configuration. The operational impact of this vulnerability is severe because it allows for the overwriting of arbitrary files located outside the repository's sandboxed environment. Attackers can leverage this capability to overwrite critical startup scripts, shell configurations, or other executable binaries that are loaded during routine system operations. Consequently, if a victim clones such a malicious repository and subsequently executes commands or loads configuration from these tampered locations, it leads directly to remote code execution on the host machine.

The risk profile is particularly acute in environments where users interact with untrusted remotes, as GitHub-hosted repositories are mitigated against this specific vector because their integrity checks reject .. entries during repository validation. However, self-hosted git servers or compromised mirrors do not necessarily enforce these restrictions, leaving users of isomorphic-git exposed when connecting to such sources. The vulnerability aligns with CWE-22: Improper Limitation of a Pathname to a Restricted Directory, as the application fails to restrict file access to intended directories. Furthermore, from an offensive security perspective, this flaw facilitates initial code execution and potential privilege escalation through ATT&CK techniques related to command and script interception or modification of system configuration files.

To mitigate this vulnerability, organizations must immediately upgrade isomorphic-git to version 1.38.6 or later, where the tree parser has been hardened to properly validate path components against directory traversal attempts regardless of separator presence. In addition to updating dependencies, developers should implement defense-in-depth strategies by validating all file paths before writing them to disk, ensuring that resolved absolute paths remain within expected base directories. It is also advisable to restrict the permissions of processes running git operations so they cannot write to sensitive system locations even if a path traversal succeeds. Regular auditing of third-party libraries for similar input validation flaws and restricting network access to trusted remotes further reduces the attack surface associated with this class of vulnerabilities.

Responsible

GitHub M

Reservation

07/16/2026

Disclosure

11/03/2026

Moderation

accepted

EPSS

0.00000

KEV

no

Activities

very low

Sources

Do you need the next level of professionalism?

Upgrade your account now!