CVE-2026-47667

NameCVE-2026-47667
DescriptionCImg Library is a C++ library for image processing. Prior to version 4.0.0 in `_load_analyze()`, the header_size field is read as an `unsigned int` from the first 4 bytes of an Analyze/NIfTI file and passed directly to `new unsigned char[header_size]` without being bounded against the actual file size. A value up to ~4 GB is accepted. If the subsequent `fread` returns `short` as it will for any malformed file), the function throws a `CImgIOException` and the allocated buffer is never freed. A 6-byte crafted file is sufficient to trigger an allocation of ~1.3 GB per call, with the full allocation leaked on every error path. The issue is reachable via `load_analyze()` and the generic `load()` when the file extension is .hdr, .img, or .nii. Version 4.0.0 fixes the issue.
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)
Debian Bugs1142677

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
cimg (PTS)bullseye2.9.4+dfsg-2vulnerable
bookworm3.2.1+dfsg-1vulnerable
trixie3.5.2+dfsg-1+deb13u1vulnerable
forky, sid3.5.2+dfsg-2vulnerable

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

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
cimgsource(unstable)(unfixed)1142677

Notes

[bookworm] - cimg <postponed> (minor issue; DoS)
[bullseye] - cimg <postponed> (minor issue; DoS)
https://github.com/GreycLab/CImg/security/advisories/GHSA-rmfc-grgj-qwhv
https://github.com/GreycLab/CImg/issues/480
Fixed by: https://github.com/GreycLab/CImg/commit/6a69bf725ffd111a4c7dc61cc15e3661abd158ee (v4.0.0)

Search for package or bug name: Reporting problems