CVE-2026-39856 osslsigncode has an Out-of-Bounds Read via Unvalidated Section Bounds in PE Page Hash Calculation

Medium 5.5 Published Updated

An attacker can cause a denial of service in osslsigncode by providing a crafted PE file that triggers an out-of-bounds read during page hash calculation.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Local or same network only
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2026-39856?

CVE-2026-39856 is a medium-severity memory corruption vulnerability in mtrojnar osslsigncode, published on 9 Apr 2026. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.

Official description

osslsigncode is a tool that implements Authenticode signing and timestamping. Prior to 2.13, an out-of-bounds read vulnerability exists in osslsigncode version 2.12 and earlier in the PE page-hash computation code (pe_page_hash_calc()). When processing PE sections for page hashing, the function uses PointerToRawData and SizeOfRawData values from section headers without validating that the referenced region lies within the mapped file. An attacker can craft a PE file with section headers that point beyond the end of the file. When osslsigncode computes page hashes for such a file, it may attempt to hash data from an invalid memory region, causing an out-of-bounds read and potentially crashing the process. The vulnerability can be triggered while signing a malicious PE file with page hashing enabled (-ph), or while verifying a malicious signed PE file that already contains page hashes. Verification of an already signed file does not require the verifier to pass -ph. This vulnerability is fixed in 2.13.

Weakness: CWE-125

Which versions are affected by CVE-2026-39856?

It affects 1 product.

Products include Osslsigncode Project Osslsigncode.

How do I fix CVE-2026-39856?

Upgrade to a fixed version.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2026-39856 being exploited?

There is no known exploitation of CVE-2026-39856 in the wild and no public exploit code.

Sources

Also known as DEBIAN-CVE-2026-39856, GHSA-rjrx-chvw-8jw8, UBUNTU-CVE-2026-39856.

Is CVE-2026-39856 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free