Bug 2417397 (CVE-2025-66031)

Summary: CVE-2025-66031 node-forge: node-forge ASN.1 Unbounded Recursion
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security DevOps Team <prodsec-dev>
Status: NEW --- QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: aazores, abarbaro, abrianik, adudiak, alcohan, alizardo, amctagga, anjoseph, anpicker, anthomas, aoconnor, bbrownin, bdettelb, bniver, bparees, brasmith, carogers, caswilli, cmah, cochase, dbosanac, dhanak, doconnor, dranck, drosa, dymurray, eaguilar, ebaron, ehelms, erezende, eric.wittmann, flucifre, ggainey, ggrzybek, gmalinko, gmeno, gparvin, groman, haoli, hasun, hkataria, ibek, ibolton, jajackso, janstey, jbalunas, jcammara, jcantril, jchui, jfula, jhe, jkoehler, jmatthew, jmitchel, jmontleo, jneedle, jolong, jowilson, jprabhak, jreimann, jrokos, juwatts, jwong, kaycoth, kegrant, koliveir, kshier, ktsao, kverlaen, lchilton, lphiri, mabashia, manissin, mbenjamin, mdessi, mhackett, mhulan, mnovotny, mrizzi, mwringe, nboldt, nipatil, nmoumoul, nyancey, omaciel, ometelka, osousa, owatkins, pahickey, pantinor, parichar, pbizzarr, pbraun, pcattana, pcreech, pdelbell, pgaikwad, pjindal, psrna, ptisnovs, rchan, rhaigner, rjohnson, rkubis, rojacob, rstepani, sausingh, sdawley, sfeifer, shvarugh, simaishi, slucidi, smallamp, smcdonal, sostapov, sseago, stcannon, syedriko, tasato, teagle, tfister, thavo, tmalecek, ttakamiy, vereddy, wtam, xdharmai, yguenane
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
An ASN.1 Denial of Service (Dos) vulnerability exists in the node-forge asn1.fromDer function within forge/lib/asn1.js. The ASN.1 DER parser implementation (_fromDer) recurses for every constructed ASN.1 value (SEQUENCE, SET, etc.) and lacks a guard limiting recursion depth. An attacker can craft a small DER blob containing a very large nesting depth of constructed TLVs which causes the Node.js V8 engine to exhaust its call stack and throw RangeError: Maximum call stack size exceeded, crashing or incapacitating the process handling the parse. This is a remote, low-cost Denial-of-Service against applications that parse untrusted ASN.1 objects.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2418518, 2418519, 2418521, 2418523, 2418524, 2418525, 2418527, 2418528, 2418520, 2418522, 2418526    
Bug Blocks:    

Description OSIDB Bzimport 2025-11-26 23:02:00 UTC
Forge (also called `node-forge`) is a native implementation of Transport Layer Security in JavaScript. An Uncontrolled Recursion vulnerability in node-forge versions 1.3.1 and below enables remote, unauthenticated attackers to craft deep ASN.1 structures that trigger unbounded recursive parsing. This leads to a Denial-of-Service (DoS) via stack exhaustion when parsing untrusted DER inputs. This issue has been patched in version 1.3.2.