Description
RustCrypto CMOV provides conditional move CPU intrinsics which are guaranteed on major platforms to execute in constant-time and not be rewritten as branches by the compiler. Prior to 0.4.4, the thumbv6m-none-eabi (Cortex M0, M0+ and M1) compiler emits non-constant time assembly when using cmovnz (portable version). This vulnerability is fixed in 0.4.4.
Problem types
CWE-208: Observable Timing Discrepancy
Product status
References
github.com/.../utils/security/advisories/GHSA-2gqc-6j2q-83qp
github.com/.../utils/security/advisories/GHSA-2gqc-6j2q-83qp
github.com/...ommit/55977257e7c82a309d5e8abfdd380a774f0f9778