RUSTSEC-2021-0121
Dashboard / Vulnerabilities / RUSTSEC-2021-0121
RUSTSEC-2021-0121
Published: 8 Oct 2021Last Modified: 8 Nov 2023
Summary: Non-aligned u32 read in Chacha20 encryption and decryption
Details: The implementation does not enforce alignment requirements on input slices while incorrectly assuming 4-byte alignment through an unsafe call to `std::slice::from_raw_parts_mut`, which breaks the contract and introduces undefined behavior. This affects Chacha20 encryption and decryption in crypto2.
References: https://crates.io/crates/crypto2, https://rustsec.org/advisories/RUSTSEC-2021-0121.html, https://github.com/shadowsocks/crypto2/issues/27
Affected packages
Package
Name: crypto2
Purl: pkg:cargo/crypto2
Affected ranges
Type: SEMVER
Events:
Introduced- 0.0.0-0
Fixed -None
Affected versions
Common Vulnerability Scoring System
Attack Vector
Network
Adjacent
Local
Physical
Privileges Required
None
Low
High
User Interaction
None
Required
Scope
Unchanged
Changed
Confidentiality
None
Low
High
Integrity
None
Low
High
Availability
None
Low
High
