File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed
Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change 1+ ``` toml
2+ [advisory ]
3+ id = " RUSTSEC-0000-0000"
4+ package = " keccak"
5+ date = " 2026-02-12"
6+ url = " https://github.com/RustCrypto/sponges/pull/101"
7+ informational = " unsound"
8+ categories = [" crypto-failure" ]
9+ aliases = []
10+ license = " CC0-1.0"
11+
12+ [versions ]
13+ patched = [" >= 0.1.6" ]
14+ ```
15+
16+ # Unsoundness in opt-in ARMv8 assembly backend for ` keccak `
17+
18+ ### Summary
19+
20+ The ` asm! ` block enabled by the off-by-default ` asm ` feature, when enabled on ARMv8 targets, misspecified the operand
21+ type for all of its operands, using ` in ` for pointers and values which were subsequently mutated by operations performed
22+ within the assembly block.
23+
24+ ### Impact
25+
26+ It's unclear what practical impact, if any, this actually had. Incorrect operand types are technically undefined
27+ behavior, however changing them had no actual impact on the generated assembly for these targets. The possibility still
28+ exists that it may lead to potential memory safety or other issues on hypothetical future versions of rustc.
29+
30+ ### Mitigation
31+
32+ The operand types were changed from ` in ` to ` inout ` , and the impacted versions of the ` keccak ` crate were yanked.
You can’t perform that action at this time.
0 commit comments