
Cloud Vulnerability DB
A community-led vulnerabilities database
The vulnerability RUSTSEC-2024-0402 affects the hashbrown Rust crate version 0.15.0, specifically related to its borsh serialization implementation. The issue was discovered and reported on October 5th, 2024, involving non-canonical serialization of HashMaps (GitHub Issue).
The vulnerability stems from hashbrown's implementation of borsh serialization, which breaks the codec's consistency property by encoding HashMaps via iteration without maintaining a consistent (sorted) order. Additionally, the decode function doesn't verify key ordering, and the implementation incorrectly serializes the hasher and uses usize for length instead of the borsh-specified u32 (GitHub Issue).
This vulnerability could potentially affect security-critical projects using borsh for canonical encodings. In cryptocurrency and blockchain contexts, non-canonical encodings could lead to consensus splits or 'double-spend' scenarios. The impact is particularly relevant in systems where canonical representations are crucial for maintaining system integrity (GitHub Issue).
The issue has been addressed in version 0.15.1 of hashbrown, which removes the borsh serialization functionality. Users are advised to update to version 0.15.1 and switch to using the borsh crate's native HashMap implementation instead of hashbrown's implementation (GitHub Issue).
The vulnerability disclosure was handled through responsible disclosure channels, with the Rust security team determining it was appropriate for public discussion. The community response led to a decision to remove the problematic functionality rather than attempt to fix it (GitHub Issue).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."