Every CVE Search/ Get API key

CVE-2026-33894

Forge has signature forgery in RSA-PKCS due to ASN.1 extra field

7.5 HighFix available

Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, RSASSA PKCS#1 v1.5 signature verification accepts forged signatures for low public exponent keys (e=3). Attackers can forge signatures by stuffing “garbage” bytes within the ASN structure in order to construct a signature that passes verification, enabling Bleichenbacher style forgery. This issue is similar to CVE-2022-24771, but adds bytes in an addition field within the ASN structure, rather than outside of it. Additionally, forge does not validate that signatures include a minimum of 8 bytes of padding as defined by the specification, providing attackers additional space to construct Bleichenbacher forgeries. Version 1.4.0 patches the issue.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
High
Availability
None

Exploit likelihood

0.48%Up 0.5 points since Mar 28, 2026
90%50%10%1%

What each source reports

CVE List Score used 7.5

Forge has signature forgery in RSA-PKCS due to ASN.1 extra field

Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, RSASSA PKCS#1 v1.5 signature verification accepts forged signatures for low public exponent keys (e=3). Attackers can forge signatures by stuffing “garbage” bytes within the ASN structure in order to construct a signature that passes verification, enabling Bleichenbacher style forgery. This issue is similar to CVE-2022-24771, but adds bytes in an addition field within the ASN structure, rather than outside of it. Additionally, forge does not validate that signatures include a minimum of 8 bytes of padding as defined by the specification, providing attackers additional space to construct Bleichenbacher forgeries. Version 1.4.0 patches the issue.

Record
CVE-2026-33894
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-347, CWE-20, CWE-347
Updated
2026-11-02
EUVDEUVD-2026-16834 7.5

Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, RSASSA PKCS#1 v1.5 signature verification accepts forged signatures for low public exponent keys (e=3). Attackers can forge signatures by stuffing “garbage” bytes within the ASN structure in order to construct a signature that passes verification, enabling Bleichenbacher style forgery. This issue is similar to CVE-2022-24771, but adds bytes in an addition field within the ASN structure, rather than outside of it. Additionally, forge does not validate that signatures include a minimum of 8 bytes of padding as defined by the specification, providing attackers additional space to construct Bleichenbacher forgeries. Version 1.4.0 patches the issue.

Record
EUVD-2026-16834
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-ppp5-5v6c-4jwp 7.5

Forge has signature forgery in RSA-PKCS due to ASN.1 extra field

Summary

RSASSA PKCS#1 v1.5 signature verification accepts forged signatures for low public exponent keys (e=3). Attackers can forge signatures by stuffing “garbage” bytes within the ASN structure in order to construct a signature that passes verification, enabling Bleichenbacher style forgery. This issue is similar to CVE-2022-24771, but adds bytes in an addition field within the ASN structure, rather than outside of it.

Additionally, forge does not validate that signatures include a minimum of 8 bytes of padding as defined by the specification, providing attackers additional space to construct Bleichenbacher forgeries.

Impacted Deployments

Tested commit: 8e1d527fe8ec2670499068db783172d4fb9012e5 Affected versions: tested on v1.3.3 (latest release) and recent prior versions.

Configuration assumptions:

  • Invoke key.verify with defaults (default scheme uses RSASSA-PKCS1-v1_5).
  • _parseAllDigestBytes: true (default setting).

Root Cause

In lib/rsa.js, key.verify(...), forge decrypts the signature block, decodes PKCS#1 v1.5 padding (_decodePkcs1_v1_5), parses ASN.1, and compares capture.digest to the provided digest.

Two issues are present with this logic:

  1. Strict DER byte-consumption (_parseAllDigestBytes) only guarantees all bytes are parsed, not that the parsed structure is the canonical minimal DigestInfo shape expected by RFC 8017 verification semantics. A forged EM with attacker-controlled additional ASN.1 content inside the parsed container can still pass forge verification while OpenSSL rejects it.
  2. _decodePkcs1_v1_5 comments mention that PS < 8 bytes should be rejected, but does not implement this logic.

Reproduction Steps

  1. Use Node.js (tested with v24.9.0) and clone digitalbazaar/forge at commit 8e1d527fe8ec2670499068db783172d4fb9012e5.
  2. Place and run the PoC script (repro_min.js) with node repro_min.js in the same level as the forge folder.
  3. The script generates a fresh RSA keypair (4096 bits, e=3), creates a normal control signature, then computes a forged candidate using cube-root interval construction.
  4. The script verifies both signatures with:
  • forge verify (_parseAllDigestBytes: true), and
  • Node/OpenSSL verify (crypto.verify with RSA_PKCS1_PADDING).
  1. Confirm output includes:
  • control-forge-strict: true
  • control-node: true
  • forgery (forge library, strict): true
  • forgery (node/OpenSSL): false

Proof of Concept

Overview:

  • Demonstrates a valid control signature and a forged signature in one run.
  • Uses strict forge parsing mode explicitly (_parseAllDigestBytes: true, also forge default).
  • Uses Node/OpenSSL as an differential verification baseline.
  • Observed output on tested commit:
control-forge-strict: true
control-node: true
forgery (forge library, strict): true
forgery (node/OpenSSL): false

<details><summary>repro_min.js</summary>

#!/usr/bin/env node
'use strict';

const crypto = require('crypto');
const forge = require('./forge/lib/index');

// DER prefix for PKCS#1 v1.5 SHA-256 DigestInfo, without the digest bytes:
// SEQUENCE {
//   SEQUENCE { OID sha256, NULL },
//   OCTET STRING <32-byte digest>
// }
// Hex: 30 0d 06 09 60 86 48 01 65 03 04 02 01 05 00 04 20
const DIGESTINFO_SHA256_PREFIX = Buffer.from(
  '300d060960864801650304020105000420',
  'hex'
);

const toBig = b => BigInt('0x' + (b.toString('hex') || '0'));
function toBuf(n, len) {
  let h = n.toString(16);
  if (h.length % 2) h = '0' + h;
  const b = Buffer.from(h, 'hex');
  return b.length < len ? Buffer.concat([Buffer.alloc(len - b.length), b]) : b;
}
function cbrtFloor(n) {
  let lo = 0n;
  let hi = 1n;
  while (hi * hi * hi <= n) hi <<= 1n;
  while (lo + 1n < hi) {
    const…
Record
GHSA-ppp5-5v6c-4jwp
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-20, CWE-347
Updated
2026-11-02
NVD 7.5

Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, RSASSA PKCS#1 v1.5 signature verification accepts forged signatures for low public exponent keys (e=3). Attackers can forge signatures by stuffing “garbage” bytes within the ASN structure in order to construct a signature that passes verification, enabling Bleichenbacher style forgery. This issue is similar to CVE-2022-24771, but adds bytes in an addition field within the ASN structure, rather than outside of it. Additionally, forge does not validate that signatures include a minimum of 8 bytes of padding as defined by the specification, providing attackers additional space to construct Bleichenbacher forgeries. Version 1.4.0 patches the issue.

Record
CVE-2026-33894
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-20, CWE-347
Updated
2026-11-02
OSV 7.5

Forge has signature forgery in RSA-PKCS due to ASN.1 extra field

Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, RSASSA PKCS#1 v1.5 signature verification accepts forged signatures for low public exponent keys (e=3). Attackers can forge signatures by stuffing “garbage” bytes within the ASN structure in order to construct a signature that passes verification, enabling Bleichenbacher style forgery. This issue is similar to CVE-2022-24771, but adds bytes in an addition field within the ASN structure, rather than outside of it. Additionally, forge does not validate that signatures include a minimum of 8 bytes of padding as defined by the specification, providing attackers additional space to construct Bleichenbacher forgeries. Version 1.4.0 patches the issue.

Record
CVE-2026-33894
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-20, CWE-347
Updated
2026-11-02
OSVCVE-2026-85393 8.7

node-forge through 1.4.0 RSA PKCS#1 v1.5 Signature Forgery via Nested DigestAlgorithm Padding

node-forge through 1.4.0 fails to validate element count in nested DigestAlgorithm sequences during RSA PKCS#1 v1.5 signature verification. Attackers can embed garbage bytes inside the DigestAlgorithm sequence to forge valid signatures for arbitrary messages using low-exponent RSA keys. This is an incomplete fix for CVE-2026-33894.

Record
CVE-2026-85393
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-347
Updated
2026-11-02
Show 7 moreShow less
OSVGHSA-86w9-cpqp-85rv 8.7

node-forge RSA PKCS#1 v1.5 signature verification accepts extra nested DigestAlgorithm elements

node-forge through 1.4.0 fails to validate element count in nested DigestAlgorithm sequences during RSA PKCS#1 v1.5 signature verification. Attackers can embed garbage bytes inside the DigestAlgorithm sequence to forge valid signatures for arbitrary messages using low-exponent RSA keys. This is an incomplete fix for CVE-2026-33894.

Record
GHSA-86w9-cpqp-85rv
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-347
Updated
2026-11-02
OSVGHSA-ppp5-5v6c-4jwp 7.5

Forge has signature forgery in RSA-PKCS due to ASN.1 extra field

Summary

RSASSA PKCS#1 v1.5 signature verification accepts forged signatures for low public exponent keys (e=3). Attackers can forge signatures by stuffing “garbage” bytes within the ASN structure in order to construct a signature that passes verification, enabling Bleichenbacher style forgery. This issue is similar to CVE-2022-24771, but adds bytes in an addition field within the ASN structure, rather than outside of it.

Additionally, forge does not validate that signatures include a minimum of 8 bytes of padding as defined by the specification, providing attackers additional space to construct Bleichenbacher forgeries.

Impacted Deployments

Tested commit: 8e1d527fe8ec2670499068db783172d4fb9012e5 Affected versions: tested on v1.3.3 (latest release) and recent prior versions.

Configuration assumptions:

  • Invoke key.verify with defaults (default scheme uses RSASSA-PKCS1-v1_5).
  • _parseAllDigestBytes: true (default setting).

Root Cause

In lib/rsa.js, key.verify(...), forge decrypts the signature block, decodes PKCS#1 v1.5 padding (_decodePkcs1_v1_5), parses ASN.1, and compares capture.digest to the provided digest.

Two issues are present with this logic:

  1. Strict DER byte-consumption (_parseAllDigestBytes) only guarantees all bytes are parsed, not that the parsed structure is the canonical minimal DigestInfo shape expected by RFC 8017 verification semantics. A forged EM with attacker-controlled additional ASN.1 content inside the parsed container can still pass forge verification while OpenSSL rejects it.
  2. _decodePkcs1_v1_5 comments mention that PS < 8 bytes should be rejected, but does not implement this logic.

Reproduction Steps

  1. Use Node.js (tested with v24.9.0) and clone digitalbazaar/forge at commit 8e1d527fe8ec2670499068db783172d4fb9012e5.
  2. Place and run the PoC script (repro_min.js) with node repro_min.js in the same level as the forge folder.
  3. The script generates a fresh RSA keypair (4096 bits, e=3), creates a normal control signature, then computes a forged candidate using cube-root interval construction.
  4. The script verifies both signatures with:
  • forge verify (_parseAllDigestBytes: true), and
  • Node/OpenSSL verify (crypto.verify with RSA_PKCS1_PADDING).
  1. Confirm output includes:
  • control-forge-strict: true
  • control-node: true
  • forgery (forge library, strict): true
  • forgery (node/OpenSSL): false

Proof of Concept

Overview:

  • Demonstrates a valid control signature and a forged signature in one run.
  • Uses strict forge parsing mode explicitly (_parseAllDigestBytes: true, also forge default).
  • Uses Node/OpenSSL as an differential verification baseline.
  • Observed output on tested commit:
control-forge-strict: true
control-node: true
forgery (forge library, strict): true
forgery (node/OpenSSL): false

<details><summary>repro_min.js</summary>

#!/usr/bin/env node
'use strict';

const crypto = require('crypto');
const forge = require('./forge/lib/index');

// DER prefix for PKCS#1 v1.5 SHA-256 DigestInfo, without the digest bytes:
// SEQUENCE {
//   SEQUENCE { OID sha256, NULL },
//   OCTET STRING <32-byte digest>
// }
// Hex: 30 0d 06 09 60 86 48 01 65 03 04 02 01 05 00 04 20
const DIGESTINFO_SHA256_PREFIX = Buffer.from(
  '300d060960864801650304020105000420',
  'hex'
);

const toBig = b => BigInt('0x' + (b.toString('hex') || '0'));
function toBuf(n, len) {
  let h = n.toString(16);
  if (h.length % 2) h = '0' + h;
  const b = Buffer.from(h, 'hex');
  return b.length < len ? Buffer.concat([Buffer.alloc(len - b.length), b]) : b;
}
function cbrtFloor(n) {
  let lo = 0n;
  let hi = 1n;
  while (hi * hi * hi <= n) hi <<= 1n;
  while (lo + 1n < hi) {
    const…
Record
GHSA-ppp5-5v6c-4jwp
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-20, CWE-347
Updated
2026-11-02
OSVRHSA-2026:24761 7.8

Red Hat Security Advisory: Red Hat Ansible Automation Platform 2.5 Product Security and Bug Fix Update

Record
RHSA-2026:24761
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H
Updated
2026-11-02
OSVROOT-APP-NPM-CVE-2026-33894 7.5

CVE-2026-33894 in node-forge - Patched by Root

Root has patched CVE-2026-33894 in the node-forge package for Root:npm. Multiple fixed versions available.

Record
ROOT-APP-NPM-CVE-2026-33894
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-06
OSVUBUNTU-CVE-2026-33894 7.5

Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, RSASSA PKCS#1 v1.5 signature verification accepts forged signatures for low public exponent keys (e=3). Attackers can forge signatures by stuffing “garbage” bytes within the ASN structure in order to construct a signature that passes verification, enabling Bleichenbacher style forgery. This issue is similar to CVE-2022-24771, but adds bytes in an addition field within the ASN structure, rather than outside of it. Additionally, forge does not validate that signatures include a minimum of 8 bytes of padding as defined by the specification, providing attackers additional space to construct Bleichenbacher forgeries. Version 1.4.0 patches the issue.

Record
UBUNTU-CVE-2026-33894
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVCLSA-2026-1775176134 No score

TuxCare security update for node-forge (4 CVEs)

TuxCare rebuilt node-forge to address 4 CVEs. Fixed in 0.10.0-tuxcare.6.

Record
CLSA-2026-1775176134
Updated
2026-11-02
OSVCLSA-2026-1791467333 No score

TuxCare security update for node-forge (3 CVEs)

TuxCare rebuilt node-forge to address 3 CVEs. Fixed in 1.3.3-tuxcare.2.

Record
CLSA-2026-1791467333
Updated
2026-11-02

Affected products

Show 13 moreShow less

Affected packages

Affected packages
PackageAffectedFixed
node-forge
npm
before 1.4.0
1.4.0
node-forge
TuxCare:npm
From an advisory covering 4 CVEs
0.10.0-tuxcare.0 up to 0.10.0-tuxcare.6, plus listed versions
0.10.00.10.0-tuxcare.10.10.0-tuxcare.20.10.0-tuxcare.30.10.0-tuxcare.40.10.0-tuxcare.5
0.10.0-tuxcare.6
node-forge
TuxCare:npm
From an advisory covering 3 CVEs
1.3.3-tuxcare.0 up to 1.3.3-tuxcare.2, plus listed versions
1.3.31.3.3-tuxcare.1
1.3.3-tuxcare.2
node-forge
npm
From an advisory covering 2 CVEs
through 1.4.0 None known
node-forge
npm
From an advisory covering 2 CVEs
before 1.4.0
1.4.0
automation-gateway-server
Red Hat:ansible_automation_platform:2.5::el8
From an advisory covering 16 CVEs
before 0:2.5.20260422-3.el8ap
0:2.5.20260422-3.el8ap
automation-gateway-server
Red Hat:ansible_automation_platform:2.5::el9
From an advisory covering 16 CVEs
before 0:2.5.20260422-3.el9ap
0:2.5.20260422-3.el9ap
python3.12-click
Red Hat:ansible_automation_platform_developer:2.5::el8
From an advisory covering 16 CVEs
before 0:8.3.3-1.el8ap
0:8.3.3-1.el8ap
python3.12-click
Red Hat:ansible_automation_platform_inside:2.5::el8
From an advisory covering 16 CVEs
before 0:8.3.3-1.el8ap
0:8.3.3-1.el8ap
python3.12-click
Red Hat:ansible_automation_platform:2.5::el8
From an advisory covering 16 CVEs
before 0:8.3.3-1.el8ap
0:8.3.3-1.el8ap
Show 25 moreShow less
Affected packages
PackageAffectedFixed
python3.12-click
Red Hat:ansible_automation_platform_developer:2.5::el9
From an advisory covering 16 CVEs
before 0:8.3.3-1.el9ap
0:8.3.3-1.el9ap
python3.12-click
Red Hat:ansible_automation_platform_inside:2.5::el9
From an advisory covering 16 CVEs
before 0:8.3.3-1.el9ap
0:8.3.3-1.el9ap
python3.12-click
Red Hat:ansible_automation_platform:2.5::el9
From an advisory covering 16 CVEs
before 0:8.3.3-1.el9ap
0:8.3.3-1.el9ap
automation-controller-venv-tower
Red Hat:ansible_automation_platform:2.5::el8
From an advisory covering 16 CVEs
before 0:4.6.29-2.el8ap
0:4.6.29-2.el8ap
automation-controller-venv-tower
Red Hat:ansible_automation_platform:2.5::el9
From an advisory covering 16 CVEs
before 0:4.6.29-2.el9ap
0:4.6.29-2.el9ap
receptor
Red Hat:ansible_automation_platform_developer:2.5::el8
From an advisory covering 16 CVEs
before 0:1.6.5-1.el8ap
0:1.6.5-1.el8ap
receptor
Red Hat:ansible_automation_platform_inside:2.5::el8
From an advisory covering 16 CVEs
before 0:1.6.5-1.el8ap
0:1.6.5-1.el8ap
automation-gateway-proxy-server
Red Hat:ansible_automation_platform:2.5::el8
From an advisory covering 16 CVEs
before 0:2.5.10-6.el8ap
0:2.5.10-6.el8ap
receptor
Red Hat:ansible_automation_platform:2.5::el8
From an advisory covering 16 CVEs
before 0:1.6.5-1.el8ap
0:1.6.5-1.el8ap
receptor
Red Hat:ansible_automation_platform_developer:2.5::el9
From an advisory covering 16 CVEs
before 0:1.6.5-1.el9ap
0:1.6.5-1.el9ap
receptor
Red Hat:ansible_automation_platform_inside:2.5::el9
From an advisory covering 16 CVEs
before 0:1.6.5-1.el9ap
0:1.6.5-1.el9ap
automation-gateway-proxy-server
Red Hat:ansible_automation_platform:2.5::el9
From an advisory covering 16 CVEs
before 0:2.6.14-3.el9ap
0:2.6.14-3.el9ap
receptor
Red Hat:ansible_automation_platform:2.5::el9
From an advisory covering 16 CVEs
before 0:1.6.5-1.el9ap
0:1.6.5-1.el9ap
python3.12-cryptography
Red Hat:ansible_automation_platform_developer:2.5::el8
From an advisory covering 16 CVEs
before 0:46.0.7-1.el8ap
0:46.0.7-1.el8ap
python3.12-cryptography
Red Hat:ansible_automation_platform_inside:2.5::el8
From an advisory covering 16 CVEs
before 0:46.0.7-1.el8ap
0:46.0.7-1.el8ap
python3.12-cryptography
Red Hat:ansible_automation_platform:2.5::el8
From an advisory covering 16 CVEs
before 0:46.0.7-1.el8ap
0:46.0.7-1.el8ap
python3.12-cryptography
Red Hat:ansible_automation_platform_developer:2.5::el9
From an advisory covering 16 CVEs
before 0:46.0.7-1.el9ap
0:46.0.7-1.el9ap
python3.12-cryptography
Red Hat:ansible_automation_platform_inside:2.5::el9
From an advisory covering 16 CVEs
before 0:46.0.7-1.el9ap
0:46.0.7-1.el9ap
python3.12-cryptography
Red Hat:ansible_automation_platform:2.5::el9
From an advisory covering 16 CVEs
before 0:46.0.7-1.el9ap
0:46.0.7-1.el9ap
python3.12-pillow
Red Hat:ansible_automation_platform:2.5::el8
From an advisory covering 16 CVEs
before 0:12.2.0-1.el8ap
0:12.2.0-1.el8ap
python3.12-pillow
Red Hat:ansible_automation_platform:2.5::el9
From an advisory covering 16 CVEs
before 0:12.2.0-1.el9ap
0:12.2.0-1.el9ap
node-forge
Root:npm
before 1.3.1-aikido.5
1.3.1-aikido.50.10.0-aikido.20.7.1-aikido.21.3.3-aikido.30.7.1-aikido.30.7.1-aikido.41.3.3-aikido.40.7.6-aikido.10.10.0-aikido.30.7.1-aikido.50.7.1-aikido.60.7.1-aikido.70.7.6-aikido.21.3.0-aikido.41.3.2-aikido.10.9.0-aikido.11.0.0-aikido.11.3.3-aikido.50.9.0-aikido.20.10.0-aikido.41.3.1-aikido.61.3.3-aikido.61.4.0-aikido.11.4.0-aikido.21.4.0-aikido.31.4.0-aikido.41.4.0-aikido.5
@rootio/node-forge
Root:npm
before 1.3.3-root.io.2
1.3.3-root.io.21.3.1-root.io.31.3.1-root.io.41.3.1-root.io.50.7.1-root.io.20.10.0-root.io.20.10.0-root.io.10.7.1-root.io.11.3.3-root.io.30.7.1-root.io.30.7.1-root.io.41.3.3-root.io.40.7.6-root.io.10.10.0-root.io.30.7.1-root.io.50.7.1-root.io.60.7.1-root.io.70.7.6-root.io.21.3.0-root.io.41.3.2-root.io.10.9.0-root.io.11.0.0-root.io.11.3.3-root.io.50.9.0-root.io.20.10.0-root.io.41.3.1-root.io.61.3.3-root.io.61.4.0-root.io.11.4.0-root.io.21.4.0-root.io.31.4.0-root.io.41.4.0-root.io.5
node-node-forge
Ubuntu:20.04:LTS
All versions, plus listed versions
0.8.5~dfsg-20.9.1~dfsg-1
None known
node-node-forge
Ubuntu:22.04:LTS
All versions, plus listed versions
0.10.0~dfsg-31.2.1~dfsg-2
None known

History

History
RecordedChangedSources
affected
affected, factsOSV
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

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

In short

CVE-2026-33894 is a high vulnerability (CVSS 7.5) in Digitalbazaar Forge, published March 26, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.48%, the 41st percentile. Fixed in node-forge 1.4.0.

References

Show 129 moreShow less
This page doesn't list everything

Left out here: the rest of 2 source descriptions. The JSON record has them.

MoveEnter Open