The much maligned "Trusted Computing" idea requires that the party you are supposed to trust deserves to be trusted, and Google is DEFINITELY NOT worthy of being trusted, this is a naked power grab to destroy the open web for Google's ad profits no matter the consequences, this would put heavy surveillance in Google's hands, this would eliminate ad-blocking, this would break any and all accessibility features, this would obliterate any competing platform, this is very much opposed to what the web is.
Currently, attestation and "trusted computing" are already a thing, the main "sources of trust" are:
Microsoft
Apple
Smartphone manufacturers
Google
Third party attestators
This is already going on, you need a Microsoft signed stub to boot anything other than Windows on a PC, you need Apple's blessing to boot anything on a Mac, your smartphone manufacturer decides whether you can unlock it and lose attestation, all of Microsoft, Apple and Google run app attestation through their app stores, several governments and companies run attestation software on their company hardware, and so on.
This is the next logical step, to add "web app" attestation, since the previous ones had barely any pushback, and even fanboys of walled gardens cheering them up.
PS: Somewhat ironically, Google's Play Store attestation is one of the weaker ones, just look at Apple's and the list of stuff they collect from the user's device to "attest" it for any app.
you need a Microsoft signed stub to boot anything other than Windows on a PC
Not necessarily, most motherboards and laptops (at least every single one I've ever owned) allow users to enroll their own Secure Boot keys and maintain an entirely non-Microsoft chain of trust. You can also disable secure boot entirely.
Major distros like Ubuntu and Fedora started shipping with Microsoft-signed boot shims as a matter of convenience, not necessity.
Secure Boot itself is not some nefarious mechanism, it is a component of the open UEFI standard. Where Microsoft comes in to play is the fact that most PC vendors are going to pre-enroll Microsoft keys because they are all shipping computers with Windows, and Microsoft wants Secure Boot enabled by default on machines shipping with with their operating system.
Yeah, it's not likely for server racks. Laptops, though, seem somewhat plausible. I'm actually pretty happy with the momentum on tech issues now, on the other hand. I hear stories about right to repair in normal media, my country is in a straight-up showdown with big tech, and GDPR is well established.
Windows 11 is saying you're required to have tpm 2.0 enabled in your bios in order to upgrade. Didn't know what it was on my self built computer until recently when windows said my system wasn't compatible to upgrade.
Tpm modules are pretty good. And you can buy them separately like another card. Motherboards usually have a slot for them. They are tiny like usb drives. They essentially are usb derives but for your passwords and keys. You can even configure Firefox to store your passwords in tpm
TPMs are a security threat. If malware manages to infiltrate it, then that malware is now impossible to remove and has unfettered access to the entire system. You have to junk the entire computer.
No they don’t. Worst case known attacks have resulted in insecure keys being generated. And even if malware could somehow be transferred out of it you wouldn’t have to trash your whole computer - just unplug the TPM
The vulnerability is not specific to VMs. Malicious code running with privileges on the host operating system can also exploit it.
But yes, this can also be used to escape the VM sandbox, and since the TPM has full access to the entire system, exploit code can then gain full privileges on the host.
Can the TPM firmware not write to the flash where it's stored? If it can, then an RCE exploit can do so too, and thereby make itself persistent.
Basically, any successful RCE exploit in a TPM equals total and permanent compromise of the entire physical machine. That's why the TPM is a security threat rather than a security feature.
TPM and SecureBoot are separate UEFI features. Windows 11 requires TPM 2.0. If your system meets the CPU requirements, then it should support this without needing to install a hardware TPM dongle. However, until recently, many vendors turned had this feature turned off for some reason.
Where some confusion comes in is another Windows 11 requirement, that machines be SecureBoot capable. What this actually means in practice is that your system needs to be configured to boot in UEFI mode rather than CSM ("Legacy BIOS") mode.
You can't disable secure boot if you want to use your Nvidia GPU :( though. [edit2: turns out this is a linux mint thing, not the case in Debian or Fedora]
Edit: fine, there may be workarounds and for other distros everything is awesome, but in mint and possibly Ubuntu and Debian for a laptop 2022 RTX3060 you need to set up your MOK keys in secure mode to be able to install the Nvidia drivers, outside secure mode the GPU is simply locked. I wasn't even complaining, there is a way to get it working, so that's fine by me. No need to tell me that I was imagining things.
What does that even mean?! Yes it works for me. That’s the whole bloody point of saying it. Someone was saying “it won’t work for anyone” and I was saying “well it works for me”.
“We can’t land at the moon!”
“Eh, we already have”
“‘Works for me’, so that’s not really valid”
My experience is that Nvidia plays nicer without secure boot. Getting Fedora up and running with the proprietary Nvidia drivers and fully working SecureBoot was quite a headache, whereas everything just worked out of the box when I disabled it.
But this is very much an Nvidia problem and not a SecureBoot problem. There is a reason basically no-one else provides their drivers as one-size-fits-all binary kernel modules.
Me installing Linux Mint on a 2022 laptop with a Nvidia GPU (had windows 11 preinstalled, this was an alongside install). I disabled secure boot at first, but still had to go all the way back and set up my MOK keys and turn on secure boot properly with another password to unlock the GPU.
For many reasons. Nvidia requiring secure boot in this case, which is not available for all distros or kernels on all computers.
The other is requiring a workable kernel module and user space component from Nvidia, which means that as soon as Nvidia deprecates your hardware, you're stuck with legacy drivers, legacy kernels, or both.
Nvidia also has it's own separate userspace stack, meaning it doesn't integrate with the whole DRM & Mesa stack everyone else uses. For the longest time that meant no Wayland support, and it still means you're limited to Gnome only on wayland when using Nvidia AFAIK.
Another issue is switcheable graphics. Since systems with switchable graphics typically combine a Mesa based driver stack (aka everyone but Nvidia, but typically this would be AMD or Intel integrated graphics) with an Nvidia one, it involves swapping out the entire library chain (OpenGL or Vulkan or whatever libraries). This is typically done by using ugly hacks (wrapper scripts using LD_PRELOAD for example) and are prone to failure. Symptoms can be anything as mild as everything running on the integrated graphics, the discrete graphics never sleeping causing poor battery life or high power consumption, to booting to a black screen all or some of the time.
If these things don't bother you or you have no idea what these things mean, or you don't care about them or your hardware lasting more than 3-5y then it probably isn't a big deal to you. But none of the above exist when using Intel, AMD or a mix of those two.
In my experience the past twenty years, proprietary drivers are the root cause of I would say 90% of my issues using Linux.
This is about signing the driver when secure boot is enabled. It doesn't say that Nvidia won't work with secure boot disabled.
I'm using Nvidia with debian and secure boot disabled btw. So the statement, "Nvidia won't work with secure boot disabled" is still wrong. Might be some Linux mint bug, but not a problem of Nvidia per se
My point is that at least some smartphone manufacturers make phones with unlocked boot loaders. As long as there's at least one such manufacturer, does that not disprove your argument?
The Mac boot process is completely unlocked, at least on Intel Macs.
On Modern Macs, the process is somewhat convoluted, but you are able to boot into a custom compiled boot loader / operating system while secure boot is enabled. It just needs a few minor hoops to sign the boot loader - steps that would be difficult to social engineer around but perfectly reasonable to do them intentionally if installing an alternate operating system is your thing.
iPhone is, of course, a different story. Hopefully that changes some day. The CPU and boot process is the same as a Mac, so there's no reason it couldn't be unlocked. Might require government intervention though.
It just needs a few minor hoops to sign the boot loader - steps that would be difficult to social engineer around but perfectly reasonable to do them intentionally if installing an alternate operating system is your thing.
Does that not create a barrier for entry for non-technical people looking to use an alternative operating system?
My Pixel 6 allows me to unlock the boot loader at any time.
By doing that, you no longer pass SafetyNet, and some apps refuse to work without it. If unlocking your device removes features, then you aren't really allowed to do so.
you need a Microsoft signed stub to boot anything other than Windows on a PC
Can you expand on this? Maybe I'm just misunderstanding you, but a "pc" is not a Windows made machine. It is a collection of disparate computer parts made by different companies with no requirement to run Windows as the exclusive OS once put together.
Even on a Windows OS, I can run any program I want (that's made to operate with Windows). I may get a warning if it's not a "known" developer, but I can still run it. Did I miss a big update to how 11 works with unknown software or something?
PCs have been switching to UEFI instead of legacy BIOS startups, one of the features of UEFI is Secure Boot, which ensures all code being run during the boot process is signed with a valid key, which most PC manufacturers have been choosing to be a Microsoft key by default because Windows requires Secure Boot and most PC users want to run Windows. Depending on the manufacturer, you may be able to switch to "legacy BIOS" boot, add your own keys, disable the check, or use a Microsoft signed stub for your alternative OS. Only the last one is guaranteed to work, though.
Even on a Windows OS, I can run any program I want
Windows 10/11 Home in S mode only allows running programs from the Microsoft Store, you need to upgrade the license if you want to "sideload" stuff.
Macs with the T2 could be configured to unlock the bootloader, but from my understanding, the new Apple Silicon Macs (M1, M2) come with the bootloader locked.
Apple specifically chose to leave it (or some part of the chain, I don’t actually know, not an expert lol) open, otherwise, a project like Asahi Linux would not have had a chance from the getgo.
I might try to read up on it when I find the time whether they still have to rely on something signed by Apple before being able to take over in the boot process.
I was going on the fact that the T2 has a "No Security" option for its Secure Boot config, while according to Apple Support the Apple Silicon ones (I don't have one) only offer "Full" or "Reduced" security, which would still require signing:
Change security settings on the startup disk of a Mac with Apple silicon
Dunno how the Asahi folks are planning on doing it, but they do indeed say there is no bootlock 🤔
Update: according to the Asahi docs, I seem to understand that Apple Silicon devices allow creating some sort of "OS containers" that can be chosen to boot from separately from the Mac OS one, and in such a custom container the security can be set to "permissive" limited to that container: https://github.com/AsahiLinux/docs/wiki/Open-OS-Ecosystem-on-Apple-Silicon-Macs
Interesting.
Yep, that’s a fitting term. You definitely still have to rely on macOS (and keep a copy of it around, e.g. for firmware upgrades, which of course basically only come bundled with macOS versions), but other than that, you can do more or less what you want to – as long as you’re outside of it.
I quite like this idea though if I’m being honest, normie users get all the hardened security from the regular boot chain without experiencing basically any difference/downsides, while hardware enthusiasts and (Linux) tinkerers still have options open (well, options that you can get if you have a new chip on a rarer architecture with previously no third party OS).