{"id":"CVE-2023-49092","aliases":["DEBIAN-CVE-2023-49092","EUVD-2023-2946","GHSA-4grx-2x9w-596c","GHSA-c38w-74pg-36hr","RUSTSEC-2023-0071","UBUNTU-CVE-2023-49092","openSUSE-SU-2024:13542-1"],"status":"published","title":"RustCrypto/RSA vulnerable to a Marvin Attack via key recovery through timing sidechannels","description":"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.","severity":{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.0061,"percentile":0.49509,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-203","CWE-385"],"published":"2023-11-22T12:00:00Z","modified":"2026-11-08T23:15:02Z","fixes":[{"ecosystem":"crates.io","package":"rsa","fixed_in":["0.10.0"],"sources":["osv"]},{"ecosystem":"openSUSE:Tumbleweed","package":"cargo-audit-advisory-db","fixed_in":["20231219-1.1"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"crates.io","package":"rsa","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"0.9.6"}]}]},{"source":"ghsa","ecosystem":"crates.io","package":"rsa","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"0.9.6"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"rust-rsa","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.10-1","0.9.7-1","0.9.9-1"]},{"source":"osv","ecosystem":"Debian:14","package":"rust-rsa","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.10-1","0.9.7-1","0.9.9-1"]},{"source":"osv","ecosystem":"crates.io","package":"rsa","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"last_affected":"0.9.6"}]}]},{"source":"osv","ecosystem":"crates.io","package":"rsa","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"last_affected":"0.9.6"}]}]},{"source":"osv","ecosystem":"crates.io","package":"rsa","ranges":[{"type":"SEMVER","events":[{"introduced":"0.0.0-0"},{"fixed":"0.10.0"}]}]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"rust-rsa","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.2-2"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"rust-rsa","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.7-1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"rust-rsa","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.10-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"rust-rsa","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.9.7-1","0.9.9-1","0.9.10-1"]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"cargo-audit-advisory-db","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"20231219-1.1"}]}]}],"products":[{"vendor":"rustcrypto","product":"rsa"}],"references":[{"url":"https://github.com/RustCrypto/RSA/security/advisories/GHSA-c38w-74pg-36hr","tags":["x_refsource_CONFIRM","x_transferred","Vendor Advisory","advisory","web","report"]},{"url":"https://github.com/RustCrypto/RSA/issues/19#issuecomment-1822995643","tags":["x_refsource_MISC","x_transferred","Issue Tracking","report","web"]},{"url":"https://rustsec.org/advisories/RUSTSEC-2023-0071.html","tags":["web","advisory","report"]},{"url":"https://github.com/RustCrypto/RSA/issues/626","tags":["web","report"]},{"url":"https://github.com/advisories/GHSA-4grx-2x9w-596c"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-49092","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-c38w-74pg-36hr"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/49xxx/CVE-2023-49092.json","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2023-49092","tags":["advisory"]},{"url":"https://github.com/RustCrypto/RSA","tags":["package"]},{"url":"https://crates.io/crates/rsa","tags":["package"]},{"url":"https://people.redhat.com/~hkario/marvin/","tags":["web","report"]},{"url":"https://github.com/RustCrypto/RSA/pull/394","tags":["web"]},{"url":"https://github.com/RustCrypto/RSA/pull/680","tags":["web"]},{"url":"https://github.com/RustCrypto/RSA/pull/702","tags":["web"]},{"url":"https://ubuntu.com/security/CVE-2023-49092","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2023-49092","tags":["report"]},{"url":"","tags":["advisory"]},{"url":"https://www.suse.com/security/cve/CVE-2023-49092","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2023-49092","title":"RustCrypto/RSA vulnerable to a Marvin Attack via key recovery through timing sidechannels","description":"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.","status":"published","published":"2023-11-28T20:57:06.739Z","modified":"2024-11-27T16:03:51.52Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium","assessor":"cna"}],"cwes":["CWE-385"],"updated_at":"2026-11-02T14:35:12.998024Z"}],"euvd":[{"id":"EUVD-2023-2946","description":"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.","status":"published","published":"2023-11-28T20:57:06Z","modified":"2024-11-27T16:03:51Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-03T00:04:45.657538Z"}],"ghsa":[{"id":"GHSA-4grx-2x9w-596c","title":"Marvin Attack: potential key recovery through timing sidechannels","description":"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.\n\nA recent survey of RSA implementations found that the Rust `rsa` crate is one of many implementations vulnerable to this attack.\n\nNo fixed version is available at this time.\n\n[Marvin Attack]: https://people.redhat.com/~hkario/marvin/","status":"published","published":"2023-11-28T23:28:25Z","modified":"2026-05-04T20:43:22Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-385"],"updated_at":"2026-11-02T14:40:00.970271Z"},{"id":"GHSA-c38w-74pg-36hr","title":"Marvin Attack: potential key recovery through timing sidechannels","description":"### Impact\nDue 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.\n\n### Patches\nNo patch is yet available, however work is underway to migrate to a fully constant-time implementation.\n\n### Workarounds\nThe 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.\n\n### References\nThis vulnerability was discovered as part of the \"Marvin Attack\", which revealed several implementations of RSA including OpenSSL had not properly mitigated timing sidechannel attacks.\n\n- https://rustsec.org/advisories/RUSTSEC-2023-0071.html\n- https://people.redhat.com/~hkario/marvin/\n- https://github.com/RustCrypto/RSA/issues/19","status":"published","published":"2023-11-28T23:28:27Z","modified":"2026-04-27T16:45:11Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-203","CWE-385"],"updated_at":"2026-11-02T14:39:59.776263Z"}],"nvd":[{"id":"CVE-2023-49092","description":"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.","status":"published","published":"2023-11-28T21:15:08.53Z","modified":"2026-06-17T06:35:20.99Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium","assessor":"secondary"},{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-385","CWE-203"],"updated_at":"2026-11-02T14:08:49.393375Z"}],"osv":[{"id":"CVE-2023-49092","title":"RustCrypto/RSA vulnerable to a Marvin Attack via key recovery through timing sidechannels","description":"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.","status":"published","published":"2023-11-28T20:57:06.739Z","modified":"2026-10-28T02:31:06.085010475Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-385"],"updated_at":"2026-11-02T15:44:34.72355Z"},{"id":"DEBIAN-CVE-2023-49092","description":"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.","status":"published","published":"2023-11-28T21:15:08.53Z","modified":"2026-10-26T18:02:50.435174933Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T15:45:40.275853Z"},{"id":"GHSA-4grx-2x9w-596c","title":"Marvin Attack: potential key recovery through timing sidechannels","description":"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.\n\nA recent survey of RSA implementations found that the Rust `rsa` crate is one of many implementations vulnerable to this attack.\n\nNo fixed version is available at this time.\n\n[Marvin Attack]: https://people.redhat.com/~hkario/marvin/","status":"published","published":"2023-11-28T23:28:25Z","modified":"2026-09-10T03:50:04.002228238Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-385"],"updated_at":"2026-11-02T15:46:37.148947Z"},{"id":"GHSA-c38w-74pg-36hr","title":"Marvin Attack: potential key recovery through timing sidechannels","description":"### Impact\nDue 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.\n\n### Patches\nNo patch is yet available, however work is underway to migrate to a fully constant-time implementation.\n\n### Workarounds\nThe 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.\n\n### References\nThis vulnerability was discovered as part of the \"Marvin Attack\", which revealed several implementations of RSA including OpenSSL had not properly mitigated timing sidechannel attacks.\n\n- https://rustsec.org/advisories/RUSTSEC-2023-0071.html\n- https://people.redhat.com/~hkario/marvin/\n- https://github.com/RustCrypto/RSA/issues/19","status":"published","published":"2023-11-28T23:28:27Z","modified":"2026-09-10T03:49:58.92741076Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-203","CWE-385"],"updated_at":"2026-11-02T15:46:44.571161Z"},{"id":"RUSTSEC-2023-0071","title":"Marvin Attack: potential key recovery through timing sidechannels","description":"### Impact\nDue 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.\n\n### Patches\nThe `rsa` v0.10 series includes a migration to `crypto-bigint` and constant-time mitigations recommended in `draft-irtf-cfrg-rsa-guidance`. Upgrading to this release should resolve all known constant-time issues.\n\n### References\nThis vulnerability was discovered as part of the \"[Marvin Attack]\", which revealed several implementations of RSA including OpenSSL had not properly mitigated timing sidechannel attacks.\n\n[Marvin Attack]: https://people.redhat.com/~hkario/marvin/","status":"published","published":"2023-11-22T12:00:00Z","modified":"2026-11-08T23:15:02.609337046Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-08T23:42:28.79364Z"},{"id":"UBUNTU-CVE-2023-49092","description":"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.","status":"published","published":"2023-11-28T21:15:00Z","modified":"2026-10-17T12:56:26.241618602Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"},{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T16:54:23.935133Z"},{"id":"openSUSE-SU-2024:13542-1","title":"cargo-audit-advisory-db-20231219-1.1 on GA media","description":"These are all security issues fixed in the cargo-audit-advisory-db-20231219-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2025-05-07T18:15:23.324448Z","updated_at":"2026-11-02T16:58:36.327643Z"}]}}
