blob: c4db9052a6e3e4e46e1043d50cba10950055aba0 [file]
id: GO-2026-5047
modules:
- module: github.com/iskorotkov/avro/v2
versions:
- fixed: 2.33.0
vulnerable_at: 2.32.0
packages:
- package: github.com/iskorotkov/avro/v2
- module: github.com/hamba/avro/v2
vulnerable_at: 2.31.0
packages:
- package: github.com/hamba/avro/v2
summary: Integer overflow in Avro decoder in github.com/iskorotkov/avro/v2 and github.com/hamba/avro/v2
description: |-
Several Avro decoder paths read attacker-controlled 64-bit values from the wire
format and either narrowed them to platform-sized int before bounds-checking,
or summed them with overflow-prone signed-int arithmetic. On 32-bit targets,
the truncation paths can silently bypass byte-slice limits, select the wrong
union branch, or hit a negative-make panic via wrap.
Three sub-issues are not 32-bit-specific: cumulative-size arithmetic overflow
in array and map decoders, negation of MinInt in block-header handling, and
negative size in block reads. All three panic or bypass caps on any platform,
giving an attacker a denial-of-service primitive. Exploitation requires only
an untrusted Avro stream.
cves:
- CVE-2026-46384
ghsas:
- GHSA-mc57-h6j3-3hmv
credits:
- Daniel Błażewicz
- Ivan Korotkov
references:
- advisory: https://github.com/iskorotkov/avro/security/advisories/GHSA-mc57-h6j3-3hmv
- fix: https://github.com/iskorotkov/avro/commit/bed99b315ec097a1a5eb7ae074ef57a91848c583
- fix: https://github.com/iskorotkov/avro/commit/e1a570f9a8a4fe4b1bc2b4b1fb6d24e4a5f04358
source:
id: GHSA-mc57-h6j3-3hmv
created: 2026-07-21T19:47:09.624834-04:00
review_status: REVIEWED