go-git: Improper parsing of specially crafted objects may lead to inconsistent interpretation compared to upstream Git
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| go-git | go-git | affected |
|
Configuration 1 [-]
|
No data.
| Vendor | Product | Versions | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Go-git | Go-git |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-389r-gv7p-r3rp | go-git's improper parsing of specially crafted objects may lead to inconsistent interpretation compared to upstream Git |
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.159% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Go-git Project
Go-git Project go-git |
|
| CPEs | cpe:2.3:a:go-git_project:go-git:*:*:*:*:*:go:*:* cpe:2.3:a:go-git_project:go-git:6.0.0:alpha1:*:*:*:go:*:* cpe:2.3:a:go-git_project:go-git:6.0.0:alpha2:*:*:*:go:*:* |
|
| Vendors & Products |
Go-git Project
Go-git Project go-git |
|
| Metrics |
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Go-git
Go-git go-git |
|
| Vendors & Products |
Go-git
Go-git go-git |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | go-git is an extensible git implementation library written in pure Go. Prior to 5.19.0 and 6.0.0-alpha.3, go-git may parse malformed Git objects in a way that differs from upstream Git. When commit or tag objects contain ambiguous or malformed headers, go-git’s decoded representation may expose values differently from how Git itself would interpret or reject the same object. Additionally, go-git’s commit signing and verification logic operates over commit data reconstructed from go-git’s parsed representation rather than the original raw object bytes. As a result, go-git may sign or verify a commit payload that is not byte-for-byte equivalent to the object stored in the repository. This can cause a signature to appear valid for a commit whose displayed or effective metadata differs from the object that was intended to be signed. This vulnerability is fixed in 5.19.0 and 6.0.0-alpha.3. | |
| Title | go-git: Improper parsing of specially crafted objects may lead to inconsistent interpretation compared to upstream Git | |
| Weaknesses | CWE-180 CWE-345 |
|
| References |
| |
| Metrics |
cvssV4_0
|