We found results for “


Good to know:


Date: January 31, 2021

Affected versions of nano_arena crate assumed that Borrow<Idx> was guaranteed to return the same value on .borrow(). The borrowed index value was used to retrieve a mutable reference to a value. If the Borrow<Idx> implementation returned a different index, the split arena would allow retrieving the index as a mutable reference creating two mutable references to the same element. This violates Rust’s aliasing rules and allows for memory safety issues such as writing out of bounds and use-after-frees. The flaw was corrected in version 0.5.2 by storing the .borrow() value in a temporary variable.

Language: RUST

Severity Score

Severity Score

Weakness Type (CWE)

Use After Free


Top Fix


Upgrade Version

Upgrade to version v0.5.2

Learn More

CVSS v3.1

Base Score:
Attack Vector (AV): LOCAL
Attack Complexity (AC): LOW
Privileges Required (PR): NONE
User Interaction (UI): NONE
Confidentiality (C): NONE
Integrity (I): NONE
Availability (A): LOW

Do you need more information?

Contact Us