You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 27
Next »
Overview
Modern CPUs have speculative execution capabilities, which improves processor performance. Depending on the design and architecture of the CPU, speculative execution can introduce side-channel-attack vulnerabilities.
Known Vulnerabilities
Public | CVE | Alias(es) | CPU Vendors Affected | Speculative Trigger | Impact | Mitigations | References |
---|
Jan 3, 2018 | CVE-2017-5753 | Spectre V1 NetSpectre ( network attack vector) Spectre-PHT | Intel ARM IBM | Branch prediction bounds check bypass | Cross- and intra-process (including kernel) memory disclosure | OS Compiler Browser | https://www.kb.cert.org/vuls/id/584653 https://www.intel.com/content/www/us/en/architecture-and-technology/facts-about-side-channel-analysis-and-intel-products.html https://developer.arm.com/support/arm-security-updates/speculative-processor-vulnerability https://www.ibm.com/blogs/psirt/potential-impact-processors-power-family/ |
Jan 3, 2018 | CVE-2017-5715 | Spectre V2 Spectre-BTB | Intel AMD ARM IBM | Branch target injection | Cross- and intra-process (including kernel) memory disclosure | Microcode | https://www.kb.cert.org/vuls/id/584653 https://www.intel.com/content/www/us/en/architecture-and-technology/facts-about-side-channel-analysis-and-intel-products.html https://www.amd.com/en/corporate/security-updates https://developer.arm.com/support/arm-security-updates/speculative-processor-vulnerability https://www.ibm.com/blogs/psirt/potential-impact-processors-power-family/ |
Jan 3, 2018 | CVE-2017-5754 | Spectre V3 Meltdown | Intel IBM | Out-of-order execution | Kernel memory disclosure to userspace | OS | https://www.kb.cert.org/vuls/id/584653 https://www.intel.com/content/www/us/en/architecture-and-technology/facts-about-side-channel-analysis-and-intel-products.html https://www.ibm.com/blogs/psirt/potential-impact-processors-power-family/ |
May 21, 2018 | CVE-2018-3640 | Spectre V3a (RSRE) | Intel ARM
| System register read | Disclosure of system register values | Microcode | https://www.kb.cert.org/vuls/id/180049 https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00115.html https://developer.arm.com/support/arm-security-updates/speculative-processor-vulnerability |
May 21, 2018 | CVE-2018-3639 | Spectre V4 (SSB) Spectre-STL | Intel AMD ARM IBM | Memory reads before prior memory write addresses known | Cross- and intra-process (including kernel) memory disclosure | Microcode
OS
| https://www.kb.cert.org/vuls/id/180049 https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00115.html https://www.amd.com/en/corporate/security-updates https://developer.arm.com/support/arm-security-updates/speculative-processor-vulnerability https://www.ibm.com/blogs/psirt/potential-impact-processors-power-family/ |
Jun 13, 2018 | CVE-2018-3665 | Lazy FP | Intel | Lazy FPU state restore | Leak of FPU state | OS | https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00145.html |
July 10, 2018 | CVE-2018-3693 | Spectre1.1 Spectre-PHT | Intel | Bounds check bypass store | Speculative buffer overflow Cross- and intra-process (including kernel) memory disclosure | OS | https://01.org/security/advisories/intel-oss-10002 https://arxiv.org/abs/1807.03757 |
July 10, 2018 | N/A | Spectre1.2 | Intel | Read-only protection bypass | Overwrite read-only data and pointers Cross- and intra-process (including kernel) memory disclosure | OS | https://01.org/security/advisories/intel-oss-10002 https://arxiv.org/abs/1807.03757 |
August 14, 2018 | CVE-2018-3615 | L1 Terminal Fault: SGX Foreshadow-SGX | Intel | Transient out-of-order execution | SGX enclave memory disclosure | Microcode TCB Recovery | https://www.kb.cert.org/vuls/id/982149 https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00161.html https://foreshadowattack.eu/ https://foreshadowattack.eu/foreshadow.pdf |
August 14, 2018 | CVE-2018-3620 | L1 Terminal Fault: OS/SMM Foreshadow-OS Foreshadow-NG | Intel IBM | Transient out-of-order execution | OS or SMM memory disclosure | Microcode OS | https://www.kb.cert.org/vuls/id/982149 https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00161.html https://www.ibm.com/blogs/psirt/potential-impact-processors-power-family/ https://foreshadowattack.eu/ https://foreshadowattack.eu/foreshadow-NG.pdf |
August 14, 2018 | CVE-2018-3646 | L1 Terminal Fault: VMM Foreshadow-VMM Foreshadow-NG | Intel IBM | Transient out-of-order execution | Virtual Machine Monitor (VMM) memory disclosure | Microcode OS | https://www.kb.cert.org/vuls/id/982149 https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00161.html https://www.ibm.com/blogs/psirt/potential-impact-processors-power-family/ https://foreshadowattack.eu/ https://foreshadowattack.eu/foreshadow-NG.pdf |
Notes
General
The causes of these vulnerabilities are rooted in CPU hardware design choices intended to optimize performance.
https://lwn.net/Articles/755419/
https://pdfs.semanticscholar.org/2209/42809262c17b6631c0f6536c91aaf7756857.pdf
NSA guidance on speculative execution vulnerabilities includes a similar list.
https://github.com/nsacyber/Hardware-and-Firmware-Security-Guidance
Spectre V1
Spectre V1 has been demonstrated to bypass protections provided by Intel SGX. Intel has updated the SGX SDK to mitigate these vulnerabilities when SGX enclaves are rebuilt.
https://software.intel.com/sites/default/files/managed/e1/ec/SGX_SDK_Developer_Guidance-CVE-2017-5753.pdf
Spectre V1 has been demonstrated to bypass protections provided by the System Management Range Register (SMRR) to access protected System Management Mode (SMM) memory.
https://blog.eclypsium.com/2018/05/17/system-management-mode-speculative-execution-attacks/
Spectre V1 can be exploited over network connections rather than through local code execution of remotely delivered code such as JavaScript. This remote attack is known as NetSpectre.
https://misc0110.net/web/files/netspectre.pdf
Lazy FP
Lazy FP may particularly expose AES keys:
The FPU state may contain sensitive information such as cryptographic keys. As an example, the Intel AES instruction set (AES-NI) uses FPU registers to store round keys. It is only possible to exploit when the underlying operating system or hypervisor uses lazy FPU switching.
https://blog.cyberus-technology.de/posts/2018-06-06-intel-lazyfp-vulnerability.html