Junglewise Threat Intelligence

CVE-2024-34252: wasm3 pywasm3 global buffer overflow in PreserveRegisterIfOccupied

CVE-2024-34252 · Severity: critical · CVSS 9.8 · Published 2024-05-06

Technologies: pywasm3 (PyPI). Vendors: PyPI.

Executive brief

pywasm3, a Python wrapper for the Wasm3 WebAssembly runtime, is vulnerable to a memory corruption issue. An attacker can provide a specially crafted WebAssembly file that causes the application to crash or potentially execute unauthorized code. This could lead to service disruptions or the compromise of data handled by the application.

Technical details

A global buffer overflow exists in pywasm3 (and the underlying wasm3 runtime) version 0.5.0. The vulnerability is located in the 'PreserveRegisterIfOccupied' function within 'source/m3_compile.c'. It is triggered during the compilation phase of a WebAssembly module. An attacker can exploit this by providing a malicious .wasm file, leading to a buffer overflow that results in a segmentation fault (DoS) or potentially remote code execution. The issue stems from insufficient validation of input buffer sizes during the compilation of block statements. No patch is currently available for version 0.5.0.

Affected products

  • wasm3 pywasm3 <= 0.5.0

Timeline

  • 2024-05-06: advisory: GitHub Advisory GHSA-hh39-vjv8-j337 published
  • 2024-05-06: disclosed: NVD published CVE-2024-34252

References

Related threats