{"answers":{"affected":"","exploited":"There is no known exploitation of CVE-2026-62986 in the wild and no public exploit code.","fix":"Upgrade to a fixed version.","what":"CVE-2026-62986 is a medium-severity vulnerability in AcademySoftwareFoundation openexr, published on 25 Aug 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2026-62986 and fix it if it is affected.\n\nWhat it is: CVE-2026-62986 is a medium-severity vulnerability in AcademySoftwareFoundation openexr, published on 25 Aug 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.\nExploitation: There is no known exploitation of CVE-2026-62986 in the wild and no public exploit code.\n\nAffected product: AcademySoftwareFoundation openexr. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-62986/ (Markdown: https://insights.sbomify.com/CVE-2026-62986/index.md)","id":"CVE-2026-62986","markdown":"https://insights.sbomify.com/CVE-2026-62986/index.md","name":"CVE-2026-62986","record":{"aliases":["BELL-CVE-2026-62986","DEBIAN-CVE-2026-62986","GHSA-pf59-r2mc-x746","MINI-cm88-hvf9-rvxx","UBUNTU-CVE-2026-62986"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["data_read"],"network_reachable":"yes","non_default_config":false,"product_category":"OpenEXR image library","requires_auth":"none","summary":"Attackers can expose uninitialized heap memory by crafting deep EXR files processed by PyOpenEXR, potentially leaking sensitive data.","user_interaction":"required","vuln_class":"information_disclosure"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[],"cvss":{"score":4.3,"severity":"medium","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N","version":"3.1"},"cwes":[{"id":"CWE-908","name":"Use of Uninitialized Resource"},{"id":"CWE-457","name":"Use of Uninitialized Variable"},{"id":"CWE-200","name":"Exposure of Sensitive Information to an Unauthorized Actor"}],"description":"OpenEXR is the reference implementation and specification for the EXR image file format, widely used in the motion picture industry. In versions 3.3.0 through 3.3.12 and 3.4.0 through 3.4.13, the PyOpenEXR Python bindings return stale heap data when reading a crafted deep scanline EXR that uses layer-prefixed RGB channels. With the default channel coalescing (separate_channels=False), the wrapper groups channels such as left.R, left.G, and left.B into a single RGB sample array, but the lane-offset calculation in PyPart::setDeepSliceData() only recognizes the exact unprefixed names G, B, and A. As a result, prefixed channels like left.G and left.B are decoded into lane 0 while lanes 1 and 2 are left uninitialized and returned to Python. A Python application that reads untrusted deep EXR files through the default OpenEXR.File API and then logs, serializes, previews, or otherwise processes the resulting NumPy sample arrays may expose uninitialized same-process heap contents, in addition to receiving incorrect green and blue channel data. This issue is fixed in versions 3.3.13 and 3.4.14.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"OpenEXR: PyOpenEXR deep prefixed RGB stale lane disclosure","id":"CVE-2026-62986","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"information_disclosure","year":"2026"},"n_packages":0,"n_references":4,"next":{"headline":"Fabio - Incomplete fix for CVE-2025-48865: operator-configured trust headers (clientip/tls/requestid) still strippable via the Connection header","id":"CVE-2026-62987"},"packages":[],"prev":{"headline":"request-filtering-agent: Synchronous throw from createConnection() for literal private-IP hosts bypasses req.on('error'), crashing the Node.js process","id":"CVE-2026-62985"},"products":["openexr"],"published":"2026-08-25","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"none","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-08-25","vendors":["AcademySoftwareFoundation"]},"summary":"Attackers can expose uninitialized heap memory by crafting deep EXR files processed by PyOpenEXR, potentially leaking sensitive data.","url":"https://insights.sbomify.com/CVE-2026-62986/"}