Every CVE Search/ Get API key

CVE-2026-59156

OpenImageIO: Unbounded recursion in FITS header parser leads to stack overflow

6.5 MediumFix available

OpenImageIO is a toolset for reading, writing, and manipulating image files of any image file format relevant to VFX / animation. Prior to 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1, A crafted fits stream containing consecutive 2880-byte header blocks without the mandatory end keyword makes fitsinput::read_fits_header() call itself without a depth bound. repeated recursive parsing exhausts the application stack, resulting in denial of service. The affected implementation is identified by src/fits.imageio/fitsinput.cpp, FitsInput::read_fits_header(), END keyword, and 2880-byte FITS header blocks, which define the relevant source path, functions, state, and trigger. This issue is fixed in versions 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

0.36%Unchanged since Sep 19, 2026
90%50%10%1%

What each source reports

CVE List Score used 6.5

OpenImageIO: Unbounded recursion in FITS header parser leads to stack overflow

OpenImageIO is a toolset for reading, writing, and manipulating image files of any image file format relevant to VFX / animation. Prior to 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1, A crafted fits stream containing consecutive 2880-byte header blocks without the mandatory end keyword makes fitsinput::read_fits_header() call itself without a depth bound. repeated recursive parsing exhausts the application stack, resulting in denial of service. The affected implementation is identified by src/fits.imageio/fitsinput.cpp, FitsInput::read_fits_header(), END keyword, and 2880-byte FITS header blocks, which define the relevant source path, functions, state, and trigger. This issue is fixed in versions 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1.

Record
CVE-2026-59156
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Weakness
CWE-674
Updated
2026-11-02
EUVDEUVD-2026-83121 6.5

OpenImageIO is a toolset for reading, writing, and manipulating image files of any image file format relevant to VFX / animation. Prior to 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1, A crafted fits stream containing consecutive 2880-byte header blocks without the mandatory end keyword makes fitsinput::read_fits_header() call itself without a depth bound. repeated recursive parsing exhausts the application stack, resulting in denial of service. The affected implementation is identified by src/fits.imageio/fitsinput.cpp, FitsInput::read_fits_header(), END keyword, and 2880-byte FITS header blocks, which define the relevant source path, functions, state, and trigger. This issue is fixed in versions 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1.

Record
EUVD-2026-83121
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Updated
2026-11-02
NVD 6.5

OpenImageIO is a toolset for reading, writing, and manipulating image files of any image file format relevant to VFX / animation. Prior to 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1, A crafted fits stream containing consecutive 2880-byte header blocks without the mandatory end keyword makes fitsinput::read_fits_header() call itself without a depth bound. repeated recursive parsing exhausts the application stack, resulting in denial of service. The affected implementation is identified by src/fits.imageio/fitsinput.cpp, FitsInput::read_fits_header(), END keyword, and 2880-byte FITS header blocks, which define the relevant source path, functions, state, and trigger. This issue is fixed in versions 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1.

Record
CVE-2026-59156
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Weakness
CWE-674
Updated
2026-11-02
OSV 6.5

OpenImageIO: Unbounded recursion in FITS header parser leads to stack overflow

OpenImageIO is a toolset for reading, writing, and manipulating image files of any image file format relevant to VFX / animation. Prior to 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1, A crafted fits stream containing consecutive 2880-byte header blocks without the mandatory end keyword makes fitsinput::read_fits_header() call itself without a depth bound. repeated recursive parsing exhausts the application stack, resulting in denial of service. The affected implementation is identified by src/fits.imageio/fitsinput.cpp, FitsInput::read_fits_header(), END keyword, and 2880-byte FITS header blocks, which define the relevant source path, functions, state, and trigger. This issue is fixed in versions 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1.

Record
CVE-2026-59156
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Weakness
CWE-674
Updated
2026-11-02
OSVDEBIAN-CVE-2026-59156 6.5

OpenImageIO is a toolset for reading, writing, and manipulating image files of any image file format relevant to VFX / animation. Prior to 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1, A crafted fits stream containing consecutive 2880-byte header blocks without the mandatory end keyword makes fitsinput::read_fits_header() call itself without a depth bound. repeated recursive parsing exhausts the application stack, resulting in denial of service. The affected implementation is identified by src/fits.imageio/fitsinput.cpp, FitsInput::read_fits_header(), END keyword, and 2880-byte FITS header blocks, which define the relevant source path, functions, state, and trigger. This issue is fixed in versions 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1.

Record
DEBIAN-CVE-2026-59156
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2026-59156 6.5

OpenImageIO is a toolset for reading, writing, and manipulating image files of any image file format relevant to VFX / animation. Prior to 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1, A crafted fits stream containing consecutive 2880-byte header blocks without the mandatory end keyword makes fitsinput::read_fits_header() call itself without a depth bound. repeated recursive parsing exhausts the application stack, resulting in denial of service. The affected implementation is identified by src/fits.imageio/fitsinput.cpp, FitsInput::read_fits_header(), END keyword, and 2880-byte FITS header blocks, which define the relevant source path, functions, state, and trigger. This issue is fixed in versions 3.0.20.0, 3.1.15.0, and 3.2.0.3-beta1.

Record
UBUNTU-CVE-2026-59156
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
openimageio
Debian:12
All versions, plus listed versions
2.4.12.0+dfsg-12.4.13.0+dfsg-12.4.14.0+dfsg-12.4.16.0+dfsg-12.4.17.0+dfsg-1
Show 15 moreShow less
2.4.17.0+dfsg-1.12.4.7.1+dfsg-22.4.9.0+dfsg-12.5.10.1+dfsg-12.5.12.0+dfsg-12.5.12.0+dfsg-22.5.14.0+dfsg-12.5.15.0+dfsg-12.5.16.0+dfsg-12.5.18.0+dfsg-12.5.19.1+dfsg-12.5.19.1+dfsg-22.5.7.0+dfsg-13.1.18.0+dfsg-13.1.18.0+dfsg-2
None known
openimageio
Debian:13
All versions, plus listed versions
2.5.18.0+dfsg-12.5.19.1+dfsg-12.5.19.1+dfsg-23.1.18.0+dfsg-13.1.18.0+dfsg-2
None known
openimageio
Debian:14
before 3.1.18.0+dfsg-2, plus listed versions
2.5.18.0+dfsg-12.5.19.1+dfsg-12.5.19.1+dfsg-23.1.18.0+dfsg-1
3.1.18.0+dfsg-2
openimageio
Ubuntu:Pro:16.04:LTS
All versions, plus listed versions
1.5.17~dfsg0-1ubuntu21.5.20~dfsg0-1ubuntu21.5.23~dfsg0-1ubuntu11.6.9~dfsg0-4ubuntu11.6.10~dfsg0-1ubuntu11.6.10~dfsg0-2ubuntu11.6.11~dfsg0-1ubuntu11.6.11~dfsg0-1ubuntu1+esm2
None known
openimageio
Ubuntu:Pro:18.04:LTS
All versions, plus listed versions
1.6.17~dfsg0-1ubuntu51.7.17~dfsg0-1ubuntu21.7.17~dfsg0-1ubuntu2+esm1
None known
openimageio
Ubuntu:Pro:20.04:LTS
All versions, plus listed versions
2.0.10~dfsg0-12.0.11~dfsg0-12.0.12~dfsg0-12.0.12~dfsg0-1build12.0.12~dfsg0-1build2
Show 4 moreShow less
2.1.10.1~dfsg0-5ubuntu42.1.10.1~dfsg0-5ubuntu52.1.12.0~dfsg0-12.1.12.0~dfsg0-1ubuntu0.1~esm1
None known
openimageio
Ubuntu:22.04:LTS
All versions, plus listed versions
2.2.10.1+dfsg-1build12.2.18.0+dfsg-12.2.18.0+dfsg-1build22.2.18.0+dfsg-1ubuntu2
None known
openimageio
Ubuntu:Pro:24.04:LTS
All versions, plus listed versions
2.4.14.0+dfsg-12.4.16.0+dfsg-12.4.16.0+dfsg-1build12.4.17.0+dfsg-12.4.17.0+dfsg-1build12.4.17.0+dfsg-1.1build32.4.17.0+dfsg-1.1build42.4.17.0+dfsg-1.1ubuntu0.1~esm1
None known
openimageio
Ubuntu:26.10
All versions, plus listed versions
2.5.19.1+dfsg-22.5.19.1+dfsg-2build12.5.19.1+dfsg-2build2
None known
openimageio
Ubuntu:Pro:26.04:LTS
All versions, plus listed versions
2.5.18.0+dfsg-1build22.5.19.1+dfsg-1build12.5.19.1+dfsg-1build32.5.19.1+dfsg-1build52.5.19.1+dfsg-22.5.19.1+dfsg-2ubuntu0.1~esm1
None known

History

History
RecordedChangedSources
first indexedCVE List, EUVD, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-59156 is a medium vulnerability (CVSS 6.5) in Academysoftwarefoundation Openimageio, published September 18, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.36%, the 30th percentile. Fixed in openimageio 3.1.18.0+dfsg-2.

References

Show 4 moreShow less
MoveEnter Open