Isn't it somewhat like a fuse in an electric circuit?
Let's say, for example, that you had perfect overvoltage protection implemented in firmware, and could disconnect the mains quickly enough to prevent damage or a fire. But, the feature is implemented in firmware, which can be modified, so a malicious individual could disable this protection and expose you to risk of damage or fire.
By implementing an unmodifiable security feature (like a physical fuse), you minimize the risk of a malicious individual bypassing the protection or security control.
Oh, I'm absolutely in favor of tamper-resistant hardware security modules.
But I also want the freedom to turn them off. If my threat model prioritizes despotic governments with the ear of AMD/Intel/ARM Licensees over, say, phishing rings, I should have the freedom to roll the dice if I so choose.
Sorry, I don't understand how this prioritizes despotic governments over phishing rings. Could you please clarify that?
I think the goal here is two things:
1. Allow organizations that want a trusted execution environment to refuse to boot if the OS is not signed properly, to prevent risk of unapproved software execution.
2. Prevent attackers with physical access to the device from booting an unapproved OS that might be meant to extract encryption keys, or otherwise extract or tamper with data.
These are very specific attack vectors that large enterprise customers are asking for to protect their data from malicious insiders, or just anyone with physical access to the datacenter and bad intentions.
That it might be used to prevent Linux from loading is simply an unintended consequence.
I believe points 1 and 2 could be addressed by implementing a trust-on-first-use model whereby the customer can set an initial signing public key for the PSP, which is then used to sign specific boot parameters.
That way, as the customer, I can tell the PSP that I'd like to either require PSP-mediated secure boot, or permit boot if the PSP is disabled. OEMs and vendors selling to enterprise customers can pre-sign it for convenience, and tinfoil hats like me can disable it. Everybody wins.
One of things I was taught is that you can't really protect if there is a physical access. Yes, you can make it harder, but that's pretty much it. That's why anyone who is serious have multiple layers of security.
Take for example Google data centers, you need access to enter the facility and access to whatever you supposed to work. There are security guards which will follow and stay with you while you are performing your work.
The mechanisms in the CPUs are there to protect CPUs from their users. Let say again you are a Google and are planning to use this technology. Why would you trust a third party to decide (by signing) what can run and cannot run on the CPU. What if that 3rd party happens to be your competitor. The issue is that person/company who owns the CPU doesn't have full control over it, they can't load their own certificates and use them for signing. They need to trust 3rd party with it.
Yes, that's why things like UEFI were invented to secure the hardware.
Those things are not necessarily bad, the problem is with having control over what your computer runs. It's about whether you decide that or a 3rd party that you might not necessarily trust.
If things are modifiable before the machine boots, and can't be modified once system has booted, then malware should not be able to modify it.
You can google around for secure boot, trusted boot, chain of trust, etc. Breaking secure boot is the biggest vulnerability a device can experience (e.g. Apple will pay you the most money for this type of break).
This is more like a fuse that can read and modify the memory of the computer it delivers power to, is accessible over the internet, and for which you cannot get the source code let alone run your own code on it.
Let's say, for example, that you had perfect overvoltage protection implemented in firmware, and could disconnect the mains quickly enough to prevent damage or a fire. But, the feature is implemented in firmware, which can be modified, so a malicious individual could disable this protection and expose you to risk of damage or fire.
By implementing an unmodifiable security feature (like a physical fuse), you minimize the risk of a malicious individual bypassing the protection or security control.