libvips has a potential heap-based buffer overflow when attempting to convert multiband TIFF input to HEIF output
Key facts
- Attack vector
- Local
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-122 and the CVSS impact.
Summary
libvips is a demand-driven, horizontally threaded image processing library. The heifsave operation could incorrectly determine the presence of an alpha channel in an input when it was not possible to determine the colour interpretation, known internally within libvips as "multiband". There aren't many ways to create a "multiband" input, but it is possible with a well-crafted TIFF image. If a "multiband" TIFF input image had 4 channels and HEIF-based output was requested, this led to libvips creating a 3 channel HEIF image without an alpha channel but then attempting to write 4 channels of data. This caused a heap buffer overflow, which could crash the process. This vulnerability is fixed in 8.16.1.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| libvips | libvips | before 8.16.1 | 8.16.1 | Patch available | CNA |
- libvips Vendorlibvips Affected before 8.16.1 Fixed in 8.16.1 Patch available CNA
Remediation
- Fix · CNA libvips (libvips) Fixed in 8.16.1
Vendor assessments
Timeline
- 2026-10-02 Threatist record created from CVE-2025-29769
References
Patch 2
More Libvips vulnerabilities
- TI-2026-02835 libvips extract.c vips_extract_area_build integer overflow CVSS 4.0MEDIUM 4.8
- TI-2026-02834 libvips extract.c vips_extract_band_build out-of-bounds CVSS 4.0MEDIUM 4.8
- TI-2026-02833 libvips unpremultiply.c vips_unpremultiply_build out-of-bounds CVSS 4.0MEDIUM 4.8
- TI-2026-02832 libvips bandrank.c vips_bandrank_build heap-based overflow CVSS 4.0MEDIUM 4.8
- TI-2026-02719 libvips csvload.c vips_foreign_load_csv_build heap-based overflow CVSS 4.0MEDIUM 4.8
- TI-2026-02718 libvips matrixload.c vips_foreign_load_matrix_header null pointer dereference CVSS 4.0MEDIUM 4.8
Sources
- CVE-2025-29769 · CVE Program
- CVE-2025-29769 · NVD
- FIRST EPSS
- CVE-2025-29769 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences