Open
Conversation
5bda55d to
b57d97b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.3.3→1.4.0Release Notes
digitalbazaar/forge (node-forge)
v1.4.0Compare Source
Security
BigInteger.modInverse()the
BigInteger.modInverse()function (inherited from the bundled jsbnlibrary). When
modInverse()is called with a zero value as input, theinternal Extended Euclidean Algorithm enters an unreachable exit condition,
causing the process to hang indefinitely and consume 100% CPU.
public exponent keys (e=3). Attackers can forge signatures by stuffing
"garbage" bytes within the ASN.1 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.1 structure, rather than outside of it.
8 bytes of padding as defined by the specification, providing attackers
additional space to construct Bleichenbacher forgeries.
Ed25519due to missing S < L check.Ed25519signature verification accepts forged non-canonical signatureswhere 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., dedup by signature bytes, replay tracking, signed-object
canonicalization checks) may be bypassed.
basicConstraintsbypass in certificate chain verification.pki.verifyCertificateChain()does not enforce RFC 5280basicConstraintsrequirements when an intermediate certificate lacks both the
basicConstraintsandkeyUsageextensions. This allows any leafcertificate (without these extensions) to act as a CA and sign other
certificates, which node-forge will accept as valid.
Added
2.5.4.65/pseudonymChanged
jsbn1.4. Sync partly back to original style for easierupdates every decade or so.
Fixed
BigInteger.modInverseto avoid an infinite loop and exit earlywith zero when the target object value is <= 0. Zero may not be strictly
mathematically correct but aligns with current
jsbnbehavior returning zeroin other situations. The alternate of a
RangeErrorwould diverge from therest of the API.
required to be eight octets for block types 1 and 2.
ed25519] Add canonical signature scaler check for S < L.basicConstraintson non-leafcertificates.
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.