VDB
Sign up
MEDIUM6.5

GHSA-w5pp-99ch-qj29

go-git: Malformed Git object data may cause panics or resource exhaustion

Quick fix

GHSA-w5pp-99ch-qj29 — github.com/go-git/go-git/v5: upgrade to the fixed version with the command below.

go get github.com/go-git/go-git/v5@v5.19.1

Details

### Impact Several denial-of-service issues were identified in `go-git` when parsing maliciously crafted Git repository data.

An attacker may craft a malicious `.pack`, `.idx` or loose objects that causes an application using an affected version of `go-git` to panic or consume excessive resources.

This can lead to denial of service in applications that use `go-git` to clone, fetch, open, or otherwise process untrusted repositories or Git object data.

Exploitation requires the ability to alter read-only files such as `.pack` or `.idx` from the local repository's `.git/objects/pack/` directory. Alternatively, the user would need to be interacting with a malicious remote server, which is not recommended and exposes users to a broader class of security risks beyond this issue.

### Patches Users should upgrade to a patched version 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.

### Credits go-git thanks @kodareef5, @AyushParkara and @N0zoM1z0 for reporting this in four separate reports. 🙇

Are you affected?

Enter the version of the package you're using.

Affected packages

Go/github.com/go-git/go-git/v5
Introduced in: 0Fixed in: 5.19.1
Fixgo get github.com/go-git/go-git/v5@v5.19.1
Go/github.com/go-git/go-git/v6
Introduced in: 0Fixed in: 6.0.0-alpha.4
Fixgo get github.com/go-git/go-git/v6@v6.0.0-alpha.4

References