go-ipld-prime's DAG-CBOR decoder unbounded memory allocation from CBOR headers
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| ipld | go-ipld-prime | affected |
|
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Ipld | Go-ipld-prime |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-378j-3jfj-8r9f | go-ipld-prime: DAG-CBOR decoder unbounded memory allocation from CBOR headers |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.162% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Protocol
Protocol go-ipld-prime |
|
| CPEs | cpe:2.3:a:protocol:go-ipld-prime:*:*:*:*:*:go:*:* | |
| Vendors & Products |
Protocol
Protocol go-ipld-prime |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Ipld
Ipld go-ipld-prime |
|
| Vendors & Products |
Ipld
Ipld go-ipld-prime |
| Type | Values Removed | Values Added |
|---|---|---|
| Description | go-ipld-prime is an implementation of the InterPlanetary Linked Data (IPLD) spec interfaces, a batteries-included codec implementations of IPLD for CBOR and JSON, and tooling for basic operations on IPLD objects. Prior to 0.22.0, the DAG-CBOR decoder uses collection sizes declared in CBOR headers as Go preallocation hints for maps and lists. The decoder does not cap these size hints or account for their cost in its allocation budget, allowing small payloads to cause excessive memory allocation. This vulnerability is fixed in 0.22.0. | |
| Title | go-ipld-prime's DAG-CBOR decoder unbounded memory allocation from CBOR headers | |
| Weaknesses | CWE-770 | |
| References |
| |
| Metrics |
cvssV3_1
|