CVE-2024-8948: heap-buffer-overflow in MicroPython

CVE-2024-8948 · Severity: low · CVSS 3.1 · Published 2024-09-17

A vulnerability was found in MicroPython 1.23.0. It has been rated as critical. Affected by this issue is the function mpz_as_bytes of the file py/objint.c. The manipulation leads to heap-based buffer overflow. The attack may be launched remotely. The exploit has been disclosed to the public and may be used. The patch is identified as 908ab1ceca15ee6fd0ef82ca4cba770a3ec41894. It is recommended to apply a patch to fix this issue. In micropython objint component, converting zero from int to bytes leads to heap buffer-overflow-write at mpz_as_bytes.

Technologies: micropython-copy (PyPI), micropython-io (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2024-8948 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2024-8948 being exploited in the wild.
How severe is CVE-2024-8948?
Low severity, with a CVSS score of 3.1, published 17 September 2024.
Which products and versions are affected?
micropython-copy (PyPI) ECOSYSTEM:introduced=0,last_affected=3.3.3.post3, GIT:introduced=0,fixed=908ab1ceca15ee6fd0ef82ca4cba770a3ec41894|ECOSYSTEM:introduced=0; micropython-io (PyPI) ECOSYSTEM:introduced=0,last_affected=0.1, GIT:introduced=0,fixed=908ab1ceca15ee6fd0ef82ca4cba770a3ec41894|ECOSYSTEM:introduced=0; micropython-os (PyPI) ECOSYSTEM:introduced=0,last_affected=0.8, GIT:introduced=0,fixed=908ab1ceca15ee6fd0ef82ca4cba770a3ec41894|ECOSYSTEM:introduced=0.
Is there a fix for CVE-2024-8948?
No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.
Am I affected by CVE-2024-8948?
Check whether you run micropython-copy (PyPI), micropython-io (PyPI) or micropython-os (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Affected products

  • micropython-copy (PyPI) ECOSYSTEM:introduced=0,last_affected=3.3.3.post3, GIT:introduced=0,fixed=908ab1ceca15ee6fd0ef82ca4cba770a3ec41894|ECOSYSTEM:introduced=0
  • micropython-io (PyPI) ECOSYSTEM:introduced=0,last_affected=0.1, GIT:introduced=0,fixed=908ab1ceca15ee6fd0ef82ca4cba770a3ec41894|ECOSYSTEM:introduced=0
  • micropython-os (PyPI) ECOSYSTEM:introduced=0,last_affected=0.8, GIT:introduced=0,fixed=908ab1ceca15ee6fd0ef82ca4cba770a3ec41894|ECOSYSTEM:introduced=0

Identifiers

  • CVE-2024-8948
  • GHSA-vh3x-525m-jp4r
  • PYSEC-2024-87
  • PYSEC-2024-88
  • PYSEC-2024-89

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.