New Exploit Breaks Current Spectre Defenses; Fixes Hard without Performance Impact

2022-09-24 03:25:54 By : Ms. Cassiel Zhou

QCon London (March 27-29, 2023): Adopt the right emerging trends to solve your complex engineering challenges. Register Now.

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Jordan Bragg discusses using entry-points, breadth-first scanning, and operation tagging to demystify the domain, see where to dive deeper, and uncover what technical debt may exist.

Even when designing a Minimum Viable Architecture (MVA), developers must consider resource location, especially when mobile apps are part of a distributed system. Distributing the data and processing can introduce new challenges if location is not part of the decision making criteria.

In a web-based service, a slowdown in request processing can eventually make your service unavailable. Chances are, not all requests need to be processed right away. Some of them just need an acknowledgement of receipt. Have you ever asked yourself: “Would I benefit from asynchronous processing of requests? If so, how would I make such a change in a live, large-scale mission critical system?”

Jessica Kerr considers that we should be looking at the software as part of the team, and observability in the software becomes an asset to organizing teams.

At QCon Plus November 2021, Nora Jones, CEO and founder of Jeli, talked about how to build production readiness reviews (PRR) with emphasis on context and psychological safety. Her talk focused on the particulars of a PRR process that relates to incidents.

Understand the emerging software trends you should pay attention to. Attend in-person on Oct 24-28, 2022.

Make the right decisions by uncovering how senior software developers at early adopter companies are adopting emerging trends. Register Now.

Adopt the right emerging trends to solve your complex engineering challenges. Register Now.

Your monthly guide to all the topics, technologies and techniques that every professional needs to know about. Subscribe for free.

InfoQ Homepage News New Exploit Breaks Current Spectre Defenses; Fixes Hard without Performance Impact

Researchers from the University of Virginia School of Engineering recently disclosed a new Spectre hardware exploit that can steal secrets via Intel/AMD micro-op caches and circumvents current Spectre defenses. Intel and AMD say no new guidance is needed. Researchers say suggested fixes are inconvenient to deploy or have performance drawbacks.

Ashish Venkat, William Wulf career enhancement assistant professor of computer science at UVA Engineering, explained the exploit in layman terms:

Think about a hypothetical airport security scenario where TSA lets you in without checking your boarding pass because (1) it is fast and efficient, and (2) you will be checked for your boarding pass at the gate anyway. A computer processor does something similar. It predicts that the check will pass and could let instructions into the pipeline. Ultimately, if the prediction is incorrect, it will throw those instructions out of the pipeline, but this might be too late because those instructions could leave side-effects while waiting in the pipeline that an attacker could later exploit to infer secrets such as a password. Intel’s suggested defense against Spectre, which is called LFENCE, places sensitive code in a waiting area until the security checks are executed, and only then is the sensitive code allowed to execute. But it turns out the walls of this waiting area have ears, which our attack exploits. We show how an attacker can smuggle secrets through the micro-op cache by using it as a covert channel.

The research team detailed in their paper three new attacks that bypass the existing Spectre mitigations:

Intel answered to the researchers’ report stating that no new mitigations are needed, provided software follows Intel’s secure coding guidance:

Intel reviewed the report and informed researchers that existing mitigations were not being bypassed and that this scenario is addressed in our secure coding guidance. Software following our guidance already has protections against incidental channels including the uop cache incidental channel. No new mitigations or guidance are needed.

AMD similarly commented on the ExtremeTech technology weblog:

AMD has reviewed the research paper and believes existing mitigations were not being bypassed and no new mitigations are required. AMD recommends its existing side-channel mitigation guidance and standard secure coding practices be followed.

Side-channels that steal secret data from speculative execution attacks such as Spectre use timing attack techniques to determine the location of the target data. The research team acknowledged that constant-time programming, one mitigation technique recommended by Intel in its secure coding guidance, does indeed prevent timing attacks. Venkat however warned:

[…] Constant-time programming is not only hard in terms of the actual programmer effort, but also entails high performance overhead and significant deployment challenges related to patching all sensitive software. The percentage of code that is written using constant-time principles is in fact quite small. Relying on this would be dangerous. That is why we still need to secure the hardware.

As a matter of fact, in a post in the Google Security Blog, information security engineers Stephen Röttger and Artur Janc recently emphasized that three years after the discovery of Spectre, hackers can still exploit the vulnerability to force web browsers to leak information. Röttger and Janc provided in the post an interactive demonstration of the attack and a YouTube demo that they say confirm the practicality of Spectre exploits against JavaScript engines. The pair commented:

The low-level nature of speculative execution vulnerabilities makes them difficult to fix comprehensively, as a proper patch can require changes to the firmware or hardware on the user’s device. […] The design of existing web APIs still makes it possible for data to inadvertently flow into an attacker’s process. [… Spectre] class of attacks still remains a concern and requires web developers to deploy application-level mitigations. [… Even though,] they don’t guarantee complete protection against Spectre; they require a considered deployment approach that takes behaviors specific to the given application into account.

The micro-op cache on modern x86 CPUs stores decoded instructions so they can be promptly accessed again if needed, thus improving power consumption and performance.

Timing attacks are a broad class of side-channel attacks that measure different execution times of a program in order to infer some of its secret values. In comparison to other side-channel attacks, timing attacks require minimal interaction with the target and can be mounted remotely. Examples of libraries that make use of constant-time programming include NaCl, mbedTLS, or Open Quantum Safe.

Becoming an editor for InfoQ was one of the best decisions of my career. It has challenged me and helped me grow in so many ways. We'd love to have more people join our team.

Camunda Platform 8: The Universal Process Orchestrator. Improve productivity and collaboration with unparalleled speed, scale, and resilience. Start free trial now.

A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers. View an example

You need to Register an InfoQ account or Login or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers. View an example

Real-world technical talks. No product pitches. Practical ideas to inspire you and your team. QCon San Francisco - Oct 24-28, In-person. QCon San Francisco brings together the world's most innovative senior software engineers across multiple domains to share their real-world implementation of emerging trends and practices. Uncover emerging software trends and practices to solve your complex engineering challenges, without the product pitches.Save your spot now

InfoQ.com and all content copyright © 2006-2022 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with. Privacy Notice, Terms And Conditions, Cookie Policy