What’s Vulnerable › Vulnerabilities
CVE-2025-59733: Heap-buffer-overflow write in FFmpeg EXR dwa_uncompress
- Severity: high (CVSS 8.7 v4.0)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-10-06 · updated 2026-10-19
- Weakness: CWE-787
Description
When decoding an OpenEXR file that uses DWAA or DWAB compression, there's an implicit assumption that all image channels have the same pixel type (and size), and that if there are four channels, the first four are "B", "G", "R" and "A". The channel parsing code can be found in decode_header. The buffer td->uncompressed_data is allocated in decode_block based on the xsize, ysize and computed current_channel_offset. The function dwa_uncompress then assumes at [5] that if there are 4 channels, these are "B", "G", "R" and "A", and in the calculations at [6] and [7] that all channels are of the same type, which matches the type of the main color channels. If we set the main color channels to a 4-byte type and add duplicate or unknown channels of the 2-byte EXR_HALF type, then the addition at [7] will increment the pointer by 4-bytes * xsize * nb_channels, which will exceed the allocated buffer. We recommend upgrading to version 8.0 or beyond.
Affected products
- FFmpeg: from 9a32b863074ed4140141e0d3613905c6f1fe61c5 before 8.0; from 7.1.1 before 8.0 — fixed in 8.0
How to fix
Upgrade to a fixed version: FFmpeg 8.0. Check the vendor advisory for mitigations.
References
Get alerted when CVE-2025-59733 or the next vulnerability affects your stack