Skip to main content
VulnerabilityPublished

Bsv rs: Signature::from_der reads a signature with bytes after it, a wrong sequence length or an unneeded zero as the

Affects bsv-rsSource GCVE Database

0

CVSS 5.3 Medium : upgrade to 0.9.0-beta.7.0 or 0.8.6 when convenient.

Data as of 12 Nov 2026, 08:07 UTC

CVSS 3.1 base score
5.3Medium
How severe the flaw is on the 0–10 CVSS scale.
Patch
Available – fixed in 0.9.0-beta.7.0, 0.8.6
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

What to do

Upgrade bsv-rs to 0.9.0-beta.7.0 or 0.8.6.

Affected software

ProductAffectedFixed in
crates.iobsv-rspkg:cargo/bsv-rsOther threatsAffected
  • >=0.0.0-0 <0.8.6
  • >=0.9.0-beta.1 <0.9.0-beta.7.0
Fixed in
  • 0.8.6
  • 0.9.0-beta.7.0

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

Upgrade to bsv-rs versions 0.8.6 or later, or 0.9.0-beta.7.0 or later, where the Signature::from_der function rejects malformed signatures with extra bytes, incorrect sequence lengths, or unnecessary leading zeros. Additionally, applications that rely on signature byte uniqueness should implement checks using Signature::is_low_s() to ensure low-S normalization is enforced.

Description

The bsv-rs library's Signature::from_der function leniently parses DER-encoded ECDSA signatures, allowing signatures with extra trailing bytes, incorrect sequence lengths, or unnecessary leading zeros in R or S values. This leniency causes multiple distinct byte strings to verify as the same signature over the same data, potentially impacting applications that compare, hash, or store signature bytes. The issue is fixed in versions 0.8.6 and 0.9.0-beta.7.0, which reject these malformed signatures. However, signature byte uniqueness is not fully guaranteed due to the nature of ECDSA's low-S normalization.

References

Community reviews

Loading reviews…