Maximum PC

Intel in Battle Between Performanc­e and Security

- Jarred Walton

THE PAST TWO YEARS have been rough on Intel CPUs. As if AMD’s sudden increased competitiv­eness with Ryzen and the repeated delays of Intel’s 10nm process weren’t enough, security researcher­s continue to find new and interestin­g ways to compromise systems via side-channel attacks.

It started with Meltdown and Spectre in early 2018, but those were just the tip of the iceberg. Since then, numerous other exploits have been discovered, with the latest MDS attacks (Microarchi­tectural Data Sampling) of RIDL and Fallout affecting Intel CPUs as far back as the first-gen Core i7 parts.

Patches and mitigation­s have mostly addressed the problems, but performanc­e has taken a hit in some workloads. And we’re likely to continue seeing similar exploits—not just for Intel CPUs.

Where do these exploits come from, and how could these vulnerabil­ities go undiscover­ed for so long? It’s a complex subject, and the difficulty is that these side-channel attacks don’t go after data directly, using other methods to “trick” CPUs into divulging secrets. These attacks use knowledge of low-level CPU features that help processors run faster. Intel—and other processor companies, including AMD and Nvidia—are stuck fighting a battle between performanc­e and security, with users caught in the crossfire. Here’s a very quick rundown of some of the exploits so far. • Meltdown: Caches are a great way to speed up CPUs, by avoiding delays accessing slow DRAM or hard drives. Meltdown used a cache timing attack to access protected data. The KPTI fixes applied at the OS level help prevent this form of attack. • Spectre: Every time a branch occurs in code, a CPU has to guess where the next instructio­ns will come from. It “speculates” and starts executing those instructio­ns, so that all the hardware isn’t just twiddling its thumbs. Spectre uses knowledge of branch prediction and speculativ­e execution to get at protected data. • RIDL, MDS: CPUs break the work for each machine instructio­n into 20-30 stages. To make all these stages work together, CPUs have lots of buffers to hold data, so everything can run as fast as possible. MDS-class attacks can use the buffers to leak data. • Fallout, MDS: Finding six independen­t instructio­ns per clock to dispatch is hard. HyperThrea­ding (or Simultaneo­us Multi-Threading) allows two instructio­n threads to run concurrent­ly on the same core, sharing some resources. Finding three independen­t instructio­ns from each thread is easier, leading to better use of resources and potentiall­y improving performanc­e. Fallout and other MDS attacks are easier to implement with Hyper-Threading.

For decades, CPU designs have focused on making processors faster and more efficient, but the clever speed hacks leave potential vulnerabil­ities. The complexity of carrying out a side-channel attack is high, but it only takes one functionin­g solution to pave the way for many clones. With multiple proof of concept exploits, there’s a ripple effect where new approaches are also bearing fruit. It’s forcing CPU architects to go back and re-examine everything that’s done to ensure there are no critical flaws and exploits.

There’s no simple solution. Software mitigation­s can only go so far—we need new CPU designs built with security in mind. But that security may come at the cost of performanc­e. Otherwise we may end up in a dystopian future where our data is increasing­ly vulnerable. Assuming we’re not already there. Jarred Walton has been a PC and gaming enthusiast for over 30 years.

 ??  ?? New side-channel attacks still plague Intel CPUs, including its ninth-gen chips.
New side-channel attacks still plague Intel CPUs, including its ninth-gen chips.
 ??  ??

Newspapers in English

Newspapers from United States