I'm not saying "site per process" is bad thing. Of course it can help to prevent some kind of attacks, just not these new cpu related.
I'm not saying "site per process" is bad thing. Of course it can help to prevent some kind of attacks, just not these new cpu related.
Site isolation mitigates variant 1 of Spectre, which allows same-process reads.
It doesn't protect against variant 2 of Spectre, which could allow cross-process reads. While this is believed to be much harder to exploit than the first variant, there are several mitigations in development:
- Reduce the reliability of timing gadgets from JS
- Compiler defenses like LLVM's -mretpoline
- Intel's IBRS microcode update
As you mentioned, site isolation also won't help against Meltdown, which allows disclosure of kernel memory: this requires the kernel page table isolation patches.
- If you have an AMD CPU or run a Kernel with KPTI you are protected from Meltdown.
- If you have an AMD CPU or compile the browser with retpoline you are protected from the second variant of Spectre (branch misprediction).
- If you have site isolation you are protected from the first variant of Spectre (bound check).
Thus, as it stands (and my understanding is that more variants will inevitably be found), this feature alone mitigates the known attacks on AMD hardware.
Of course the real mitigation is to air-gap your computer and only run code you have proven to be secure by hand. But Google can never suggest that. /s
AMD is pushing microcode updates to close those holes, too.
"Variant Two
Branch Target Injection
Differences in AMD architecture mean there is a near zero risk of exploitation of this variant. Vulnerability to Variant 2 has not been demonstrated on AMD processors to date."
And although Project Zero had multiple AMD test machines they did not make any claims that AMD was also vulnerable to variant 2. Can you link to any PoC that has gotten variant 2 to work on AMD?
Once you have support for out of process iframes, you can lock down each process so that it doesn't have access to data for sites other than the one it was created to render documents for. That lockdown is what can prevent Spectre variant 1 from being used to steal data cross-site: the data is no longer in the process to steal.
Site per process helps against the other two variants which are about reading other process memory and have been demonstrated to be able to extract passwords from firefox browser memory (which has been fixed in the newest version)