Vulnerability · Published Oct 29, 2026 · Assigned by GitHub_M

CVE-2026-118776Forge: Incomplete PKCS#7 padding validation in AES/DES CBC and ECB decryption

Low 3.7

In plain English

A low-severity improper input validation in forge from digitalbazaar. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.1% (higher than 3% of all known vulnerabilities). Ready-made attack tooling exists: public proof-of-concept code.

Severity (CVSS 3.1)3.7Low
Exploit odds (30 days)0.1%top 96.9% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack tooling1Public PoC

Official description

Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.1, the affected implementation used decipher.finish(), CBC and ECB modes, PKCS#7 padding to process the relevant input or security decision. node-forge validated only the final byte of PKCS#7 padding during CBC and ECB decryption and accepted zero, oversized, or mismatched padding bytes. Malformed ciphertext could consequently be accepted and up to four plaintext blocks could be silently removed, causing an integrity failure in applications that treated successful decryption as proof of valid padding. This issue is fixed in version 1.4.1.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Ubuntu:22.04:LTSnode-node-forgeno fix listedUBUNTU-CVE-2026-118776

Affected products (as reported)

VendorProductVersions
digitalbazaar forge < 1.4.1

Weakness: CWE-20, CWE-354 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N

References