Meltdown and Spectre Vendor Patches

Linux upstream kernel

Kernel Page Table Isolation is a mitigation in the Linux Kernel, originally named KAISER.

minipli patches

minipli is an unofficial fork of the former grsecurity patches (original grsecurity is no longer publicly available). minipli is based on the longterm kernel 4.9, which supports KPTI since 4.9.75, yet the patchset isn't ported yet.

Android

Windows

Apple

Apple has already released mitigations in iOS 11.2, macOS 10.13.2, and tvOS 11.2 to help defend against Meltdown. In the coming days they plan to release mitigations in Safari to help defend against Spectre. They continue to develop and test further mitigations for these issues and will release them in upcoming updates of iOS, macOS, tvOS, and watchOS.

The security patch released on December 6, 2017 includes Meltdown mitigation also for Sierra and El Capitan

Linux distributions

o   7 - CESA-2018:0007 (kernel), CESA-2018:0012 (microcode_ctl), CESA-2018:0014 (linux-firmware), CESA-2018:0023(qemu-kvm), CESA-2018:0029 (libvirt)

o   6 - CESA-2018:0008 (kernel), CESA-2018:0013 (microcode_ctl), CESA-2018:0024 (qemu-kvm), CESA-2018:0030(libvirt)

  • Fedora - Fixed in FEDORA-2018-8ed5eff2c0(Fedora 26) and FEDORA-2018-22d5fa8a90 (Fedora 27).
  • Ubuntu (tl;dr - Ubuntu users of the 64-bit x86 architecture (aka, amd64) can expect updated kernels by the original January 9, 2018 coordinated release date, and sooner if possible.):

o   Ubuntu Wiki SecurityTeam KnowledgeBase

o   Ubuntu Insights blog - Ubuntu Updates for the Meltdown / Spectre Vulnerabilities

o   Details about CVE-2017-5753 (variant 1, aka "Spectre")

o   Details about CVE-2017-5715 (variant 2, aka "Spectre")

o   Details about CVE-2017-5754 (variant 3, aka "Meltdown")

  • Debian: "Meltdown" fixed in stretch (4.9.65-3+deb9u2, DSA-4078-1). "Spectre" mitigations are a work in progress.

o   Details about CVE-2017-5753 (variant 1, aka "Spectre")

o   Details about CVE-2017-5715 (variant 2, aka "Spectre")

o   Details about CVE-2017-5754 (variant 3, aka "Meltdown")

o   7 - SLSA-2018:0007-1 (kernel), SLSA-2018:0012-1 (microcode_ctl), SLSA-2018:0014-1 (linux-firmware)

o   6 - SLSA-2018:0008-1 (kernel), SLSA-2018:0013-1 (microcode_ctl)

o   Gentoo Wiki - Project:Security/Vulnerabilities/Meltdown and Spectre

o   Bugtracker - Bug#643228 - Security Tracking Bug

  • Oracle Linux (ELSA Security Advisory):

o   Details about CVE-2017-5753 (variant 1, aka "Spectre")

o   Details about CVE-2017-5715 (variant 2, aka "Spectre")

o   Details about CVE-2017-5754 (variant 3, aka "Meltdown")

FreeBSD

Virtualization

Browsers

Cloud Providers

Chip Manufacturers / HW Vendors

CERTs

CPU microcode

Latest Intel microcode update is 20171117. It is unclear whether microcode updates are needed and which version contains them. The microcode update does not contain any changelog.
If it will become necessary to update Intel (or AMD) microcode under Windows, before the release of official OS-level patches, this VMware Labs fling - though formally experimental - can serve the purpose, at least temporarily.

Update - Thu 4 Jan 2018, 15:30 UTC

It seems that the new Intel’s microcode archive (2017-12-15) provided with the latest Red Hat’s microcode_ctl update includes three new files: 06-3f-02, 06-4f-01, 06-55-04.

Based on what we know:

  1. it adds one new CPUID and two MSR for the variant of Spectre that uses indirect branches
  2. it forces LFENCE to terminate the execution of all previous instructions, thus having the desired effect for the variant of Spectre that uses conditional branches (out-of-bounds-bypass)

Those IDs belong to the following processor microarchitectures: Haswell, Broadwell, Skylake (official reference)

Update - Thu 4 Jan 2018, 16:30 UTC

Regarding AMD's microcode update: it seems to be only for EPYC (maybe Ryzen, not sure!) and it only adds one of the two MSRs (IA32_PRED_CMD). It uses a different bit than Intel's in the CPUID. It is also for Spectre with indirect branches. Previous microprocessors resolved it with a chicken bit. Please note that the same solution implemented at kernel level works for both Intel and AMD.

Update - Fri 5 Jan 2018, 03:35 UTC

Debian Project package maintainers released an [updated version of the "intel-microcode" package (version 2017-12-15)] for the Sid (unstable) branch olny. Upon inspection, it seems to contain the same microcode additions observed in the Red Hat microcode_ctl update of Thu 4 Jan 2018, 15:30 UTC. The package in compatible with all Debian-based distributions that support post-boot microcode updates.

Antiviruses

 

Some Antiviruses do things that break when installing the Windows patches, therefore Microsoft doesn't automatically install the patches on those systems.

Vendor overview: https://docs.google.com/spreadsheets/d/184wcDt9I9TUNFFbsAVLpzAtckQxYiuirADzf3cL42FQ/htmlview?usp=sharing&sle=true

RDBMS

Embedded Devices

Compilers

o   LLVM: An implementation is under review for official merge here

o   GCC: An implementation for GCC is available here