critical9.8
CVE-2021-45709
Use of a Broken or Risky Cryptographic Algorithm in crypto2
Impact
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.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| rust | crypto2 | <= 0.1.2 | none recorded |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Crypto2 Project | Crypto2 | All versions |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://raw.githubusercontent.com/rustsec/advisory-db/main/crates/crypto2/RUSTSEC-2021-0121.md
- https://rustsec.org/advisories/RUSTSEC-2021-0121.html
- https://github.com/advisories/GHSA-9hfg-pxr6-q4vp
- https://nvd.nist.gov/vuln/detail/CVE-2021-45709
- https://github.com/shadowsocks/crypto2/issues/27