CVE-2026-25934: go-git improperly verifies data integrity values for .idx and .pack files

Published Feb 9, 2026
·
Updated

Impact

A vulnerability was discovered in go-git whereby data integrity values for .pack and .idx files were not properly verified. This resulted in go-git potentially consuming corrupted files, which would likely result in unexpected errors such as object not found.

For context, clients fetch packfiles from upstream Git servers. Those files contain a checksum of their contents, so that clients can perform integrity checks before consuming it. The pack indexes (.idx) are generated locally by go-git, or the git cli, when new .pack files are received and processed. The integrity checks for both files were not being verified correctly.

Note that the lack of verification of the packfile checksum has no impact on the trust relationship between the client and server, which is enforced based on the protocol being used (e.g. TLS in the case of https:// or known hosts for ssh://). In other words, the packfile checksum verification does not provide any security benefits when connecting to a malicious or compromised Git server.

Patches

Users should upgrade to v5.16.5, or the latest v6 pseudo-version, in order to mitigate this vulnerability.

Workarounds

In case updating to a fixed version of go-git is not possible, users can run git fsck from the git cli to check for data corruption on a given repository.

Credit

Thanks @N0zoM1z0 for finding and reporting this issue privately to the go-git project.

Other sources

go-git is a highly extensible git implementation library written in pure Go. Prior to 5.16.5, a vulnerability was discovered in go-git whereby data integrity values for .pack and .idx files were not properly verified. This resulted in go-git potentially consuming corrupted files, which would likely result in unexpected errors such as object not found. For context, clients fetch packfiles from upstream Git servers. Those files contain a checksum of their contents, so that clients can perform integrity checks before consuming it. The pack indexes (.idx) are generated locally by go-git, or the git cli, when new .pack files are received and processed. The integrity checks for both files were not being verified correctly. This vulnerability is fixed in 5.16.5.

MITRE

Affected Software

3 affected componentsFixes available
go-git<5.16.5
go/github.com/go-git/go-git/v5<=5.16.4
5.16.5
go-git project Go-git Go<5.16.5

Event History

Feb 9, 2026
CVE Published
via MITRE·10:13 PM
Data Sourced
via MITRE·10:13 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·11:16 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·11:16 PM
RemedyAffected Software
Feb 10, 2026
Advisory Published
via GitHub·12:28 AM
Data Sourced
via GitHub·12:28 AM
DescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

What is the severity of CVE-2026-25934?

CVE-2026-25934 has been classified with a severity rating that reflects the potential impact of improper data integrity verification in go-git.

2

How do I fix CVE-2026-25934?

To mitigate CVE-2026-25934, upgrade to go-git version 5.16.5 or later where the vulnerability has been addressed.

3

What are the potential risks of CVE-2026-25934?

The risks associated with CVE-2026-25934 include the potential for data corruption and unauthorized access to repository contents due to flawed integrity checks.

4

Which versions of go-git are affected by CVE-2026-25934?

CVE-2026-25934 affects all versions of go-git prior to 5.16.5.

5

Can CVE-2026-25934 lead to security breaches?

Yes, CVE-2026-25934 can lead to security breaches by allowing attackers to exploit the improper verification of .idx and .pack file data.

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