CVE-2026-39855
osslsigncode has an Integer Underflow in PE Page Hash Calculation Can Cause Out-of-Bounds Read
Description
osslsigncode is a tool that implements Authenticode signing and timestamping. Prior to 2.13, an integer underflow vulnerability exists in osslsigncode version 2.12 and earlier in the PE page-hash computation code (pe_page_hash_calc()). When page hash processing is performed on a PE file, the function subtracts hdrsize from pagesize without first validating that pagesize >= hdrsize. If a malicious PE file sets SizeOfHeaders (hdrsize) larger than SectionAlignment (pagesize), the subtraction underflows and produces a very large unsigned length. The code allocates a zero-filled buffer of pagesize bytes and then attempts to hash pagesize - hdrsize bytes from that buffer. After the underflow, this results in an out-of-bounds read from the heap and can crash 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.
INFO
Published Date :
April 9, 2026, 5:16 p.m.
Last Modified :
Oct. 26, 2026, 10:10 p.m.
Remotely Exploit :
No
Source :
[email protected]
Affected Products
The following products are affected by CVE-2026-39855
vulnerability.
Even if cvefeed.io is aware of the exact versions of the
products
that
are
affected, the information is not represented in the table below.
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS | 134c704f-9b21-4f2e-91b3-4a467353bcc0 | |||||
| CVSS 3.1 | MEDIUM | [email protected] |
Solution
- Update osslsigncode to version 2.13 or later.
- Avoid processing untrusted PE files with page hashing enabled.
- Verify signed PE files carefully.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-39855.
| URL | Resource |
|---|---|
| https://github.com/mtrojnar/osslsigncode/commit/2a5409b7c4b6c6fad2b093531e8fea6cf08e1568 | Patch |
| https://github.com/mtrojnar/osslsigncode/releases/tag/2.13 | Product Release Notes |
| https://github.com/mtrojnar/osslsigncode/security/advisories/GHSA-76vv-x5rr-q3mr | Patch Vendor Advisory |
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-39855 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-39855
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-39855 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-39855 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Translated by [email protected]
Oct. 26, 2026
Action Type Old Value New Value Added Translation Title: osslsigncode de mtrojnar, Description: osslsigncode es una herramienta que implementa la firma Authenticode y el sellado de tiempo. Antes de la versión 2.13, existe una vulnerabilidad de desbordamiento negativo de enteros en osslsigncode versión 2.12 y anteriores en el código de cálculo de hash de página PE (pe_page_hash_calc()). Cuando se realiza el procesamiento de hash de página en un archivo PE, la función resta hdrsize de pagesize sin validar primero que pagesize >= hdrsize. Si un archivo PE malicioso establece SizeOfHeaders (hdrsize) mayor que SectionAlignment (pagesize), la resta sufre un desbordamiento negativo y produce una longitud sin signo muy grande. El código asigna un búfer rellenado con ceros de pagesize bytes y luego intenta aplicar hash a pagesize - hdrsize bytes de ese búfer. Después del desbordamiento negativo, esto resulta en una lectura fuera de límites de la pila y puede bloquear el proceso. La vulnerabilidad puede ser activada mientras se firma un archivo PE malicioso con el hash de página habilitado (-ph), o mientras se verifica un archivo PE firmado malicioso que ya contiene hashes de página. La verificación de un archivo ya firmado no requiere que el verificador pase -ph. Esta vulnerabilidad está corregida en la versión 2.13. -
CVE Modified by [email protected]
Jun. 17, 2026
Action Type Old Value New Value Added Affected [{'vendor': 'mtrojnar', 'product': 'osslsigncode', 'versions': [{'status': 'affected', 'version': '< 2.13'}]}] -
CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0
Jun. 17, 2026
Action Type Old Value New Value Added SSVC {'id': 'CVE-2026-39855', 'role': 'CISA Coordinator', 'options': [{'exploitation': 'none'}, {'automatable': 'no'}, {'technicalImpact': 'partial'}], 'version': '2.0.3', 'timestamp': '2026-04-09T19:12:57.585841Z'} -
Initial Analysis by [email protected]
Apr. 17, 2026
Action Type Old Value New Value Added CPE Configuration OR *cpe:2.3:a:osslsigncode_project:osslsigncode:*:*:*:*:*:*:*:* versions up to (excluding) 2.13 Added Reference Type GitHub, Inc.: https://github.com/mtrojnar/osslsigncode/commit/2a5409b7c4b6c6fad2b093531e8fea6cf08e1568 Types: Patch Added Reference Type GitHub, Inc.: https://github.com/mtrojnar/osslsigncode/releases/tag/2.13 Types: Product, Release Notes Added Reference Type GitHub, Inc.: https://github.com/mtrojnar/osslsigncode/security/advisories/GHSA-76vv-x5rr-q3mr Types: Patch, Vendor Advisory -
New CVE Received by [email protected]
Apr. 09, 2026
Action Type Old Value New Value Added Description osslsigncode is a tool that implements Authenticode signing and timestamping. Prior to 2.13, an integer underflow vulnerability exists in osslsigncode version 2.12 and earlier in the PE page-hash computation code (pe_page_hash_calc()). When page hash processing is performed on a PE file, the function subtracts hdrsize from pagesize without first validating that pagesize >= hdrsize. If a malicious PE file sets SizeOfHeaders (hdrsize) larger than SectionAlignment (pagesize), the subtraction underflows and produces a very large unsigned length. The code allocates a zero-filled buffer of pagesize bytes and then attempts to hash pagesize - hdrsize bytes from that buffer. After the underflow, this results in an out-of-bounds read from the heap and can crash 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. Added CVSS V3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H Added CWE CWE-125 Added CWE CWE-190 Added CWE CWE-191 Added Reference https://github.com/mtrojnar/osslsigncode/commit/2a5409b7c4b6c6fad2b093531e8fea6cf08e1568 Added Reference https://github.com/mtrojnar/osslsigncode/releases/tag/2.13 Added Reference https://github.com/mtrojnar/osslsigncode/security/advisories/GHSA-76vv-x5rr-q3mr