Skip to content
OpenAdvisories
High · 8.9 CVE-2026-23519 EUVD-2026-2731GHSA-2gqc-6j2q-83qpRUSTSEC-2026-0003

RustCrypto cmov: thumbv6m-none-eabi compiler emits non-constant time assembly when using cmovnz

Published Jan 15, 2026 · Updated Jan 15, 2026 · Assigned by GitHub_M

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.

Affected products

VendorProductAffectedFixed
RustCrypto utils < 0.4.4 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling yazi 26.1.4-r2 —

Affected packages

EcosystemPackageAffectedFixedRecord
crates.io cmov < 0.4.4 0.4.4 GHSA-2gqc-6j2q-83qp
crates.io cmov >= 0.0.0-0, < 0.4.4 0.4.4 RUSTSEC-2026-0003

References