Skip to main content

Use After Free

CVE-2025-64183

Severity Medium
Score 5.5/10

Summary

OpenEXR provides the specification and reference implementation of the EXR file format, an image storage format for the motion picture industry. In versions 3.2.0 through 3.2.4, 3.3.0 through 3.3.5, and 3.4.0 through 3.4.2, there is a use-after-free in "PyObject_StealAttrString" of "pyOpenEXR_old.cpp". The legacy adapter defines "PyObject_StealAttrString" that calls "PyObject_GetAttrString" to obtain a new reference, immediately decrefs it, and returns the pointer. Callers then pass this dangling pointer to APIs like "PyLong_AsLong/PyFloat_AsDouble", resulting in a use-after-free. This is invoked in multiple places (e.g., reading PixelType.v, Box2i, V2f, etc.) Versions 3.2.5, 3.3.6, and 3.4.3 fix the issue.

  • LOW
  • NETWORK
  • NONE
  • UNCHANGED
  • NONE
  • NONE
  • NONE
  • HIGH

CWE-416 - Use After Free

Use-after-free (UaF) vulnerability occurs when the application is using a pointer to memory that has been freed. Any attempt to read/write to a buffer after it is de-allocated allows memory corruption, sensitive information exposure, and can potentially lead to arbitrary code execution.

Advisory Timeline

  • Published