CVE details
CVE-2026-112390
Pillow is a Python imaging library. From 7.2.0 until 13.0.0, Pillow can enter an infinite loop while determining the frame count of a MIC image. MicImageFile inherits TIFF frame traversal, but MicImageFile.tell reports the OLE stream index and its seek() resets TIFF frame state, so an embedded TIFF with at least three IFDs never advances. When an application with olefile installed reads n_frames or saves all frames from a crafted MIC file, the non-advancing traversal can hold a worker at full CPU indefinitely. This issue is fixed in version 13.0.0.
Affected ports (1)
| Port | Package | Version | Status | Maintainer |
|---|---|---|---|---|
| graphics/py-pillow | py312-pillow | 12.3.0 | unaddressed | sunpoet@FreeBSD.org |
Template for a VuXML entry
Range taken from the CVE record, check it before committing. make newentry in security/vuxml creates the vid.
<vuln vid="FIXME (make newentry)">
<topic>FIXME -- FIXME</topic>
<affects>
<package>
<name>py312-pillow</name>
<range><lt>13.0.0</lt></range>
</package>
</affects>
<description>
<body xmlns="http://www.w3.org/1999/xhtml">
<p>Pillow is a Python imaging library. From 7.2.0 until 13.0.0, Pillow
can enter an infinite loop while determining the frame count of a MIC
image. MicImageFile inherits TIFF frame traversal, but
MicImageFile.tell reports the OLE stream index and its seek() resets
TIFF frame state, so an embedded TIFF with at least three IFDs never
advances. When an application with olefile installed reads n_frames or
saves all frames from a crafted MIC file, the non-advancing traversal
can hold a worker at full CPU indefinitely. This issue is fixed in
version 13.0.0.</p>
</body>
</description>
<references>
<cvename>CVE-2026-112390</cvename>
<url>https://nvd.nist.gov/vuln/detail/CVE-2026-112390</url>
</references>
<dates>
<discovery>2026-10-19</discovery>
<entry>2026-10-25</entry>
</dates>
</vuln>