{"id":"CVE-2026-111149","published":"2026-10-15T19:17:29.503","lastModified":"2026-10-16T18:25:45.343","description":"FreeImage (danoli3 fork) through 3.19.23 contains a heap out-of-bounds read vulnerability in Unpack32Bits() in PluginPICT.cpp because rowBytes is never checked against the file-controlled PixMap width. Attackers can supply a crafted PICT file with a truncated or undersized rowBytes to over-read up to 64 KiB of heap, leaking memory into decoded pixels or crashing the process.","cvssScore":6.1,"cvssSeverity":"MEDIUM","cvssVector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:H","cwes":["CWE-125"],"vendors":[],"products":[],"references":[{"url":"https://github.com/danoli3/FreeImage","tags":[]},{"url":"https://github.com/danoli3/FreeImage/blob/cc2bfc1b67d3a10e2c203c56932b09ffb52a4477/Source/FreeImage/PluginPICT.cpp#L605-L650","tags":[]},{"url":"https://hackmd.io/@haind-pwn/freeimage-pict-unpack32bits-plane-conversion-oob-read","tags":[]},{"url":"https://www.vulncheck.com/advisories/freeimage-through-3.19.23-heap-out-of-bounds-read-via-pict-unpack32bits","tags":[]}],"exploitRefs":[{"url":"https://github.com/danoli3/FreeImage","tags":[]},{"url":"https://github.com/danoli3/FreeImage/blob/cc2bfc1b67d3a10e2c203c56932b09ffb52a4477/Source/FreeImage/PluginPICT.cpp#L605-L650","tags":[]}],"hasPoc":true,"ai":null}