Skip to main content
← All vulnerabilities
CVE-2023-37475GO-2023-1930GHSA-9X44-9PGQ-CF45

Attacker-controlled parameter can cause denial of service in hamba avro

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 2.13.0
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: partial

Summary

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.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • hamba avro

    fixed in 2.13.0

  • github.com/hamba/avro/v2Go

    fixed in 2.13.0

  • github.com/hamba/avroGo

    All versions

  • github.com/hamba/avroGo

    fixed in 2.13.0

References 2

GitHub · hamba/avro