Borsh serialization of HashMap is non-canonical
Priority LOW 38CWE-502Published · Updated
Key facts
- Attack vector
- —
- Privileges required
- —
- User interaction
- —
- Attack complexity
- —
- Impact type
- Code execution
- Confidentiality · integrity · availability
- —
- Fix status
- Fixed
No CVSS vector from any source. Fix status from GitHub. Impact type from CWE-502.
Summary
The borsh serialization of the HashMap did not follow the borsh specification. It potentially produced non-canonical encodings dependent on insertion order. It also did not perform canonicty checks on decoding. This can result in consensus splits and cause equivalent objects to be considered distinct. This was patched in 0.15.1.
Why it matters now
Fix Fixed hashbrown (crates.io): 0.15.1
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| — | hashbrown (crates.io) | 0.15.0 to before 0.15.1 | 0.15.1 | Patch available | GHSA-wwq9-3cpr-mm53 |
- hashbrown (crates.io) Vendor— Affected 0.15.0 to before 0.15.1 Fixed in 0.15.1 Patch available GHSA-wwq9-3cpr-mm53
Remediation
- Fix · GHSA-wwq9-3cpr-mm53 hashbrown (crates.io) Fixed in 0.15.1 Advisory →
Timeline
- 2026-10-03 Threatist record created from GHSA-wwq9-3cpr-mm53
References
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences