CVE-2023-37475: Uncontrolled Resource Consumption
(updated )
Hamba avro is a go lang encoder/decoder implementation of the avro codec specification. In affected versions a well-crafted string passed to avro’s github.com/hamba/avro/v2.Unmarshal()
can throw a fatal error: runtime: out of memory
which is unrecoverable and can cause denial of service of the consumer of avro. The root cause of the issue is that avro uses part of the input to Unmarshal()
to determine the size when creating a new slice and hence an attacker may consume arbitrary amounts of memory which in turn may cause the application to crash. This issue has been addressed in commit b4a402f4
which has been included in release version 2.13.0
. Users are advised to upgrade. There are no known workarounds for this vulnerability.
References
- github.com/advisories/GHSA-9x44-9pgq-cf45
- github.com/hamba/avro/blob/3abfe1e6382c5dccf2e1a00260c51a64bc1f1ca1/reader.go
- github.com/hamba/avro/commit/b4a402f41cf44b6094b5131286830ba9bb1eb290
- github.com/hamba/avro/pull/273
- github.com/hamba/avro/releases/tag/v2.13.0
- github.com/hamba/avro/security/advisories/GHSA-9x44-9pgq-cf45
- nvd.nist.gov/vuln/detail/CVE-2023-37475
Detect and mitigate CVE-2023-37475 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →