Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revisionLast revisionBoth sides next revision | ||
spectre_and_meltdown_fixes_-_release_dates_for_linux_distros [19.01.2018 17:51] – Pascal Suter | spectre_and_meltdown_fixes_-_release_dates_for_linux_distros [18.04.2018 14:35] – [3: Update your BIOS] Pascal Suter | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Spectre and Meltdown fixes ====== | ====== Spectre and Meltdown fixes ====== | ||
- | This page should give you a short overview of what is currently available to update your Intel based server or Workstation to get as good as possible patched against Spectre (Variant 1 and 2) and Meltdown (Variant 3). | + | This page should give you a short overview of what is currently available to update your Intel based server or Workstation to get as good as possible patched against Spectre ( CVE 2017-5753 (Bounds Check Bypass / Variant 1) and CVE 2017-5715 (Branch Target Injection / Variant |
===== What's needed? ===== | ===== What's needed? ===== | ||
Line 27: | Line 27: | ||
===== Microcode Update - Yes it's necessary too! ===== | ===== Microcode Update - Yes it's necessary too! ===== | ||
- | |||
After you have installed the latest OS updates, your system should be protected against Variant 1 and 3, in order to protect against Variant 2, you also need to install a newer microcode (firmware of the CPU). | After you have installed the latest OS updates, your system should be protected against Variant 1 and 3, in order to protect against Variant 2, you also need to install a newer microcode (firmware of the CPU). | ||
- | Usually the microcode package is also a package in your distributions repository and is updated during a normal os upgrade. However, there where some [[https:// | ||
- | So now you have two options: 1.) wait until a stable | + | There are three ways to get to the latest microcode updates: |
+ | ==== 1: Wait for your linux distribution to include it ==== | ||
+ | Usually the microcode | ||
- | Here is, how you can download the microcode package (for all intel processors) from Intel directly | + | after that, intel pulled the microcode updates back from their own webpage as well and went back to alpha and beta testing. they have now released a bunch of updated microcodes for their cpu's. generally what we see is, that they start with the newest cpu's and work their way back. I would expect, that the final microcode releases will make it into the respective microcode packages in your linux distribution. the Easiest way is just to run updates regularly and eventually you should get the latest microcode update for your cpu that will enable the Variant 2 fix. |
- | - go to [[https:// | + | |
- | - download | + | ==== 2: Download the latest microcode from intel and install it manually ==== |
+ | besides waiting for your distro to include the update for you, you can also manually | ||
+ | |||
+ | The latest officially released Microcodes can be found on the intel downloadcenter page. currently | ||
+ | |||
+ | - download | ||
cd / | cd / | ||
- | wget < | + | wget <url> |
</ | </ | ||
- now move your existing microcode package to another location, so you can move it back in case you have these stability issues that some users had with the new ones. then unpack and load the new microcode: < | - now move your existing microcode package to another location, so you can move it back in case you have these stability issues that some users had with the new ones. then unpack and load the new microcode: < | ||
Line 47: | Line 52: | ||
you can double check if your microcode was loaded using < | you can double check if your microcode was loaded using < | ||
you should now be up to date with the latest patches for all three Variants of the Spectre & Meltdown vulnerability. | you should now be up to date with the latest patches for all three Variants of the Spectre & Meltdown vulnerability. | ||
+ | |||
+ | ==== 3: Update your BIOS ==== | ||
+ | BIOS packages from the mainboard vendor should also include the latest microcode for the CPU upon release of the BIOS package. sometimes you can get microcode updates earlier through a BIOS update than you can get them through the intel microcode package download. However, if your mainboard producer supplies no mor BIOS updates or if they have a slow release cycle, the intel package might be the faster solution for you. Because Linux only loads the microcode from its own package when it's newer than the version loaded by the bios, a BOIS update that gets you the new Microcode will work even with old Linux Versions that might be out of maintenance. However, if you are using such a Distro, you probably aren't worried too much about security anyway and your system is hopefully only running in a well protected internal network with trusted users.. in that case, don't worry about Meltdown :) | ||
+ | |||
+ | If you do worry about meltdown and want to upgrade the microcode through a new bios, you can find a list of the latest BIOS releases that contain Variant 2 fixes in their included microcode on this [[https:// | ||
+ | |||
+ | ===== Understanding the microcode release notes ===== | ||
+ | Intel' | ||
+ | -- Updates upon 20171117 release -- | ||
+ | IVT C0 (06-3e-04: | ||
+ | SKL-U/Y D0 (06-4e-03: | ||
+ | BDW-U/Y E/ | ||
+ | HSW-ULT Cx/ | ||
+ | Crystalwell Cx (06-46-01: | ||
+ | BDW-H E/ | ||
+ | HSX-EX E0 (06-3f-04: | ||
+ | SKL-H/S R0 (06-5e-03: | ||
+ | HSW Cx/ | ||
+ | HSX C0 (06-3f-02: | ||
+ | BDX-DE V0/ | ||
+ | BDX-DE V2 (06-56-03: | ||
+ | KBL-U/Y H0 (06-8e-09: | ||
+ | KBL Y0 / CFL D0 (06-8e-0a: | ||
+ | KBL-H/S B0 (06-9e-09: | ||
+ | CFL U0 (06-9e-0a: | ||
+ | CFL B0 (06-9e-0b: | ||
+ | SKX H0 (06-55-04: | ||
+ | GLK B0 (06-7a-01: | ||
+ | </ | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | grep -P "^(cpu family)|(model\s*: | ||
+ | </ | ||
+ | * the last part '' | ||
+ | * by the way, '' | ||
+ | * rather than browsing through the entire history of the release notes you can also check the version of a specific microcode file using this command: '' | ||
===== Minimalistic Fix on CentOS 7.4 ===== | ===== Minimalistic Fix on CentOS 7.4 ===== |