Bsv rs: Transaction readers accept trailing bytes, so a parsed transaction can carry another transaction id
Affects bsv-rsSource GCVE Database
CVSS 5.3 Medium : upgrade to 0.9.0-beta.7.0 or 0.8.5 when convenient.
Data as of 12 Nov 2026, 08:07 UTC
- Patch
- Available – fixed in 0.9.0-beta.7.0, 0.8.5
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:NWhat to do
Upgrade bsv-rs to 0.9.0-beta.7.0 or 0.8.5.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
crates.iobsv-rspkg:cargo/bsv-rsOther threats | Affected
| Fixed in
|
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 version 0.8.5 or later, or 0.9.0-beta.7.0 or later, where trailing bytes after a transaction are rejected. If upgrading is not possible, parse transactions with Transaction::from_binary, call tx.invalidate_caches(), and verify that tx.to_binary() exactly matches the input bytes to ensure no trailing data is present.
Description
The bsv-rs library versions before 0.8.5 and certain beta versions allow transaction readers to accept trailing bytes after a parsed transaction. This causes the transaction's cached serialization and ID to include extra bytes, potentially resulting in a transaction being identified by a different ID than expected. The issue is fixed in versions 0.8.5 and 0.9.0-beta.7.0.