GHSA-cw2g-2vwq-88w6: isomorphic-git: Path traversal via a ".." tree-entry name writes files outside the working directory on clone/checkout

Published Nov 3, 2026
·
Updated

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.

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade isomorphic-git to a version that resolves this vulnerability.

    Fixed in 1.38.6

Event History

Nov 3, 2026
CVE Published
via OSV·07:39 PM
Data Sourced
via OSV·07:39 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which deployments are exposed to this issue?

Deployments using isomorphic-git before 1.38.6 are exposed when clone or checkout operations use a host-backed filesystem provider and process a malicious or man-in-the-middle-controlled non-GitHub remote. GitHub-hosted repositories are not a direct source because GitHub rejects tree entries named ".." during repository integrity checks.

2

What must an attacker control to exploit the vulnerability?

An attacker must cause the victim to clone or check out repository content containing nested tree entries named "..". This can come from a malicious non-GitHub remote or a man-in-the-middle-controlled remote; no authentication is required, but user interaction is required to initiate the clone or checkout.

3

What is the impact of a successful exploit?

Nested ".." entries can escape the working-tree root and write files to attacker-selected parent paths. Those writes can overwrite startup or configuration files and may lead to code execution.

4

What should be done if an immediate upgrade is not possible?

Avoid cloning from or checking out untrusted non-GitHub remotes, and avoid operations where a network attacker could control or modify the remote repository content. The provided data does not identify another technical mitigation.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203