CVE-2019-6976 json
libvips before 8.7.4 generates output images from uninitialized memory locations when processing corrupted input image data because iofuncs…
published 2019-01-26 7 y ago modified 2026-06-17 4 mo ago also EUVD-2019-16528
- cvss
- 5.3
- version 3.0, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 2.2%
- EPSS 2.2% chance of exploitation in 30 days, percentile 82%
- public exploits
- 0
- none known
Summary
libvips before 8.7.4 generates output images from uninitialized memory locations when processing corrupted input image data because iofuncs/memory.c does not zero out allocated memory. This can result in leaking raw process memory contents through the output image.
Patch / fix
- libvips libvips 8.7.4
- vips Debian 14, Debian 13, Debian 12 8.7.4-1
debian advisories DEBIAN-CVE-2019-6976
- vips Ubuntu Pro 16.04 LTS 8.2.2-1ubuntu0.1~esm1
- vips Ubuntu Pro 18.04 LTS 8.4.5-1ubuntu0.1~esm1
ubuntu advisories UBUNTU-CVE-2019-6976
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- vips openSUSE Tumbleweed 8.18.7-1.1
opensuse advisories openSUSE-SU-2026:12266-1
Exploit prediction
2.21% chance of exploitation in the next 30 days, higher than 82% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.0 | 5.3 | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N |
| NVD | 2.0 | 5.0 | AV:N/AC:L/Au:N/C:P/I:N/A:N |
Classification
- Weakness
-
- CWE-908 Use of Uninitialized Resource
References
-
github.com
/libvips/libvips/commit/00622428bda8d7521db8d74260b519fa41d69d0a
patch, third-party-advisory
-
github.com
/libvips/libvips/releases/tag/v8.7.4
third-party-advisory
-
blog.silentsignal.eu
/2019/04/18/drop-by-drop-bleeding-through-libvips/
technical-description, third-party-advisory
Sources
- CVE List CVE-2019-6976
- NVD CVE-2019-6976
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.