CVE-2018-5407: OpenSSL Microarchitecture timing vulnerability in ECC scalar multiplication
A flaw was found in microprocessor execution engine sharing on SMT (e.g. Hyper-Threading) architectures. An attacker running a malicious process on the same core of the processor as the victim process, can extract certain secret information.
The reporter is able to steal an OpenSSL (<= 1.1.0h) P-384 private key from a TLS server using this new side-channel vector. It is a local attack in the sense that the malicious process must be running on the same physical core as the victim (an openSSL-powered TLS server in this case). But in general any application which branches on a secret value may be affected.
References: https://seclists.org/oss-sec/2018/q4/123
Other sources
Severity: LOW
OpenSSL ECC scalar multiplication, used in e.g. ECDSA and ECDH, has been shown to be vulnerable to a microarchitecture timing side-channel attack. An attacker with sufficient access to mount local timing attacks during ECDSA signature generation could recover the private key.
All versions of Node.js 6 (LTS "Boron") are vulnerable
All versions of Node.js 8 (LTS "Carbon") are vulnerable
All versions of Node.js 10 (LTS "Dubnium") up to 10.8.0 are vulnerable
All versions of Node.js 10 (LTS "Dubnium") from 10.9.0 are NOT vulnerable
All versions of Node.js 11 (Current) are NOT vulnerable
— Node.Js
Simultaneous Multi-threading (SMT) in processors can enable local users to exploit software vulnerable to timing attacks via a side-channel timing attack on 'port contention'.
— Ubuntu
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
redhat/opensslto a version that resolves this vulnerability.Fixed in 1.1.0 - Upgrade
Upgrade
redhat/opensslto a version that resolves this vulnerability.Fixed in 1.1.1 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 6.15.0 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 8.14.0 - Upgrade
Upgrade
debian/opensslto a version that resolves this vulnerability.Fixed in 3.0.20-1~deb12u2Fixed in 3.0.22-1~deb12u2Fixed in 3.5.7-1~deb13u2Fixed in 3.5.7-1~deb13u3Fixed in 3.6.5-1 - Upgrade
Upgrade
Node.js 10to a version that resolves this vulnerability.Fixed in 10.9.0
Event History
Parent advisories
This vulnerability appears in the following advisories.
Frequently Asked Questions
What is CVE-2018-5407?
CVE-2018-5407 is a vulnerability related to Simultaneous Multi-threading (SMT) in processors that can enable local users to exploit software vulnerabilities.
How does CVE-2018-5407 affect processors?
CVE-2018-5407 affects multiple SMT/Hyper-Threading architectures and processors, allowing a local attacker to obtain sensitive information.
What is the severity of CVE-2018-5407?
The severity of CVE-2018-5407 is medium, with a severity value of 5.1.
How can an attacker exploit CVE-2018-5407?
An attacker can exploit CVE-2018-5407 by using the PortSmash side-channel attack to run a malicious process next to a legitimate one on Simultaneous Multithreading (SMT) architecture.
Which software is affected by CVE-2018-5407?
The affected software includes OpenSSL, Node.js, Tenable Nessus, Oracle products, IBM Cloud Pak System, Redhat Enterprise Linux, and others. Please refer to the references for more details and specific versions.