Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RUSTSEC-2024-0402: Borsh serialization of HashMap is non-canonical #4971

Open
github-actions bot opened this issue Dec 11, 2024 · 1 comment
Open

RUSTSEC-2024-0402: Borsh serialization of HashMap is non-canonical #4971

github-actions bot opened this issue Dec 11, 2024 · 1 comment

Comments

@github-actions
Copy link

Borsh serialization of HashMap is non-canonical

Details
Package hashbrown
Version 0.15.0
URL rust-lang/hashbrown#576
Date 2024-10-11
Patched versions >=0.15.1
Unaffected versions <0.15.0

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.

See advisory page for additional details.

@dougch
Copy link
Contributor

dougch commented Dec 16, 2024

MSRV bump to 1.65.0 is required to address this https://crates.io/crates/hashbrown/versions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants