{"kind": "product", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "name": "node-node-forge", "product": "node-node-forge", "ecosystem": "Ubuntu:22.04:LTS", "items": [{"id": "CVE-2026-119191", "noindex": false, "published": "2026-10-29T19:26:29.815Z", "modified": "2026-10-29T19:26:29.815Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "severity": "high", "epss": 0.00425, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-119191", "title": "Forge: ASN.1 resource exhaustion via BIT STRING decoding in asn1.fromDer", "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 asn1.fromDer(), BIT STRING decoding, maxDepth to process the relevant input or security decision. node-forge decoded ASN.1 stored inside BIT STRING values without consistently applying the configured maxDepth limit and recursively retained copies at each nesting level. Crafted DER containing nested BIT STRINGs could cause excessive recursion, CPU use, and quadratic memory consumption during asn1.fromDer(). This issue is fixed in version 1.4.1.", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-rhr8-3pm8-cq29", "https://github.com/digitalbazaar/forge/commit/24035c181f41885ea3ec7279e6c0fcf270b6ec4b", "https://github.com/digitalbazaar/forge/commit/523c8e74c28457daeff044230dce4a36313c5ab7"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-119190", "noindex": false, "published": "2026-10-29T19:25:09.677Z", "modified": "2026-10-29T20:25:04.131Z", "cvss": 7.4, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N", "severity": "high", "epss": 0.00246, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-119190", "title": "Forge: X.509 basicConstraints bypass in verifyCertificateChain() via deprecated extension OIDs 2.5.29.10 and 2.5.29.13", "description": "Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.1, node-forge parsed deprecated extension OIDs 2.5.29.10 and 2.5.29.13 as basicConstraints, and pki.verifyCertificateChain() used the first extension with that name. Exploitation requires a CA trusted by the application to issue a certificate carrying an attacker-supplied deprecated-OID extension, commonly because the CA copies extensions from a certificate signing request. By placing a permissive deprecated extension before the genuine 2.5.29.19 basicConstraints extension, the certificate holder could have the certificate accepte", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-5x38-2vff-x55p", "https://github.com/digitalbazaar/forge/commit/58c06bc251856b409c30ecb35a93f5f6c9bbc84a", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-119189", "noindex": false, "published": "2026-10-29T19:23:25.238Z", "modified": "2026-10-29T19:23:25.238Z", "cvss": 5.9, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N", "severity": "medium", "epss": 0.00165, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-119189", "title": "Forge: X.509 pathLenConstraint not enforced by verifyCertificateChain() for CA certificates without keyUsage", "description": "Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.1, node-forge enforced an X.509 CA certificate's basicConstraints.pathLenConstraint only when that certificate also carried a keyUsage extension. Exploitation requires a path-length-constrained CA without keyUsage that chains to a root trusted by the application, and an attacker who holds that CA's private key or obtains a subordinate CA certificate from it. The attacker could then construct a chain exceeding the declared path length that still passed pki.verifyCertificateChain(). Public web PKI CA certificates normally include ke", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-h46v-rmh6-fq4f", "https://github.com/digitalbazaar/forge/commit/696db92348623e88cc63c35f0a89ede481d55ad0", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-119188", "noindex": false, "published": "2026-10-29T19:21:27.347Z", "modified": "2026-10-30T16:09:23.948Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "severity": "high", "epss": 0.00411, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-119188", "title": "Forge: Denial of service in TLS record processing via a record interleaved with a fragmented handshake message", "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 forge.tls.createConnection(), fragmented handshake message, interleaved record to process the relevant input or security decision. node-forge continued processing after a TLS record of another content type interrupted a fragmented handshake message. A remote peer could trigger an uncaught TypeError in process(), causing the connection or hosting process to fail. This issue is fixed in version 1.4.1.", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-8hrf-8g6f-7xwp", "https://github.com/digitalbazaar/forge/commit/700d977d39f9f8f896c55b0763eebb940a2c087e", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-119187", "noindex": false, "published": "2026-10-29T19:19:36.824Z", "modified": "2026-10-29T19:19:36.824Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "severity": "high", "epss": 0.00411, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-119187", "title": "Forge: Denial of service in TLS record processing via call stack exhaustion", "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 forge.tls.createConnection(), TLS record processing, process() to process the relevant input or security decision. node-forge processed received TLS records recursively, consuming one JavaScript stack frame per record in a single input chunk. A remote peer could send thousands of small records together and exhaust the call stack, causing an uncaught exception and denial of service. This issue is fixed in version 1.4.1.", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-hqq3-7jhf-c5jx", "https://github.com/digitalbazaar/forge/commit/817e2ce0d0f6d8a25bc9c2670615c38a9ffdc51c", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-119186", "noindex": false, "published": "2026-10-29T19:17:26.965Z", "modified": "2026-10-29T20:24:15.290Z", "cvss": 5.9, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N", "severity": "medium", "epss": 0.00206, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-119186", "title": "Forge: AES-GCM authentication bypass via unvalidated tagLength option", "description": "Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.1, node-forge did not validate the AES-GCM tagLength option passed to start() during decryption through forge.cipher.createDecipher(). When an application derived tagLength from received data or used an unset or zero-like configuration value, a value that converted to zero together with an empty or missing authentication tag caused the calculated and supplied tags to compare as empty, so decipher.finish() accepted unauthenticated ciphertext. Applications that omit tagLength to use the 128-bit default or pass a fixed valid tag leng", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-5cwg-6vw7-rj6p", "https://github.com/digitalbazaar/forge/commit/236845d96c71207259f91638d0138bba8e2fd624", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-118782", "noindex": false, "published": "2026-10-29T18:51:02.388Z", "modified": "2026-10-29T18:51:02.388Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N", "severity": "high", "epss": 0.00125, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-118782", "title": "Forge: PKCS#12 MAC forgery and constant-key PBE via zero iteration count", "description": "Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.1, node-forge accepted a PKCS#12 MAC or PKCS#12 password-based encryption iteration count of zero or less. pki.pbe.generatePkcs12Key() then returned a constant key independent of the password and salt, allowing crafted PKCS#12 input processed by forge.pkcs12.pkcs12FromAsn1() to bypass password-based integrity checks. Predictable encryption keys and IVs also affected PKCS#12 PBE using pbeWithSHAAnd3-KeyTripleDES-CBC or pbewithSHAAnd40BitRC2-CBC, including shrouded key bags, encrypted SafeContents, and PKCS#8 ENCRYPTED PRIVATE KEY i", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-jc66-7q78-782g", "https://github.com/digitalbazaar/forge/commit/d9584aa56824972858366d5187b3d29e46bf3656", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-118781", "noindex": false, "published": "2026-10-29T18:49:28.661Z", "modified": "2026-10-30T16:09:30.153Z", "cvss": 2.9, "cvss_vector": "CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L", "severity": "low", "epss": 0.00119, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-118781", "title": "Forge: Denial of Service via infinite loop in BigInteger.modInverse() with negative input (incomplete fix of CVE-2026-33891)", "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 BigInteger.prototype.modInverse(), bnModInverse(), lib/jsbn.js, RSA public exponent e to process the relevant input or security decision. node-forge's bundled jsbn implementation entered an infinite loop when BigInteger.prototype.modInverse() received a negative value or modulus. An attacker who could control the RSA public exponent passed to key generation, or a direct modInverse() operand, could block the Node.js event loop at full CPU. Parsed DER, PEM, JWK, PKCS#12, X.509, and TLS values are ", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-h6cr-wjv9-3cpp", "https://github.com/digitalbazaar/forge/commit/e96c47b7f006dec66fb7bb1934e7375498b04a72", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-118780", "noindex": false, "published": "2026-10-29T18:47:35.961Z", "modified": "2026-10-29T18:47:35.961Z", "cvss": 3.7, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L", "severity": "low", "epss": 0.00172, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-118780", "title": "Forge: verifyCertificateChain() removes trusted CA certificates with the same subject from the CA store", "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 pki.verifyCertificateChain(), pki.createCaStore(), duplicate subject names to process the relevant input or security decision. node-forge modified the CA store while trying certificates that shared a subject name during pki.verifyCertificateChain(). A failed chain verification could permanently remove trusted CA certificates from the store, causing later valid chains to fail and creating a persistent availability impact for applications that reused the store. This issue is fixed in version 1.4.1", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-4487-j8r4-4g2f", "https://github.com/digitalbazaar/forge/commit/f6555609bd30f442fbfacd543155928ceccf98d0", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-118779", "noindex": false, "published": "2026-10-29T18:45:55.093Z", "modified": "2026-10-29T20:23:11.602Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "severity": "high", "epss": 0.00556, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-118779", "title": "Forge: Regular expression denial of service in PEM decoding (pem.decode)", "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 pem.decode(), lib/pem.js, missing END line to process the relevant input or security decision. node-forge used polynomial-time regular expressions in pem.decode(), including when searching for a matching END line and parsing encapsulated headers. An unauthenticated attacker able to supply PEM input to any high-level parser could consume excessive CPU with a long malformed message and cause denial of service. This issue is fixed in version 1.4.1.", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-7wch-p9px-956x", "https://github.com/digitalbazaar/forge/commit/412345db583cd28a9d23636d0d93e9f751b935f3", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-118778", "noindex": false, "published": "2026-10-29T18:44:09.502Z", "modified": "2026-10-29T18:44:09.502Z", "cvss": 5.9, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H", "severity": "medium", "epss": 0.00204, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-118778", "title": "Forge: TLS client crash when the server sends no certificate", "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 forge.tls.createConnection(), c.session.serverCertificate, RSA key exchange to process the relevant input or security decision. node-forge's TLS client checked the wrong property when deciding whether a server certificate was missing. A malicious TLS server or on-path peer could omit the Certificate message and reach code that dereferenced the absent certificate, causing an uncaught exception and terminating the connection or process. This issue is fixed in version 1.4.1.", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-525v-9gp9-w22h", "https://github.com/digitalbazaar/forge/commit/7be9fbd40df2e2f15f29fea2846b1c87d58f6888", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-118777", "noindex": false, "published": "2026-10-29T18:42:06.079Z", "modified": "2026-10-30T17:12:06.088Z", "cvss": 4.8, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L", "severity": "medium", "epss": 0.00255, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-118777", "title": "Forge: Prototype Pollution in forge.http cookie handling via a malicious Set-Cookie", "description": "Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.1, the forge.http client stored cookie names and paths from Set-Cookie response headers in ordinary JavaScript objects. A malicious server could use the cookie name __proto__ so that the attacker-controlled cookie path was written as a property on Object.prototype, or use inherited names such as constructor to modify Object. An empty cookie value could use the removal path to delete an inherited Object.prototype property. Applications using forge.http directly or through forge.xhr are affected; applications that do not use forge.h", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-6wvx-3r32-xmcg", "https://github.com/digitalbazaar/forge/commit/797c3f816a22748a96fceebb34eb3a6716853991", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-118776", "noindex": false, "published": "2026-10-29T18:37:32.362Z", "modified": "2026-10-29T18:37:32.362Z", "cvss": 3.7, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N", "severity": "low", "epss": 0.00131, "kev": false, "exploits": ["github-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-118776", "title": "Forge: Incomplete PKCS#7 padding validation in AES/DES CBC and ECB decryption", "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 versio", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-2vgq-wchc-25w7", "https://github.com/digitalbazaar/forge/commit/81774ff99e2da64aec9a43591df45a360040c136", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-118775", "noindex": false, "published": "2026-10-29T18:35:33.776Z", "modified": "2026-10-29T20:22:06.327Z", "cvss": 3.7, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N", "severity": "low", "epss": 0.00313, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-118775", "title": "Forge: ASN.1 OID first arc truncation in asn1.oidToDer", "description": "Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.1, asn1.oidToDer() in lib/asn1.js did not range-check the first two arcs of an OID. An application that accepted an untrusted OID string, checked or authorized that string, and then encoded it with asn1.oidToDer() could emit DER representing a different, trusted OID from the one that was checked. DER parsing is not affected. This issue is fixed in version 1.4.1.", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-4642-5mcj-2rqw", "https://github.com/digitalbazaar/forge/commit/e56a3dde8e4e63bae566bb32546eeaf92f515e1e", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-118774", "noindex": false, "published": "2026-10-29T18:33:46.399Z", "modified": "2026-10-29T18:33:46.399Z", "cvss": 3.7, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N", "severity": "low", "epss": 0.00107, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-118774", "title": "Forge: Certificate signature verified with the issuer's RSA signature scheme", "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 certificate.verify(child), _verifySignature(), lib/x509.js to process the relevant input or security decision. node-forge selected RSA padding and RSASSA-PSS parameters from the issuer certificate rather than the child certificate being verified. A child labeled as RSASSA-PSS could therefore be accepted with a PKCS#1 v1.5 signature when the issuer used PKCS#1 v1.5. The signature still had to be produced with the trusted issuer's private key, so this did not permit certificate identity forgery, b", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-9wg5-mj3p-v49q", "https://github.com/digitalbazaar/forge/commit/c7f42614d5166a77ddf11ce174b2601b14f6956b", "https://github.com/digitalbazaar/forge/releases/tag/v1.4.1"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-85393", "noindex": false, "published": "2026-09-03T18:54:25.878Z", "modified": "2026-09-03T19:14:06.547Z", "cvss": 8.7, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00326, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-85393", "title": "node-forge through 1.4.0 RSA PKCS#1 v1.5 Signature Forgery via Nested DigestAlgorithm Padding", "description": "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.", "references": ["https://github.com/digitalbazaar/forge/issues/1149", "https://github.com/digitalbazaar/forge", "https://github.com/digitalbazaar/forge/blob/v1.4.0/lib/rsa.js"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-33896", "noindex": false, "published": "2026-03-27T20:50:03.418Z", "modified": "2026-09-04T12:04:50.960Z", "cvss": 7.4, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N", "severity": "high", "epss": 0.00361, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-33896", "title": "Forge has a basicConstraints bypass in its certificate chain verification (RFC 5280 violation)", "description": "Forge (also called `node-forge`) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, `pki.verifyCertificateChain()` does not enforce RFC 5280 basicConstraints requirements when an intermediate certificate lacks both the `basicConstraints` and `keyUsage` extensions. This allows any leaf certificate (without these extensions) to act as a CA and sign other certificates, which node-forge will accept as valid. Version 1.4.0 patches the issue.", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-2328-f5f3-gj25", "https://github.com/digitalbazaar/forge/commit/2e492832fb25227e6b647cbe1ac981c123171e90", "https://access.redhat.com/security/cve/CVE-2026-33896"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-33895", "noindex": false, "published": "2026-03-27T20:47:54.492Z", "modified": "2026-09-04T12:04:49.718Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N", "severity": "high", "epss": 0.00527, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-33895", "title": "Forge has signature forgery in Ed25519 due to missing S > L check", "description": "Forge (also called `node-forge`) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, Ed25519 signature verification accepts forged non-canonical signatures where the scalar S is not reduced modulo the group order (`S >= L`). A valid signature and its `S + L` variant both verify in forge, while Node.js `crypto.verify` (OpenSSL-backed) rejects the `S + L` variant, as defined by the specification. This class of signature malleability has been exploited in practice to bypass authentication and authorization logic (see CVE-2026-25793, CVE-2022-35961). Applications relying on signature uniqueness (i.e., ded", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-q67f-28xg-22rw", "https://github.com/digitalbazaar/forge/commit/bdecf11571c9f1a487cc0fe72fe78ff6dfa96b85", "https://datatracker.ietf.org/doc/html/rfc8032#section-8.4"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-33894", "noindex": false, "published": "2026-03-27T20:45:49.583Z", "modified": "2026-09-10T12:04:55.128Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N", "severity": "high", "epss": 0.00481, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-33894", "title": "Forge has signature forgery in RSA-PKCS due to ASN.1 extra field", "description": "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 ", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-ppp5-5v6c-4jwp", "https://datatracker.ietf.org/doc/html/rfc2313#section-8", "https://mailarchive.ietf.org/arch/msg/openpgp/5rnE9ZRN1AokBVj3VqblGlP63QE"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}, {"id": "CVE-2026-33891", "noindex": false, "published": "2026-03-27T20:43:37.725Z", "modified": "2026-09-04T12:04:56.282Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "severity": "high", "epss": 0.00607, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-33891", "title": "Forge has Denial of Service via Infinite Loop in BigInteger.modInverse() with Zero Input", "description": "Forge (also called `node-forge`) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, a Denial of Service (DoS) vulnerability exists in the node-forge library due to an infinite loop in the BigInteger.modInverse() function (inherited from the bundled jsbn library). When modInverse() is called with a zero value as input, the internal Extended Euclidean Algorithm enters an unreachable exit condition, causing the process to hang indefinitely and consume 100% CPU. Version 1.4.0 patches the issue.", "references": ["https://github.com/digitalbazaar/forge/security/advisories/GHSA-5m6q-g25r-mvwx", "https://github.com/digitalbazaar/forge/commit/9bb8d67b99d17e4ebb5fd7596cd699e11f25d023", "https://access.redhat.com/security/cve/CVE-2026-33891"], "fixes": [], "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}]}], "total": 26, "unknown_count": 0, "release_unconfirmed": false, "page": 1, "pages": 2, "filtered": false, "noindex": false, "filters": {}, "page_size": 20, "products": [{"name": "node-node-forge", "path": "vulns/ubuntu-22.04-lts/node-node-forge", "ecosystem": "Ubuntu:22.04:LTS"}], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}, {"name": "web", "path": "vulns/stack/web", "slug": "web"}, {"name": "php", "path": "vulns/stack/php", "slug": "php"}, {"name": "python", "path": "vulns/stack/python", "slug": "python"}, {"name": "node", "path": "vulns/stack/node", "slug": "node"}, {"name": "database", "path": "vulns/stack/database", "slug": "database"}, {"name": "containers", "path": "vulns/stack/containers", "slug": "containers"}, {"name": "network", "path": "vulns/stack/network", "slug": "network"}, {"name": "applications", "path": "vulns/stack/applications", "slug": "applications"}], "versions": [], "stats": {"recent": 15, "kev": 0}, "lastmod": "2026-10-30T17:12:06.088Z", "early_advisories": [], "license": "Подборку PatchFirst и наши дополнения (приоритеты, ранние предупреждения, тексты, сводки и агрегаты) можно свободно использовать для собственных целей, включая внутренние задачи бизнеса. Перепродажа, коммерческое распространение и массовое зеркалирование этой подборки или дополнений допускаются только по письменному соглашению с оператором. При любом использовании или публикации подборки или наших дополнений указывайте PatchFirst (https://ru.patchfirst.dev/vulns/) с этой ссылкой на страницу ленты своего региона. Исходные записи открытых источников остаются под их лицензиями и условиями. Эти условия не ограничивают ваши права на исходные данные, которые можно получить у источников напрямую.", "terms_url": "https://ru.patchfirst.dev/vulns/#feed-terms", "attribution": {"name": "PatchFirst", "url": "https://ru.patchfirst.dev/vulns/"}, "source_changes": "PatchFirst отбирает, нормализует и объединяет записи; могут добавляться сводки и переводы. Новости указываются ссылкой на первоисточник в самой записи.", "sources": [{"id": "cve", "name": "CVE List / CVE.org", "url": "https://www.cve.org/", "license": "CVE Terms of Use", "terms_url": "https://www.cve.org/Legal/TermsOfUse", "notice": "Copyright © 1999–2021, The MITRE Corporation. LICENSE Submissions : For all materials you submit to the Common Vulnerabilities and Exposures (CVE™), you hereby grant to The MITRE Corporation (MITRE) and all CVE Numbering Authorities (CNAs) a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute such materials and derivative works. Unless required by applicable law or agreed to in writing, you provide such materials on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. CVE Usage : MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE™). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. DISCLAIMERS ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN \"AS IS\" BASIS AND THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE MITRE CORPORATION, ITS BOARD OF TRUSTEES, OFFICERS, AGENTS, AND EMPLOYEES, DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION THEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE."}, {"id": "osv", "name": "OSV", "url": "https://osv.dev/", "terms_url": "https://google.github.io/osv.dev/data/", "terms": "Лицензии исходных баз различаются; см. каталог источников."}, {"id": "kev", "name": "CISA KEV", "url": "https://www.cisa.gov/known-exploited-vulnerabilities-catalog", "license": "CC0-1.0", "terms_url": "https://github.com/cisagov/kev-data/blob/develop/LICENSE"}, {"id": "epss", "name": "FIRST EPSS", "url": "https://www.first.org/epss/", "terms_url": "https://www.first.org/epss/faq", "terms": "Оценки доступны свободно; запрашивается указание источника (FIRST EPSS, оценки подготовлены Empirical Security)."}, {"id": "github-advisory", "name": "GitHub Advisory Database", "url": "https://github.com/advisories", "license": "CC-BY-4.0", "terms_url": "https://github.com/github/advisory-database/blob/main/LICENSE.md"}, {"id": "exploitdb", "name": "Exploit-DB", "url": "https://www.exploit-db.com/", "license": "GPL-2.0", "terms_url": "https://gitlab.com/exploit-database/exploitdb/-/blob/main/LICENSE.md"}, {"id": "metasploit", "name": "Metasploit", "url": "https://github.com/rapid7/metasploit-framework", "license": "BSD-3-Clause", "terms_url": "https://github.com/rapid7/metasploit-framework/blob/master/LICENSE", "notice": "Copyright (c) 2006-2026, Rapid7, Inc.\nLicense: BSD-3-clause\n Redistribution and use in source and binary forms, with or without modification,\n are permitted provided that the following conditions are met:\n .\n * Redistributions of source code must retain the above copyright notice,\n this list of conditions and the following disclaimer.\n .\n * Redistributions in binary form must reproduce the above copyright notice,\n this list of conditions and the following disclaimer in the documentation\n and/or other materials provided with the distribution.\n .\n * Neither the name of Rapid7, Inc. nor the names of its contributors\n may be used to endorse or promote products derived from this software\n without specific prior written permission.\n .\n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\n ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."}, {"id": "nuclei", "name": "Nuclei Templates", "url": "https://github.com/projectdiscovery/nuclei-templates", "license": "MIT", "terms_url": "https://github.com/projectdiscovery/nuclei-templates/blob/main/LICENSE.md", "notice": "MIT License\n\nCopyright (c) 2025 ProjectDiscovery, Inc.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE."}, {"id": "linux-kernel", "name": "Linux kernel releases", "url": "https://www.kernel.org/", "license": "CC-BY-SA-4.0", "terms_url": "https://www.kernel.org/legal.html", "notice": "Copyright (C) 1997-2014 by The Linux Kernel Organization, Inc."}]}