Description
OpenImageIO is a toolset for reading, writing, and manipulating image files of any image file format relevant to VFX / animation. Prior to 3.0.21.0, 3.1.16.0, and 3.2.0.3-beta1, A truncated tga can leave a pending gif frame that is processed during output close. gifsplitpalette() computes numpixels multiplied by the palette partition width in signed 32-bit arithmetic; a large image overflows that intermediate, corrupts subpixelsa, and drives an out-of-bounds read while building the gif palette, resulting in a process crash and denial of service. The affected implementation is identified by src/gif.imageio/gif.h, GifSplitPalette(), numPixels, subPixelsA, GIFOutput, and truncated TGA input, which define the relevant source path, functions, state, and trigger. This issue is fixed in versions 3.0.21.0, 3.1.16.0, and 3.2.0.3-beta1.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
AcademySoftwareFoundation OpenImageIO
< 3.0.21.0affected>= 3.1.0.0, < 3.1.16.0affected>= 3.2.0.0-dev, < 3.2.0.3-beta1affected
References
- https://github.com/AcademySoftwareFoundation/OpenImageIO/security/advisories/GHSA-9mwc-fjgj-8wmq ↗
- https://github.com/AcademySoftwareFoundation/OpenImageIO/pull/5292 ↗
- https://github.com/AcademySoftwareFoundation/OpenImageIO/commit/134977da625a84fc5a09a34321806f1fe0093c24 ↗
- https://github.com/AcademySoftwareFoundation/OpenImageIO/releases/tag/v3.0.21.0 ↗
- https://github.com/AcademySoftwareFoundation/OpenImageIO/releases/tag/v3.1.16.0 ↗