Mozilla has officially confirmed that the recently disclosed Meltdown and Spectre CPU flaws can be exploited via web content such as JavaScript files in order to extract information from users visiting a web page.

Meltdown and Spectre are two vulnerabilities discovered by Google security researchers that affect almost all CPUs released since 1995, impacting CPUs deployed in desktops, laptops, servers, smartphones, smart devices, and cloud services.

Researchers say that attackers can use the two flaws to read data from a computer's kernel memory (Meltdown), but also data handled by other apps (Spectre).

More precisely, Google says the two bugs can be exploited to "to steal data which is currently processed on the computer," which includes "your passwords stored in a password manager or browser, your personal photos, emails, instant messages and even business-critical documents."

Mozilla confirms everybody's worst fears

In research published online late last night, Google didn't provide specific ways in which an attack could take place, but many security experts that looked over the Meltdown and Spectre academic papers said that web-based attacks are possible, and not just attacks using locally-delivered malicious code.

Hours after Google's announcement, Mozilla confirmed everybody's worst fear, that both Meltdown and Spectre are remotely exploitable by embedding attack code in mundane JavaScript files delivered via web pages.

"Our internal experiments confirm that it is possible to use similar techniques from Web content to read private information between different origins," said Luke Wagner, a software engineer with the Mozilla Foundation.

Firefox to add Meltdown and Spectre mitigations

Details about the Meltdown and Spectre flaws had been shared with Mozilla since last year, and Wagner says Firefox 57.x branches will receive countermeasures.

Both Meltdown and Spectre are side-channel attacks that produce leak memory data. They both rely on the ability to very precisely measure time to deliver exploits that leak memory data.

To hinder the attacks' efficiency, Mozilla says it will reduce the precision of Firefox's internal timer functions. This is not a full mitigation, but just an efficient and clever workaround.

Since this new class of attacks involves measuring precise time intervals, as a partial, short-term, mitigation we are disabling or reducing the precision of several time sources in Firefox. This includes both explicit sources, like performance.now(), and implicit sources that allow building high-resolution timers, viz., SharedArrayBuffer.



Specifically, in all release channels, starting with 57:



- The resolution of performance.now() will be reduced to 20µs.

- The SharedArrayBuffer feature is being disabled by default.

Mozilla said it will experiment with new mitigation techniques that will "remove the information leak closer to the source, instead of just hiding the leak by disabling timers."

Google Chrome to receive patches in v64

According to Google, Chrome will also receive mitigations to protect against Meltdown and Spectre exploitation in Chrome 64, due to be released on January 23.

Until then, Google recommends that users enable a new security feature it shipped in Chrome 63, called Strict Site Isolation.

Microsoft has also released updates for Edge and Internet Explorer, that are part of an out-of-band update for Windows operating systems, released yesterday.

Users are recommended to update to Firefox 57, and update to Chrome 64 when it comes out. Web-based attacks are the most dangerous because they are easier to carry out. An attack can trick users into accessing a website with malicious JavaScript, can deliver JavaScript via advertising networks to millions of users at once, or can hack websites and carry out drive-by download attacks on legitimate sites the user has no clue have been compromised.

Despite this, some experts argue that Meltdown and Spectre are two vulnerabilities that are most likely to be exploited in targeted attacks against specific targets, rather than in en-masse, non-discriminatory campaigns.

Any idea on whether Meltdown/Spectre will ever be exploited at scale? Reading memory *and* doing something useful with it doesn't tend to scale well for attackers. Remember that Heartbleed was never exploited at scale. — Martijn Grooten (@martijn_grooten) January 4, 2018

UPDATE: Mozilla has released Firefox 57.0.4 that includes Meltdown and Spectre mitigations.