Billy is an interface filesystem abstraction for Go. Prior to 5.9.0, multiple path traversal issues exist across different components of go-billy. Insufficient path sanitization and boundary enforcement may allow crafted paths (e.g., using ..) to escape intended base directories. While go-billy was not originally designed to provide a strong security boundary, some of these issues were inconsistent across some of the built-in implementations. This results in scenarios where applications relying on go-billy for some level of isolation may inadvertently expose access to unintended filesystem locations. This vulnerability is fixed in 5.9.0.
Security readout for executives and security teams
Plain-English summary
CVE-2026-44973 affects go-git go-billy, a Go filesystem abstraction. Versions before 5.9.0 may let crafted paths escape an intended base directory. This matters most where an application treats go-billy as isolation around sensitive files or write locations.
Executive priority
Treat as high priority where products process untrusted file paths or tenant content. Lower urgency may apply where go-billy only handles trusted internal paths, but version confirmation is still needed.
Technical view
The issue is CWE-22 path traversal caused by insufficient path sanitization and boundary enforcement across go-billy components. Applications using go-billy <5.9.0 with attacker-influenced paths may expose unintended filesystem locations. The advisory says the vulnerability is fixed in 5.9.0.
Likely exposure
Exposure is likely in Go applications that depend on go-git/go-billy before 5.9.0 and pass user-controlled or tenant-controlled paths into Billy-backed filesystem operations.
Exploitation context
The CVSS vector indicates network reachability, low attack complexity, low privileges required, and no user interaction. The provided data says KEV is false, and the sources do not state active exploitation.
Researcher notes
The advisory notes go-billy was not designed as a strong security boundary, yet inconsistent built-in behavior created isolation risk. Focus review on assumptions about base-directory containment, not only direct dependency presence.
Mitigation direction
Upgrade go-git/go-billy to version 5.9.0 or later.
Review the GitHub advisory for vendor guidance and affected implementation details.
Audit applications that relied on go-billy as a filesystem security boundary.
Add explicit path validation before Billy filesystem operations.
Restrict process filesystem permissions around sensitive directories.
Validation and detection
Check dependency manifests and SBOMs for go-git/go-billy versions below 5.9.0.
Identify direct and transitive uses of Billy filesystem implementations.
Review code paths where external input influences filesystem paths.
Confirm upgraded builds resolve go-billy to 5.9.0 or later.
Run authorized regression tests for path containment behavior.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-22: File access and web shell behavior lookup
File traversal and upload weaknesses can lead teams to review file, web shell, execution, and collection telemetry. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references file access or upload behavior, so file telemetry and web shell review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.