Skip to content

fix(deps): update module github.com/go-git/go-git/v5 to v5.18.0 [security]#28

Open
renovate[bot] wants to merge 1 commit intomainfrom
renovate/go-github.com-go-git-go-git-v5-vulnerability
Open

fix(deps): update module github.com/go-git/go-git/v5 to v5.18.0 [security]#28
renovate[bot] wants to merge 1 commit intomainfrom
renovate/go-github.com-go-git-go-git-v5-vulnerability

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate bot commented Jan 8, 2025

This PR contains the following updates:

Package Change Age Confidence
github.com/go-git/go-git/v5 v5.12.0v5.18.0 age confidence

go-git clients vulnerable to DoS via maliciously crafted Git server replies

CVE-2025-21614 / GHSA-r9px-m959-cxf4 / GO-2025-3367

More information

Details

Impact

A denial of service (DoS) vulnerability was discovered in go-git versions prior to v5.13. This vulnerability allows an attacker to perform denial of service attacks by providing specially crafted responses from a Git server which triggers resource exhaustion in go-git clients.

This is a go-git implementation issue and does not affect the upstream git cli.

Patches

Users running versions of go-git from v4 and above are recommended to upgrade to v5.13 in order to mitigate this vulnerability.

Workarounds

In cases where a bump to the latest version of go-git is not possible, we recommend limiting its use to only trust-worthy Git servers.

Credit

Thanks to Ionut Lalu for responsibly disclosing this vulnerability to us.

Severity

  • CVSS Score: 7.5 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


go-git has an Argument Injection via the URL field

CVE-2025-21613 / GHSA-v725-9546-7q7m / GO-2025-3368

More information

Details

Impact

An argument injection vulnerability was discovered in go-git versions prior to v5.13.

Successful exploitation of this vulnerability could allow an attacker to set arbitrary values to git-upload-pack flags. This only happens when the file transport protocol is being used, as that is the only protocol that shells out to git binaries.

Affected versions

Users running versions of go-git from v4 and above are recommended to upgrade to v5.13 in order to mitigate this vulnerability.

Workarounds

In cases where a bump to the latest version of go-git is not possible, we recommend users to enforce restrict validation rules for values passed in the URL field.

Credit

Thanks to @​vin01 for responsibly disclosing this vulnerability to us.

Severity

  • CVSS Score: 9.2 / 10 (Critical)
  • Vector String: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:Clear

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Clients vulnerable to DoS via maliciously crafted Git server replies in github.com/go-git/go-git

CVE-2025-21614 / GHSA-r9px-m959-cxf4 / GO-2025-3367

More information

Details

Clients vulnerable to DoS via maliciously crafted Git server replies in github.com/go-git/go-git

Severity

Unknown

References

This data is provided by OSV and the Go Vulnerability Database (CC-BY 4.0).


Argument Injection via the URL field in github.com/go-git/go-git

CVE-2025-21613 / GHSA-v725-9546-7q7m / GO-2025-3368

More information

Details

Argument Injection via the URL field in github.com/go-git/go-git

Severity

Unknown

References

This data is provided by OSV and the Go Vulnerability Database (CC-BY 4.0).


go-git improperly verifies data integrity values for .idx and .pack files

CVE-2026-25934 / GHSA-37cx-329c-33x3 / GO-2026-4473

More information

Details

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.

Severity

  • CVSS Score: 4.3 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Improper verification of data integrity values for .idx and .pack files in github.com/go-git/go-git

CVE-2026-25934 / GHSA-37cx-329c-33x3 / GO-2026-4473

More information

Details

Improper verification of data integrity values for .idx and .pack files in github.com/go-git/go-git

Severity

Unknown

References

This data is provided by OSV and the Go Vulnerability Database (CC-BY 4.0).


go-git missing validation decoding Index v4 files leads to panic

CVE-2026-33762 / GHSA-gm2x-2g9h-ccm8 / GO-2026-4909

More information

Details

Impact

go-git’s index decoder for format version 4 fails to validate the path name prefix length before applying it to the previously decoded path name. A maliciously crafted index file can trigger an out-of-bounds slice operation, resulting in a runtime panic during normal index parsing.

This issue only affects Git index format version 4. Earlier formats (go-git supports only v2 and v3) are not vulnerable to this issue.

An attacker able to supply a crafted .git/index file can cause applications using go-git to panic while reading the index. If the application does not recover from panics, this results in process termination, leading to a denial-of-service (DoS) condition.

Exploitation requires the ability to modify or inject a Git index file within the local repository in disk. This typically implies write access to the .git directory.

Patches

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

Credit

go-git maintainers thank @​kq5y for finding and reporting this issue privately to the go-git project.

Severity

  • CVSS Score: 2.8 / 10 (Low)
  • Vector String: CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


go-git: Maliciously crafted idx file can cause asymmetric memory consumption

CVE-2026-34165 / GHSA-jhf3-xxhw-2wpp / GO-2026-4910

More information

Details

Impact

A vulnerability has been identified in which a maliciously crafted .idx file can cause asymmetric memory consumption, potentially exhausting available memory and resulting in a Denial of Service (DoS) condition.

Exploitation requires write access to the local repository's .git directory, it order to create or alter existing .idx files.

Patches

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

Credit

The go-git maintainers thank @​kq5y for finding and reporting this issue privately to the go-git project.

Severity

  • CVSS Score: 5.0 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Missing validation decoding Index v4 files leads to panic in github.com/go-git/go-git

CVE-2026-33762 / GHSA-gm2x-2g9h-ccm8 / GO-2026-4909

More information

Details

Missing validation decoding Index v4 files leads to panic in github.com/go-git/go-git

Severity

Unknown

References

This data is provided by OSV and the Go Vulnerability Database (CC-BY 4.0).


Maliciously crafted idx file can cause asymmetric memory consumption in github.com/go-git/go-git

CVE-2026-34165 / GHSA-jhf3-xxhw-2wpp / GO-2026-4910

More information

Details

Maliciously crafted idx file can cause asymmetric memory consumption in github.com/go-git/go-git

Severity

Unknown

References

This data is provided by OSV and the Go Vulnerability Database (CC-BY 4.0).


go-git: Credential leak via cross-host redirect in smart HTTP transport

GHSA-3xc5-wrhm-f963

More information

Details

Impact

go-git may leak HTTP authentication credentials when following redirects during smart-HTTP clone and fetch operations.

If a remote repository responds to the initial /info/refs request with a redirect to a different host, go-git updates the session endpoint to the redirected location and reuses the original authentication for subsequent requests. This can result in the credentials (e.g. Authorization headers) being sent to an unintended host.

An attacker controlling or influencing the redirect target can capture these credentials and potentially reuse them to access the victim’s repositories or other resources, depending on the scope of the credential.

Clients using go-git exclusively with trusted remotes (for example, GitHub or GitLab), and over a secure HTTPS connection, are not affected by this issue. The risk arises when interacting with untrusted or misconfigured Git servers, or when using unsecured HTTP connections, which is not recommended. Such configurations also expose clients to a broader class of security risks beyond this issue, including credential interception and tampering of repository data.

Patches

Users should upgrade to v5.18.0, or v6.0.0-alpha.2, in order to mitigate this vulnerability. Versions prior to v5 are likely to be affected, users are recommended to upgrade to a supported go-git version.

The patched versions add support for configuring followRedirects. In line with upstream behaviour, the default is now initial, while users can opt into FollowRedirects or NoFollowRedirects programmatically.

Credit

Thanks to the 3 separate reports from @​celinke97, @​N0zoM1z0 and @​AyushParkara. Thanks for finding and reporting this issue privately to the go-git project. 🙇

Severity

  • CVSS Score: 4.7 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:N/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Release Notes

go-git/go-git (github.com/go-git/go-git/v5)

v5.18.0

Compare Source

What's Changed

  • plumbing: transport/http, Add support for followRedirects policy by @​pjbgf in #​2004

Full Changelog: go-git/go-git@v5.17.2...v5.18.0

v5.17.2

Compare Source

What's Changed

⚠️ This release fixes a bug (#​1942) that blocked some users from upgrading to v5.17.1. Thanks @​pskrbasu for reporting it. 🙇

Full Changelog: go-git/go-git@v5.17.1...v5.17.2

v5.17.1

Compare Source

What's Changed

Full Changelog: go-git/go-git@v5.17.0...v5.17.1

v5.17.0

Compare Source

What's Changed

Full Changelog: go-git/go-git@v5.16.5...v5.17.0

v5.16.5

Compare Source

What's Changed

Full Changelog: go-git/go-git@v5.16.4...v5.16.5

v5.16.4

Compare Source

What's Changed

Full Changelog: go-git/go-git@v5.16.3...v5.16.4

v5.16.3

Compare Source

What's Changed

  • internal: Expand regex to fix build [5.x] by @​baloo in #​1644
  • build: raise timeouts for windows CI tests and disable CIFuzz [5.x] by @​baloo in #​1646
  • plumbing: support commits extra headers, support jujutsu signed commit [5.x] by @​baloo in #​1633

Full Changelog: go-git/go-git@v5.16.2...v5.16.3

v5.16.2

Compare Source

What's Changed

  • utils: fix diff so subpaths work for sparse checkouts, fixes 1455 to releases/v5.x by @​kane8n in #​1567

Full Changelog: go-git/go-git@v5.16.1...v5.16.2

v5.16.1

Compare Source

What's Changed

New Contributors

Full Changelog: go-git/go-git@v5.16.0...v5.16.1

v5.16.0

Compare Source

What's Changed

Full Changelog: go-git/go-git@v5.15.0...v5.16.0

v5.15.0

Compare Source

What's Changed

Full Changelog: go-git/go-git@v5.14.0...v5.15.0

v5.14.0

Compare Source

What's Changed

⚠️ Note that this version requires Go 1.23, due to the bump to golang.org/x/crypto@v0.35.0 which mitigates the CVE above. User's that can't bump to Go 1.23 will need to remain on the previous v5.13.x release.

Full Changelog: go-git/go-git@v5.13.2...v5.14.0

v5.13.2

Compare Source

What's Changed

Full Changelog: go-git/go-git@v5.13.1...v5.13.2

v5.13.1

Compare Source

What's Changed

Full Changelog: go-git/go-git@v5.13.0...v5.13.1

v5.13.0

Compare Source

What's Changed

New Contributors

Full Changelog: go-git/go-git@v5.12.0...v5.13.0


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • ""
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the security label Jan 8, 2025
@renovate
Copy link
Copy Markdown
Contributor Author

renovate bot commented Jan 8, 2025

ℹ Artifact update notice

File name: go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 9 additional dependencies were updated

Details:

Package Change
github.com/ProtonMail/go-crypto v1.0.0 -> v1.1.3
github.com/cyphar/filepath-securejoin v0.2.4 -> v0.2.5
github.com/go-git/go-billy/v5 v5.5.0 -> v5.6.0
github.com/skeema/knownhosts v1.2.2 -> v1.3.0
golang.org/x/crypto v0.21.0 -> v0.31.0
golang.org/x/mod v0.13.0 -> v0.17.0
golang.org/x/net v0.22.0 -> v0.33.0
golang.org/x/sys v0.18.0 -> v0.28.0
golang.org/x/tools v0.14.0 -> v0.21.1-0.20240508182429-e35e4ccd0d2d

@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed Apr 23, 2025
@renovate renovate bot closed this Apr 23, 2025
@renovate renovate bot deleted the renovate/go-github.com-go-git-go-git-v5-vulnerability branch April 23, 2025 17:07
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] Apr 23, 2025
@renovate renovate bot reopened this Apr 23, 2025
@renovate renovate bot force-pushed the renovate/go-github.com-go-git-go-git-v5-vulnerability branch from 7bc6333 to 9fc1974 Compare April 23, 2025 22:54
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed Jun 10, 2025
@renovate renovate bot closed this Jun 10, 2025
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] Jun 10, 2025
@renovate renovate bot reopened this Jun 10, 2025
@renovate renovate bot force-pushed the renovate/go-github.com-go-git-go-git-v5-vulnerability branch from bc1cb60 to 9fc1974 Compare June 10, 2025 21:31
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed Jun 21, 2025
@renovate renovate bot closed this Jun 21, 2025
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] Jun 21, 2025
@renovate renovate bot reopened this Jun 21, 2025
@renovate renovate bot force-pushed the renovate/go-github.com-go-git-go-git-v5-vulnerability branch from 02a0cf3 to 9fc1974 Compare June 21, 2025 08:31
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed Jul 10, 2025
@renovate renovate bot closed this Jul 10, 2025
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] Jul 10, 2025
@renovate renovate bot reopened this Jul 10, 2025
@renovate renovate bot force-pushed the renovate/go-github.com-go-git-go-git-v5-vulnerability branch from 07bd11f to 9fc1974 Compare July 10, 2025 16:26
@renovate
Copy link
Copy Markdown
Contributor Author

renovate bot commented Dec 15, 2025

ℹ️ Artifact update notice

File name: go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 11 additional dependencies were updated
  • The go directive was updated for compatibility reasons

Details:

Package Change
go 1.21.4 -> 1.24.0
github.com/Microsoft/go-winio v0.6.1 -> v0.6.2
github.com/ProtonMail/go-crypto v1.0.0 -> v1.1.6
github.com/cloudflare/circl v1.3.7 -> v1.6.3
github.com/cyphar/filepath-securejoin v0.2.4 -> v0.4.1
github.com/go-git/go-billy/v5 v5.5.0 -> v5.8.0
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da -> v0.0.0-20241129210726-2c02b8208cf8
github.com/pjbgf/sha1cd v0.3.0 -> v0.3.2
github.com/skeema/knownhosts v1.2.2 -> v1.3.1
golang.org/x/crypto v0.21.0 -> v0.45.0
golang.org/x/net v0.22.0 -> v0.47.0
golang.org/x/sys v0.18.0 -> v0.38.0

@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed Dec 28, 2025
@renovate renovate bot closed this Dec 28, 2025
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] Dec 28, 2025
@renovate renovate bot reopened this Dec 28, 2025
@renovate renovate bot force-pushed the renovate/go-github.com-go-git-go-git-v5-vulnerability branch 2 times, most recently from 9fc1974 to 6fa8768 Compare December 28, 2025 21:15
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed Jan 17, 2026
@renovate renovate bot closed this Jan 17, 2026
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] - autoclosed fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] Jan 17, 2026
@renovate renovate bot reopened this Jan 17, 2026
@renovate renovate bot force-pushed the renovate/go-github.com-go-git-go-git-v5-vulnerability branch from 6fa8768 to 314e251 Compare January 17, 2026 21:10
@renovate renovate bot force-pushed the renovate/go-github.com-go-git-go-git-v5-vulnerability branch from 314e251 to 1a8efca Compare February 10, 2026 10:11
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.13.0 [security] fix(deps): update module github.com/go-git/go-git/v5 to v5.16.5 [security] Feb 10, 2026
@renovate renovate bot force-pushed the renovate/go-github.com-go-git-go-git-v5-vulnerability branch from 1a8efca to d9ea1d7 Compare February 12, 2026 16:00
@renovate renovate bot force-pushed the renovate/go-github.com-go-git-go-git-v5-vulnerability branch from d9ea1d7 to f5ba9d6 Compare March 30, 2026 21:32
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.16.5 [security] fix(deps): update module github.com/go-git/go-git/v5 to v5.17.1 [security] Mar 30, 2026
@renovate renovate bot force-pushed the renovate/go-github.com-go-git-go-git-v5-vulnerability branch from f5ba9d6 to 0de011d Compare April 18, 2026 01:06
@renovate renovate bot changed the title fix(deps): update module github.com/go-git/go-git/v5 to v5.17.1 [security] fix(deps): update module github.com/go-git/go-git/v5 to v5.18.0 [security] Apr 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant