CVE-2026-53980: Charmbracelet wish path traversal in git middleware

CVE-2026-53980 · Severity: high · CVSS 8.1 · Published 2026-11-06

Charmbracelet wish is a library that provides SSH middleware for Go applications, including git repository access. Before version 2.0.5, a path traversal vulnerability in the git middleware allowed authenticated SSH users to escape the configured repository directory and access arbitrary files outside the intended root. An attacker could read or write repositories by crafting malicious repository paths, potentially leading to unauthorized data access or modification.

Vendors: Charmbracelet.

Quick answers

Is CVE-2026-53980 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-53980 being exploited in the wild.
How severe is CVE-2026-53980?
High severity, with a CVSS score of 8.1, published 6 November 2026.
Which products and versions are affected?
Charmbracelet Wish before 2.0.5.
Is there a fix for CVE-2026-53980?
Yes: fixed in 2.0.5. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-53980 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-53980?
Check whether you run Charmbracelet Wish at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • Fixed in: 2.0.5

Technical details

The git middleware used a flawed slash-count containment check to validate repository paths, allowing attackers to bypass the guard using crafted paths like "../evil" or on Windows "..\..\..\evil". The vulnerability exists in git.Middleware() and can be exploited via git-upload-pack, git-upload-archive, or git-receive-pack commands. Authentication is required, and the fix validates paths using filepath.IsLocal and treats both forward and backward slashes as separators.

Affected products

  • Charmbracelet wish before 2.0.5

Timeline

  • 2026-11-06: disclosed
  • 2026-10-01: patched

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.