# CVE-2026-32741: Strukturag libheif heap buffer overflow in MaskImageCodec

Source: https://junglewise.ai/threats/cve-2026-32741-strukturag-libheif-heap-buffer-overflow-in-maskimagecodec  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-05-19. Updated: 2026-05-19  
License: CC BY 4.0 with a link back

CVE-2026-32741 · Severity: high · CVSS 7.1 · Published 2026-05-19

libheif is an open-source library used by many applications to process HEIF and AVIF image files. A security flaw in how the library handles image masks allows a specially crafted image file to crash the application or potentially allow unauthorized code execution. This could lead to service disruptions or a compromise of systems that automatically process user-uploaded images.

Technologies: [struktur AG Libheif](https://junglewise.ai/threats/technologies/libheif). Vendors: [struktur AG](https://junglewise.ai/threats/vendors/struktur-ag).

## Quick answers

**Is CVE-2026-32741 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-32741 being exploited in the wild.

**How severe is CVE-2026-32741?** High severity, with a CVSS score of 7.1, published 19 May 2026.

**Which products and versions are affected?** struktur AG Libheif <= 1.21.2.

**Is there a fix for CVE-2026-32741?** A patch was published on 2026-05-19: Fixed in version 1.22.0 Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-32741 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-32741?** Check whether you run struktur AG Libheif 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.

## Technical details

A heap buffer overflow exists in libheif's MaskImageCodec::decode_mask_image() function within mask_image.cc. The vulnerability occurs when the library processes a HEIF file containing a mask image (mski) item. The function uses memcpy() to copy data from the file's iloc extent into a destination pixel buffer. While the destination buffer is sized based on declared image dimensions (ispe property), the copy length is taken directly from the attacker-controlled iloc extent length without an upper-bound check. An attacker can trigger this by providing a file where the iloc extent exceeds the allocated pixel buffer size, specifically when bits_per_pixel is 8 and the image width is an even value ≥ 64. This results in heap corruption, leading to a denial of service or potential arbitrary code execution. The issue is fixed in version 1.22.0.

## Affected products

- strukturag libheif <= 1.21.2

## Timeline

- 2026-05-19: disclosed
- 2026-05-19: patched: Fixed in version 1.22.0
- 2026-05-19: advisory

## References

- [https://github.com/strukturag/libheif/releases/tag/v1.22.0](https://github.com/strukturag/libheif/releases/tag/v1.22.0)
- [https://github.com/strukturag/libheif/security/advisories/GHSA-j3w5-7whq-p37q](https://github.com/strukturag/libheif/security/advisories/GHSA-j3w5-7whq-p37q)

## Related threats

- [libheif decompression bomb via brotli/zlib metadata](https://junglewise.ai/threats/cve-2026-84384-libheif-is-a-heif-and-avif-file-format-decoder-and-encoder-from-1)
- [Strukturag libheif heap OOB read in ImageItem_Grid::decode_grid_tile](https://junglewise.ai/threats/cve-2026-48029-strukturag-libheif-heap-oob-read-in-imageitem-grid-decode-grid)
- [Strukturag libheif integer overflow in region.cc mask parsing](https://junglewise.ai/threats/cve-2026-47714-strukturag-libheif-integer-overflow-in-region-cc-mask-parsing)
- [Strukturag libheif heap buffer over-read in SampleAuxInfoReader](https://junglewise.ai/threats/cve-2026-41071-strukturag-libheif-heap-buffer-over-read-in-sampleauxinforeader)
- [Strukturag libheif out-of-bounds read in SampleAuxInfoReader](https://junglewise.ai/threats/cve-2026-41069-strukturag-libheif-out-of-bounds-read-in-sampleauxinforeader)
