Vulnerable microprocessors: what are Meltdown and Spectre?
Enrique Dans
Senior Advisor for Innovation and Digital Transformation at IE University. Changing education to change the world...
Microprocessor innovation is one of the main drivers of technology: the demand for ever-faster computing ability has seen huge improvements over recent decades. But news on Wednesday of the Meltdown and Spectrevulnerabilities in the microprocessors in our devices highlights both our dependence on them, as well as how little we can do to protect ourselves.
The first question we need to ask is what do we need to know? The vulnerabilities were discovered independently by security researchers: Meltdown by three teams at the Technical University of Graz, Cyberus Technology and Google Project Zero; and Spectre also by Google Project Zero and researcher Paul Kocher. It turns out the discovery, as often happens in security-related matters was made a few months ago, since when some of those involved have worked to improve users’ security, while others have rushed to sell off shares in their own companies.
What are these vulnerabilities? All modern microprocessors use a series of speculative execution capabilities for memory access: the microprocessor not only performs the tasks we set it, but to optimize its execution time also devotes part of its resources to speculating that something might be true and duly investigates. If the speculation goes nowhere, the instructions executed speculatively are discarded. However, although this speculation and discarding have no effect on the execution of programs (in addition to speeding them up, no small matter, it does produce changes in the components of the microprocessor, such as, for example, loading certain data into the cache. The presence of this data in the cache memory or in other components of the microprocessor is detectable because their access is faster than if they were not there, and this is what could allow access to sensitive information by hackers. Basically, we’re talking about vulnerabilities that, in the case of Meltdown, break the boundary between the user’s applications and the operating system, allowing a malicious program to access memory and, therefore, data from other programs or from its own OS. In Specter, which is harder to exploit than Meltdown, and more difficult to patchup or resolve, we’re talking about a breakdown of the separation between different applications, which allows a malicious application to cheat other applications with no errors to obtain data from them.
All modern microprocessors use speculative execution and Intel’s microprocessors do so in a particularly aggressive manner. The patches that have been launched so far are a first solution, controlling or eliminating the speculative functions, resulting in up to 30% loss of performance. Giving up on speculative execution does not seem like the way forward, but a definitive solution could take a long time, during which people will seek to exploit vulnerabilities in systems that have not been patched. But applying security patches is not so simple: although in many cases these are applied automatically, not all users understand how to apply them regularly. In addition, this is only a temporary solution: a fundamental rethink is required about the use of speculative execution in microprocessors, a new architecture project to solve these problems will take a long time.
Are such problems unavoidable? Not really: it’s the price of such rapid progress. Does that mean everything is vulnerable? Almost certainly not, because the vulnerabilities are not sufficient, at least so far, to compromise most computers through their browsers. Who is at risk? Most at danger are providers of cloud computing services, which should already have applied the corresponding patches at the cost of reduced performance, with all that this entails in terms of cost. Basically, this is a problem about which most of us will not be able to do anything other than follow a series of instructions when the time comes and that should encourage us to exercise extreme caution and implement tougher security routines… which is never a bad idea.
(En espa?ol, aquí)