CVE-2023-49092
RustCrypto/RSA vulnerable to a Marvin Attack via key recovery through timing sidechannels
RustCrypto/RSA is a portable RSA implementation in pure Rust. Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key. There is currently no fix available. As a workaround, avoid using the RSA crate in settings where attackers are able to observe timing information, e.g. local use on a non-compromised computer.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
5.9
RustCrypto/RSA vulnerable to a Marvin Attack via key recovery through timing sidechannels
RustCrypto/RSA is a portable RSA implementation in pure Rust. Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key. There is currently no fix available. As a workaround, avoid using the RSA crate in settings where attackers are able to observe timing information, e.g. local use on a non-compromised computer.
- Record
CVE-2023-49092- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-385
- Updated
- 2026-11-02
EUVDEUVD-2023-2946
5.9
RustCrypto/RSA is a portable RSA implementation in pure Rust. Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key. There is currently no fix available. As a workaround, avoid using the RSA crate in settings where attackers are able to observe timing information, e.g. local use on a non-compromised computer.
- Record
EUVD-2023-2946- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-4grx-2x9w-596c
5.9
Marvin Attack: potential key recovery through timing sidechannels
The Marvin Attack is a timing sidechannel vulnerability which allows performing RSA decryption and signing operations as an attacker with the ability to observe only the time of the decryption operation performed withthe private key.
A recent survey of RSA implementations found that the Rust rsa crate is one of many implementations vulnerable to this attack.
No fixed version is available at this time.
- Record
GHSA-4grx-2x9w-596c- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-385
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-c38w-74pg-36hr
5.9
Marvin Attack: potential key recovery through timing sidechannels
Impact
Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key.
Patches
No patch is yet available, however work is underway to migrate to a fully constant-time implementation.
Workarounds
The only currently available workaround is to avoid using the rsa crate in settings where attackers are able to observe timing information, e.g. local use on a non-compromised computer is fine.
References
This vulnerability was discovered as part of the "Marvin Attack", which revealed several implementations of RSA including OpenSSL had not properly mitigated timing sidechannel attacks.
- Record
GHSA-c38w-74pg-36hr- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-203, CWE-385
- Updated
- 2026-11-02
NVD
5.9
RustCrypto/RSA is a portable RSA implementation in pure Rust. Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key. There is currently no fix available. As a workaround, avoid using the RSA crate in settings where attackers are able to observe timing information, e.g. local use on a non-compromised computer.
- Record
CVE-2023-49092- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-385, CWE-203
- Updated
- 2026-11-02
OSV
5.9
RustCrypto/RSA vulnerable to a Marvin Attack via key recovery through timing sidechannels
RustCrypto/RSA is a portable RSA implementation in pure Rust. Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key. There is currently no fix available. As a workaround, avoid using the RSA crate in settings where attackers are able to observe timing information, e.g. local use on a non-compromised computer.
- Record
CVE-2023-49092- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-385
- Updated
- 2026-11-02
Show 6 moreShow less
OSVDEBIAN-CVE-2023-49092
5.9
RustCrypto/RSA is a portable RSA implementation in pure Rust. Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key. There is currently no fix available. As a workaround, avoid using the RSA crate in settings where attackers are able to observe timing information, e.g. local use on a non-compromised computer.
- Record
DEBIAN-CVE-2023-49092- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVGHSA-4grx-2x9w-596c
5.9
Marvin Attack: potential key recovery through timing sidechannels
The Marvin Attack is a timing sidechannel vulnerability which allows performing RSA decryption and signing operations as an attacker with the ability to observe only the time of the decryption operation performed withthe private key.
A recent survey of RSA implementations found that the Rust rsa crate is one of many implementations vulnerable to this attack.
No fixed version is available at this time.
- Record
GHSA-4grx-2x9w-596c- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-385
- Updated
- 2026-11-02
OSVGHSA-c38w-74pg-36hr
5.9
Marvin Attack: potential key recovery through timing sidechannels
Impact
Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key.
Patches
No patch is yet available, however work is underway to migrate to a fully constant-time implementation.
Workarounds
The only currently available workaround is to avoid using the rsa crate in settings where attackers are able to observe timing information, e.g. local use on a non-compromised computer is fine.
References
This vulnerability was discovered as part of the "Marvin Attack", which revealed several implementations of RSA including OpenSSL had not properly mitigated timing sidechannel attacks.
- Record
GHSA-c38w-74pg-36hr- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-203, CWE-385
- Updated
- 2026-11-02
OSVRUSTSEC-2023-0071
5.9
Marvin Attack: potential key recovery through timing sidechannels
Impact
Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key.
Patches
No patch is yet available. The crypto-bigint migration (RustCrypto/RSA#394) did not close this. Tracking is RustCrypto/RSA#626 (padding still not constant-time). Implicit rejection work is in RustCrypto/RSA#680; default-path blinding is in RustCrypto/RSA#702.
Still affected as of 2026-09-12: rsa 0.9.10 (latest stable) and rsa 0.10.0-rc.18 (latest). patched = [] is intentional.
Workarounds
Avoid using the rsa crate in settings where attackers can observe timing, for example over the network. Local use on a non-compromised computer is fine.
References
This vulnerability was discovered as part of the "Marvin Attack", which revealed several implementations of RSA including OpenSSL had not properly mitigated timing sidechannel attacks.
- Record
RUSTSEC-2023-0071- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2023-49092
5.9
RustCrypto/RSA is a portable RSA implementation in pure Rust. Due to a non-constant-time implementation, information about the private key is leaked through timing information which is observable over the network. An attacker may be able to use that information to recover the key. There is currently no fix available. As a workaround, avoid using the RSA crate in settings where attackers are able to observe timing information, e.g. local use on a non-compromised computer.
- Record
UBUNTU-CVE-2023-49092- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVopenSUSE-SU-2024:13542-1 No score
cargo-audit-advisory-db-20231219-1.1 on GA media
These are all security issues fixed in the cargo-audit-advisory-db-20231219-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:13542-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
rsacrates.io |
through 0.9.6 | None known |
rust-rsaDebian:13 |
All versions, plus listed versions 0.9.10-10.9.7-10.9.9-1 |
None known |
rust-rsaDebian:14 |
All versions, plus listed versions 0.9.10-10.9.7-10.9.9-1 |
None known |
rsacrates.io |
0.0.0-0 and later | None known |
rust-rsaUbuntu:24.04:LTS |
All versions, plus listed versions 0.9.2-2 |
None known |
rust-rsaUbuntu:25.10 |
All versions, plus listed versions 0.9.7-1 |
None known |
rust-rsaUbuntu:26.10 |
All versions, plus listed versions 0.9.10-1 |
None known |
rust-rsaUbuntu:26.04:LTS |
All versions, plus listed versions 0.9.7-10.9.9-10.9.10-1 |
None known |
cargo-audit-advisory-dbopenSUSE:Tumbleweed |
before 20231219-1.1 | 20231219-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2023-49092 is a medium vulnerability (CVSS 5.9) in Rustcrypto Rsa, published November 22, 2023. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.61%, the 49th percentile. Fixed in cargo-audit-advisory-db 20231219-1.1.
References
github.com/RustCrypto/RSA/security/advisories/GHSA-c38w-74pg-36hr
github.com/RustCrypto/RSA/issues/19
rustsec.org/advisories/RUSTSEC-2023-0071.html
github.com/RustCrypto/RSA/issues/626
github.com/advisories/GHSA-4grx-2x9w-596c
nvd.nist.gov/vuln/detail/CVE-2023-49092
Show 12 moreShow less
github.com/advisories/GHSA-c38w-74pg-36hr
github.com/CVEProject/cvelistV5/tree/main/cves/2023/49xxx/CVE-2023-49092.json
security-tracker.debian.org/tracker/CVE-2023-49092
github.com/RustCrypto/RSA
crates.io/crates/rsa
people.redhat.com/~hkario/marvin
github.com/RustCrypto/RSA/pull/394
github.com/RustCrypto/RSA/pull/680
github.com/RustCrypto/RSA/pull/702
ubuntu.com/security/CVE-2023-49092
cve.org/CVERecord?id=CVE-2023-49092
suse.com/security/cve/CVE-2023-49092