Hey, I would be happy with a power-on kill switch for speculation that would require no inter-processor synchronization at all. (That means … latest speculation vulnerability is announced and I have to reboot to disable it … but that’s OK for me. Might not be OK for 24x7 sites.)
Another power-on option would be that speculation is off by default and it has to be enabled by boot code, if chosen. That likely would require some inter-processor communication although I don’t know that it is too difficult - since if you want speculation at all, it shouldn’t be a problem if some cores are doing it and some aren’t.
My assumption is that this is a temporary mitigation. It will optionally be reversed when enough hardware is out there where all these problems are fixed. Maybe.
I think you might be wrong about that. Branch mis-predicts are expensive.
Not necessarily.
It can be that there are static hint bits (in the instruction stream) that provide a default when the branch is not in the branch prediction cache.
It can also be that forward conditional branches are default predicted not taken while backward conditional branches are default predicted taken. (The logic of this is, for example, that loops typically execute several times.)
However neither of those paragraphs undermines your point since a hypothetical attacker will know which of the above, if any, applies.
See also https://en.wikipedia.org/wiki/Spectre_(security_vulnerability)#Retpoline
GCC team hard at work, and did that work many many months ago. An ongoing battle of course.
This isn’t accurate. It’s a low level attack in the sense of requiring someone to understand how CPUs operate at and below the instruction level. However definitely doesn’t need AI to carry out the attack. Also, no matter what level of sophistication is required, eventually it becomes available in a toolkit for script kiddies, requiring no greater sophistication than that required to download and run the toolkit.
Not necessarily. For example, if I had a computer used by multiple users concurrently and those users were not all at the same security level and the entire computer was airgapped, these kinds of exploits would still be useful for a user at a low security level to get an “upgrade”.