←back to thread

The Dangers of Microsoft Pluton

(gabrielsieben.tech)
733 points gjsman-1000 | 3 comments | | HN request time: 0.81s | source
Show context
userbinator ◴[] No.32234457[source]
What is to prevent school WiFi from one day requiring a Pluton assertion that your Windows PC hasn’t been tampered with before you can join the network?

Remote attestation is the true enemy of your freedom. The power of the authoritarian corporatocracy to force you to use only the (entire) systems they control. It's worth reading https://www.gnu.org/philosophy/right-to-read.en.html again just to see how prescient Stallman was.

replies(12): >>32234704 #>>32235241 #>>32236203 #>>32236379 #>>32236408 #>>32237069 #>>32237245 #>>32238451 #>>32239672 #>>32239680 #>>32239999 #>>32240046 #
aplanas ◴[] No.32235241[source]
Windows security models and policies are the enemy, not remote attestation (RA).

RA is a technology that has its fair use, and can be desired for other systems, like in Linux. With a pure RA system your services can decide to trust or not those devices on your network that can be compromised, and report to other devices that there is something suspicious.

As anything, this can be used properly to increase the security of your edge architecture, or wrongly to limit the users actions.

Let me put another example. With RA I should be able to authorize validated systems in my R&D VPN. If you are using your own laptop with the company certificate, and the verifier tag the systems as "unknown" or "unhealthy", it will not allow the access to the internal network, but sure you can still use your laptop for anything else. This, IMHO, is a fair use of this technology.

replies(2): >>32235470 #>>32235515 #
fulafel ◴[] No.32235515[source]
Yes, lots of Linux devices apply it like that today: You can't use your banking app or consume DRM crippled media on your Android phone if you have root or run a open source Android distribution.
replies(1): >>32235557 #
Aeolun ◴[] No.32235557[source]
> if you have root

Because god forbid you have control of your own PC?

replies(6): >>32235581 #>>32235770 #>>32235990 #>>32236047 #>>32236569 #>>32237462 #
Arnt ◴[] No.32235990[source]
Uhm, these things don't really take away your control, rather, they shift it from you to you.

The software you boot sets up some state and then toggles a bit, and after that something can't be changed. The state is secure against much modification after that time, but not before that time.

The "you" that boots the device are in control, and the "you" that uses the device after that have exactly what "you" set up at boot time, neither more nor less. If both "you" are the same person, then there's no loss of control.

But of course they're often not really the same person. If you want to boot a Microsoft-signed image, the party that boots is more or less Microsoft, not you personally. But in that case, you also want to use that Microsoft-signed OS, right? So the shift towards boot-time control is then a shift from mostly-Microsoft use-time control to mostly-Microsoft boot-time control. Mostly Microsoft here, mostly Microsoft there, even if the two mostlies aren't quite the same percentage it's difficult to regard this as a significant loss of control.

replies(1): >>32236222 #
raxxorraxor ◴[] No.32236222[source]
This is false and just redefining control.
replies(1): >>32236437 #
Arnt ◴[] No.32236437[source]
How so? Redefines from what to what? Please elaborate.

Perhaps you mean that if you, as owner and legitimate user of a device, are able to perform a particular change only during a brief window of time rather than at any time of your choosing, then that limits your control over the device? If so, then my answer is yes, certainly it does. But it also limits the access of anyone who impersonates you (such as the evil exploity javascript I make your browser execute).

replies(1): >>32237167 #
feanaro ◴[] No.32237167[source]
You're wrong because the bootloader is more often locked than not, and there are various other nefarious controls in place that prevent you from doing it without voiding your warranty, such as one-time fuses.

In theory, yes, you could implement it like you said, but that's not what happens in practice nor the direction we've been tending towards in recent times.

replies(1): >>32237411 #
1. Arnt ◴[] No.32237411[source]
Bootloader locking is orthogonal to whether there's a second CPU like that Pluton in the system.
replies(1): >>32237830 #
2. feanaro ◴[] No.32237830[source]
To quote you:

> The "you" that boots the device are in control, and the "you" that uses the device after that have exactly what "you" set up at boot time, neither more nor less. If both "you" are the same person, then there's no loss of control.

How is it orthogonal? Okay, we're not strictly speaking of only bootloader locking, but of boot-time-control locking.

replies(1): >>32287906 #
3. Arnt ◴[] No.32287906[source]
That CPU is set up by the kernel at boot time, given the code to run, then some hardware bits are toggled such that the main CPU can't write later, it can only access the separate CPU via a defined API.

The kernel could do the same with an in-kernel process. It wouldn't have quite the same depth of defense against userspace sandbox escapes, but could be done. That's roughly how /dev/random was implemented for many years.

Look at the APIs provided — it's nothing new. It's nothing OSes haven't provided before, it's just further removed from a Chrome/FF/Safari sandbox escape, because overcoming the write-once hardware toggles is harder than getting kernel read/write primitives for a sandbox privilege escalation.