Meltdown and Spectre fallout: patching problems persist
Last week, the disclosure by multiple teams from Graz and Pennsylvania University, Rambus, Data61, Cyberus Technology, and Google Project Zero of vulnerabilities under the aliases Meltdown and Spectre rocked the security world, sending vendors scurrying to create patches, if at all possible, and laying bare a design flaw in nearly all modern processors.
The fallout from these revelations continues to take shape, as new information on the vulnerabilities and the difficulties with patching them comes to light daily.
In the days since Meltdown and Spectre have been made public, Malwarebytes has tracked which elements of the design flaw, known as speculative execution, are vulnerable and how different vendors are handling the patching process.
By examining the applied patches' impact against one of our own products, Adwcleaner, we found that they are, indeed, causing increases in CPU usage, which could result in higher costs for individuals billed by cloud providers accordingly.
Four variants
While it was initially reported that Spectre and Meltdown correspond to three vulnerabilities, four variants actually exist:
Spectre:
Variant 1 – CVE-2017-5753 Variant 2 – CVE-2017-5715
Meltdown:
Variant 3 – CVE-2017-5754 Variant 3a – /
Variants 1 and 2 of Spectre impact Intel, IBM, ARM, and AMD CPUs. Meltdown appears to be exclusive to Intel CPUs, and allows attackers to read privileged memory from an unprivileged context, still using the speculative execution feature.
Its variant 3a is exploitable on a few ARM CPUs only.
The fact that these vulnerabilities impact the CPUs themselves make them difficult to patch.
A software-only solution may bring important performance issues, as would a hardware-only fix.
Thus, various hardware vendors have been working together in the past months working on fixes.
However, while major players like Amazon and Microsoft got early access to the vulnerabilities reports, other providers did not.
They discovered the vulnerabilities at the same time as the disclosure on January 3.
Vendors band together
Those who weren't in on the secret formed a task group with other providers in order to exchange information and to pressure hardware manufacturers.
Scaleway, OVH, Linode, Packet, Digital Ocean, Vultr, Nexcess, and prgmr.com have been part of it, later joined by Amazon, Tata Communications, and also parts of the RedHat and Ubuntu teams.
On January 9, part of the researchers (Moritz Lipp, Daniel Gruss, Michael Schwarz from the Graz University of Technology) who discovered the vulnerabilities also joined in.
Some Open source developers also explained that they had not received any information prior the public disclosure, but were actively working on providing patches.
Mitigations began to land upstream in the Linux kernel shortly after the public disclosure to address the vulnerabilities separately.
Some require a hardware-vendor-issued microcode to be applied to the processor in order to make the software patch effective.
Most of these patches are simply workarounds, however, to avoid making the CPU behave as explained above.
We may expect some hardware change in future generations of processors at some point, but there's no easy, quick fix for now.