CVE-2026-70654

NameCVE-2026-70654
Descriptionlibvips is a fast image processing library with low memory needs. Prior to version 8.18.3, applications that define unusual custom libvips sources and use them to process untrusted uncompressed PPM images can trigger a max/min error in vips_source_read_to_memory in libvips/iofuncs/source.c. The function uses VIPS_MAX instead of VIPS_MIN when selecting the remaining read size, allowing up to 4032 bytes to be written beyond the allocated heap buffer and causing memory corruption or a process crash. This issue is fixed in version 8.18.3.
SourceCVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
vips (PTS)bullseye8.10.5-2vulnerable
bullseye (security)8.10.5-2+deb11u1vulnerable
bookworm8.14.1-3+deb12u3vulnerable
bookworm (security)8.14.1-3+deb12u2vulnerable
trixie8.16.1-1+deb13u1vulnerable
forky, sid8.18.5-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
vipssource(unstable)8.18.3-1

Notes

https://github.com/libvips/libvips/security/advisories/GHSA-rjmm-3qch-m9rg
https://github.com/libvips/libvips/pull/5038
Fixed by: https://github.com/libvips/libvips/commit/80e021c6cdda0f80b756c2109d99839c94c03258 (v8.18.3-rc1)

Search for package or bug name: Reporting problems