When decoding an OpenEXR file that uses DWAA or DWAB compression, there's an implicit assumption that the height and width are divisible by 8.
If the height or width of the image is not divisible by 8, the copy loops at [0] and [1] will continue to write until the next multiple of 8.
The buffer td->uncompressed_data is allocated in decode_block based on the precise height and width of the image, so the "rounded-up" multiple of 8 in the copy loop can exceed the buffer bounds, and the write block starting at [2] can corrupt following heap memory.
We recommend upgrading to version 8.0 or beyond.
Metrics
Affected Vendors & Products
References
Link | Providers |
---|---|
https://b.corp.google.com/issues/436510316 |
![]() ![]() |
History
Mon, 06 Oct 2025 08:15:00 +0000
Type | Values Removed | Values Added |
---|---|---|
Description | When decoding an OpenEXR file that uses DWAA or DWAB compression, there's an implicit assumption that the height and width are divisible by 8. If the height or width of the image is not divisible by 8, the copy loops at [0] and [1] will continue to write until the next multiple of 8. The buffer td->uncompressed_data is allocated in decode_block based on the precise height and width of the image, so the "rounded-up" multiple of 8 in the copy loop can exceed the buffer bounds, and the write block starting at [2] can corrupt following heap memory. We recommend upgrading to version 8.0 or beyond. | |
Title | Heap-buffer-overflow write in FFmpeg EXR dwa_uncompress | |
Weaknesses | CWE-787 | |
References |
| |
Metrics |
cvssV4_0
|

Status: PUBLISHED
Assigner: Google
Published:
Updated: 2025-10-06T08:09:31.276Z
Reserved: 2025-09-19T08:11:37.550Z
Link: CVE-2025-59732

No data.

Status : Received
Published: 2025-10-06T08:15:34.920
Modified: 2025-10-06T08:15:34.920
Link: CVE-2025-59732

No data.

No data.