Analytics

2/19/2019
06:46 PM
Robert Lemos
Robert Lemos
News
50%
50%

Google Research: No Simple Fix For Spectre-Class Vulnerabilities

Chip makers' focus on performance has left microprocessors open to numerous side-channel attacks that cannot be fixed by software updates - only by hard choices.

Side-channel attacks such as the Spectre family of vulnerabilities are more widespread threat than previously thought - affecting all microprocessors that employ the performance-enhancing feature of speculative execution, and defeating all software-based attempts at fixing the vulnerabilities, according to Google researchers.

In a deep analysis of the issue published late last week, Spectre is here to stay: An analysis of side-channels and speculative execution, a group of five Google computer scientists built a generalized abstract model of the microarchitectures used in modern processors, and found that any optimizations to the architecture are observable and thus open to side-channel attacks.

To prove the point, they showed that it is possible to create a "universal read gadget" that can read any data with very few limitations. Implementing the gadget in JavaScript, C++, and WebAssembly, the scientists were able to glean a minimum of 10 bytes per second - and up to 1,000 bytes per second - of data from protected memory.

"As a result of our work, we now believe that speculative vulnerabilities on today's hardware defeat all language-enforced confidentiality with no known comprehensive software mitigations," the researchers concluded.

The research builds on the original efforts by independent research groups in late 2017 that found that two broad classes of flaws—Meltdown and Spectre—could allow attackers the ability to access areas of a processor's memory that had been thought to be protected.

Meltdown, a hardware design weakness in Intel x86 processors, allowed attackers to read memory reserved by the operating system kernel. Spectre, a separate design weakness in any processor that implements speculative execution, allows attackers to read other applications protected memory. Speculative execution is a performance feature of modern processors where if there are two choices or branches, both potential sets of code are loaded before it's known which will be needed.

The practice saves time and makes processors more efficient, but as researchers have found, relied on the poor assumption that attackers could not manipulate the speculative execution process.

"This class of flaws are deeper—at the microarchitectural level of the processors—and more widely distributed—in essentially every high-performance processor—than perhaps any security flaw in history, affecting billions of CPUs in production across all device classes," the Google team wrote.

The problem is that chip makers have competed on a single metric for the past four decades—performance, says Paul Kocher, an independent cryptography researcher and one of the authors of the original Spectre paper. Because chip designers assumed that speculative execution could not be maliciously manipulated, they did not worry about its security.

The result is that chip manufacturers find themselves with some hard choices, he says. 

"There are easy solutions to Spectre if maximum performance isn't required," Kocher says. "The problem is that the mainstream CPU industry has historically been driven by performance benchmarks. If maximizing performance and backward compatibility are non-negotiable requirements, then Spectre and related side-channel attacks are a messy problem." 

Chrome Fix

Google's research highlighted four different variants of the speculative-execution attack and then investigated three mitigations to potentially fix the issues: disabling the speculation feature, adding noise to a processor's timer function, and adding additional safety checks to speculation. However, all three potential solutions had limitations. 

The research led Google to change its defensive strategy for its Chrome browser. The company shipped early mitigations, including timer mitigations, in Chrome 64 to 67. Yet, because the research has shown that such mitigations are only partially effective and require comprehensive changes to the code, the company switched tactics.

"In recognition of the fact that software mitigation is still an open problem for virtual machines, and that mitigations would also need to be applied to all of the millions of lines of C++ code in the browser, Chrome's defensive strategy shifted entirely to site isolation, which sandboxes code from different origins in different processes, thus relying on hardware-enforced protection," the researchers said in the paper.

The solution may be to create multi-core processors with some core architected for performance and other cores architected for security, Kocher says.

"One variant on this approach I like is to have separate cores optimized for performance versus security," he says. "This approach helps with other security issues beyond Spectre, since there are many other security/performance trade offs that would be handled differently for 'safer' cores. … While this approach can be frustrating for people who want maximum performance and security simultaneously, I don't believe it's possible to have both."

In the end, the current situation is the result of chip designers overlooking a fundamental security issue for decades, Google's research team says.

"Computer systems have become massively complex in pursuit of their seemingly number-one goal of performance," the researchers wrote. "Our models, our mental models, are wrong; we have been trading security for performance and complexity all along and didn't know it. It is now a painful irony that today, defense requires even more complexity with software mitigations, most of which we kno to be incomplete."

Related Content:

 

 

 

Join Dark Reading LIVE for two cybersecurity summits at Interop 2019. Learn from the industry's most knowledgeable IT security experts. Check out the Interop agenda here.

Veteran technology journalist of more than 20 years. Former research engineer. Written for more than two dozen publications, including CNET News.com, Dark Reading, MIT's Technology Review, Popular Science, and Wired News. Five awards for journalism, including Best Deadline ... View Full Bio

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
REISEN1955
50%
50%
REISEN1955,
User Rank: Ninja
2/26/2019 | 10:21:45 AM
Re: nice
It can be overcome.  Anyone remember the failure of the first PENTIUM chip in about 1994.  IBM actually recalled all of them and rebuilt the lot.  Brave then of Big Blue (they would not do that today).  
nick11110
50%
50%
nick11110,
User Rank: Apprentice
2/20/2019 | 1:00:49 PM
nice
I really like your take on the issue. I now have a clear idea on what this matter is all about 
Crowdsourced vs. Traditional Pen Testing
Alex Haynes, Chief Information Security Officer, CDL,  3/19/2019
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Write a Caption, Win a Starbucks Card! Click Here
Latest Comment: Reading Schneier's Friday Squid Blog again?
Current Issue
5 Emerging Cyber Threats to Watch for in 2019
Online attackers are constantly developing new, innovative ways to break into the enterprise. This Dark Reading Tech Digest gives an in-depth look at five emerging attack trends and exploits your security team should look out for, along with helpful recommendations on how you can prevent your organization from falling victim.
Flash Poll
The State of Cyber Security Incident Response
The State of Cyber Security Incident Response
Organizations are responding to new threats with new processes for detecting and mitigating them. Here's a look at how the discipline of incident response is evolving.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2019-6149
PUBLISHED: 2019-03-18
An unquoted search path vulnerability was identified in Lenovo Dynamic Power Reduction Utility prior to version 2.2.2.0 that could allow a malicious user with local access to execute code with administrative privileges.
CVE-2018-15509
PUBLISHED: 2019-03-18
Five9 Agent Desktop Plus 10.0.70 has Incorrect Access Control (issue 2 of 2).
CVE-2018-20806
PUBLISHED: 2019-03-17
Phamm (aka PHP LDAP Virtual Hosting Manager) 0.6.8 allows XSS via the login page (the /public/main.php action parameter).
CVE-2019-5616
PUBLISHED: 2019-03-15
CircuitWerkes Sicon-8, a hardware device used for managing electrical devices, ships with a web-based front-end controller and implements an authentication mechanism in JavaScript that is run in the context of a user's web browser.
CVE-2018-17882
PUBLISHED: 2019-03-15
An Integer overflow vulnerability exists in the batchTransfer function of a smart contract implementation for CryptoBotsBattle (CBTB), an Ethereum token. This vulnerability could be used by an attacker to create an arbitrary amount of tokens for any user.