Matthew Garrett ([personal profile] mjg59) wrote2011-09-23 07:57 am
Entry tags:

UEFI secure booting (part 2)

Updated: Three things happened to defuse this situation:
  1. Microsoft mandated that it be possible to disable Secure Boot on any Windows certified systems
  2. Microsoft mandated that it be possible for the user to replace the original Secure Boot keys on any Windows certified systems
  3. Microsoft were willing to sign alternative OS bootloaders with their signing keys

As a result, the worst case scenario did not come to pass and it's still possible for users to install Linux on their systems.

Original content follows:

Microsoft have responded to suggestions that Windows 8 may make it difficult to boot alternative operating systems. What's interesting is that at no point do they contradict anything I've said. As things stand, Windows 8 certified systems will make it either more difficult or impossible to install alternative operating systems. But let's have some more background.

We became aware of this issue in early August. Since then, we at Red Hat have been discussing the problem with other Linux vendors, hardware vendors and BIOS vendors. We've been making sure that we understood the ramifications of the policy in order to avoid saying anything that wasn't backed up by facts. These are the facts:

  • Windows 8 certification requires that hardware ship with UEFI secure boot enabled.
  • Windows 8 certification does not require that the user be able to disable UEFI secure boot, and we've already been informed by hardware vendors that some hardware will not have this option.
  • Windows 8 certification does not require that the system ship with any keys other than Microsoft's.
  • A system that ships with UEFI secure boot enabled and only includes Microsoft's signing keys will only securely boot Microsoft operating systems.

Microsoft have a dominant position in the desktop operating system market. Despite Apple's huge comeback over the past decade, their worldwide share of the desktop market is below 5%. Linux is far below that. Microsoft own well over 90% of the market. Competition in that market is tough, and vendors will take every break they can get. That includes the Windows logo program, in which Microsoft give incentives to vendors to sell hardware that meets their certification requirements. Vendors who choose not to follow the certification requirements will be at a disadvantage in the marketplace. So while it's up to vendors to choose whether or not to follow the certification requirements, Microsoft's dominant position means that they'd be losing sales by doing so.

Why is this a problem? Because there's no central certification authority for UEFI signing keys. Microsoft can require that hardware vendors include their keys. Their competition can't. A system that ships with Microsoft's signing keys and no others will be unable to perform secure boot of any operating system other than Microsoft's. No other vendor has the same position of power over the hardware vendors. Red Hat is unable to ensure that every OEM carries their signing key. Nor is Canonical. Nor is Nvidia, or AMD or any other PC component manufacturer. Microsoft's influence here is greater than even Intel's.

What does this mean for the end user? Microsoft claim that the customer is in control of their PC. That's true, if by "customer" they mean "hardware manufacturer". The end user is not guaranteed the ability to install extra signing keys in order to securely boot the operating system of their choice. The end user is not guaranteed the ability to disable this functionality. The end user is not guaranteed that their system will include the signing keys that would be required for them to swap their graphics card for one from another vendor, or replace their network card and still be able to netboot, or install a newer SATA controller and have it recognise their hard drive in the firmware. The end user is no longer in control of their PC.

If Microsoft were serious about giving the end user control, they'd be mandating that systems ship without any keys installed. The user would then have the ability to make an informed and conscious decision to limit the flexibility of their system and install the keys. The user would be told what they'd be gaining and what they'd be giving up.

The final irony? If the user has no control over the installed keys, the user has no way to indicate that they don't trust Microsoft products. They can prevent their system booting malware. They can prevent their system booting Red Hat, Ubuntu, FreeBSD, OS X or any other operating system. But they can't prevent their system from running Windows 8.

Microsoft's rebuttal is entirely factually accurate. But it's also misleading. The truth is that Microsoft's move removes control from the end user and places it in the hands of Microsoft and the hardware vendors. The truth is that it makes it more difficult to run anything other than Windows. The truth is that UEFI secure boot is a valuable and worthwhile feature that Microsoft are misusing to gain tighter control over the market. And the truth is that Microsoft haven't even attempted to argue otherwise.

[identity profile] benanov.livejournal.com 2011-09-23 01:16 pm (UTC)(link)
"If Microsoft were serious about giving the end user control, they'd be mandating that systems ship without any keys installed. The user would then have the ability to make an informed and conscious decision to limit the flexibility of their system and install the keys. The user would be told what they'd be gaining and what they'd be giving up."

Sadly, this "inform the user" approach doesn't work 100% of the time. A lot of questions like this (say, on initial boot) are answered by someone who is not the user. Think "Best Buy Optimized."

I didn't think about the case of hardware swaps, and that's even more anti-consumer.
pseudomonas: "pseudomonas" in London Underground roundel (Default)

[personal profile] pseudomonas 2011-09-23 01:21 pm (UTC)(link)
Is there anywhere a lay summary of the issues that this throws up that I can send to MEPs etc?

I think your problem

(Anonymous) 2011-09-23 01:43 pm (UTC)(link)
is with UEFI. This is nothing to do with Windows 8. I am not sure what makes you go about whining on Windows 8 though. If user wants to install other OS they will get the keys from OEM or disable the secure boot. Doesn't Chrome OS comes with something like this?

How are they misusing?

(Anonymous) 2011-09-23 01:46 pm (UTC)(link)
Why do you subscribe to 80s boot loader. This could be better from the security stand point. To make it work with UEFI is your problem not theirs. I dont see this as being MS in control. I agree with you on OEM being in control. As the previous user indicated doesn't Google Chrome OS doesn't do something like this?

Another misuse of monopoly

[identity profile] https://www.google.com/accounts/o8/id?id=AItOawkztmvh3F32KzM11EajT4PC9eXpIo0881A 2011-09-23 01:51 pm (UTC)(link)
I think that in the EU Microsoft is on very thin ice considering how we've reacted to their misuse of monopoly in the past. This time however they're trying to hide behind that minor detail that Microsoft is "only" a board member of UEFI forum. I'd say they're shooting themselves in the leg with these kind of stunts. They're certainly not looking at the big picture. Instead of forcing others they should be doing something others really want to adopt (and not sue them over adopting it either).

You can't expect to be running a successful company if you're this fearful of competitors.

Re: I think your problem

(Anonymous) 2011-09-23 01:52 pm (UTC)(link)
No. You didn't get it. The problem is not UEFI. It's *the end user not having the keys*. And it's Microsoft pushing OEMs to create just that situation.

Go read Matthew's article carefully. Some hardware vendors already mumble about just installing Microsoft's key and nothing else.

Microsoft is a Monopoly if This happens

(Anonymous) 2011-09-23 01:59 pm (UTC)(link)
Microsoft will have a monopoly IF this happens. However, I think that most companies wouldn't necessarily force UEFI secure booting. According to the Tested Podcast, there are already UEFI level 2 systems out there that can do this.

Most system vendors I know wouldn't lock you into....well anything. They'd rather make a sale then force you to use something you don't want.

I DO think having a central management authority over UEFI secure boot keys should be done or at the very least something like a multivendor alliance (like Open Handset Alliance but better...).

This has anti-trust implications

(Anonymous) 2011-09-23 02:06 pm (UTC)(link)
It would surprise me if the first motherboard manufacturer to sell a Windows-booting-only motherboard in the US to find itself, along with Microsoft, explaining in Federal Court just how this key signing scheme doesn't violate the Sherman Antitrust act or section 3 of the Clayton Act.

If I were a manufacturer I might think long and hard about having to make that argument, especially if my co-defendant was a convicted monopolist.

Planned obsolecence at its best

[identity profile] https://www.google.com/accounts/o8/id?id=AItOawnICbHaV3lMV4mOH5Vwq2G6wJ-9Y8kg-ao 2011-09-23 02:15 pm (UTC)(link)
Hm...
If Microsoft changes its UEFI keys on a future version of Windows, hardware that only stores the former version of Microsoft's keys on the bootloader will be stuck forever on an old version of the operating system.

It would not help

(Anonymous) 2011-09-23 02:17 pm (UTC)(link)
This would not help, since the GRUB EFI image is generated on the computer where you install it, in order to include the modules required for GRUB to find its files.

The user must be able to sign his own GRUB image himself, and this signature must be accepted by the board's firwmare.

What does this mean?

(Anonymous) 2011-09-23 02:26 pm (UTC)(link)
The article is not very clear.

Does it mean that there will be hardware that refuses to boot anything that is not signed by Microsoft? (due to "incentives" provided by Microsoft)

If so, I assume that would be a gross violation of Antitrust laws everywhere and Microsoft should be brought to court ASAP over it if it happens, and warned in advance of this beforehand.

If instead it just means that the BIOS/bootloader won't give you "warm fuzzy security feelings" when you boot something not signed by Microsoft, most likely nobody really cares.

Re: Planned obsolecence at its best

[identity profile] benanov.livejournal.com 2011-09-23 02:27 pm (UTC)(link)
That makes Apple's "let's change chip architectures every 10 years and only support one more point release" look positively saintly.

How many...

(Anonymous) 2011-09-23 02:28 pm (UTC)(link)
...Linux users buy a pc from an OEM?
versus buying from a component retailer?

Do you think ASUS, MSI etc will ship their consumer boxed MB's with secure boot enabled? Not if they want to shift any they units won't.

Of course the MB's they supply to HP, DELL etc will have exactly what the OEM wants on it and nothing else.

So we have a situation where Microsoft are looking at the issue from their perspective (shock horror), their competitors are throwing FUD.

You need to be engaging the Todd Bradley's of the world to get a commitment to allow disabling of secure boot if the USER wants to. That way we all win. 90% of the market sees no change and the rest get to choose. Note nothing to do with the OS vendor is required. The FOSS community is making itself look pretty crazy atm sadly.

(Anonymous) 2011-09-23 02:31 pm (UTC)(link)
If microsoft pull this off this anti-competitive behaviour, it can only end up in one place: the courts.

User in control ?

[identity profile] https://me.yahoo.com/ydroneaud#8e5a5 2011-09-23 02:36 pm (UTC)(link)
BTW, what is going to happen when the secure boot failed to actually boot your system because some malware "corrupt" some part of the system ?

What will happen to your data ?

How can you recover your system in this case ?

Will Microsoft provide some signed removable bootable device to restore its operating system on your system ?

How anti-virus vendor will be able to provide tools to remove malware is such cases ?

(Anonymous) 2011-09-23 02:38 pm (UTC)(link)
Perhaps a "proactive" complaint should be filed with the EU commission and the FTC instead. MEPs might be a good start, but probably won't be enough.

I guess...

(Anonymous) 2011-09-23 02:41 pm (UTC)(link)
...the author meant whoever posted the "I think your problem" post rather than the parent of their post.

Re: How many...

[identity profile] marcanoonline.com 2011-09-23 02:42 pm (UTC)(link)
"...Linux users buy a pc from an OEM?
versus buying from a component retailer?"

Sure, next time I will build my laptop from components, instead of buying it already built

The option to disable Secure boot is not enough, we want to be able to secure boot other OSs, so an option to install keys is the only one I will accept

(Anonymous) 2011-09-23 02:50 pm (UTC)(link)
Equally:

■Windows 8 certification does not require that UEFI secure boot can't be disabled

■Windows 8 startup does not require that the user be enables UEFI secure boot.

■Windows 8 certification does not prevent the system shipping with any keys other than Microsoft's.

■A system that ships with UEFI secure boot enabled and only includes Ubuntu's signing keys will only securely boot Ubuntu operating systems.

See the thing with this is that it is entirely down to what the OEMs decide to provide in their hardware implementation and that is fundamentally down to what purchasers want from their systems. Microsoft have no say other than it'll need a Microsoft key and secure boot support if they want to brand it as a Windows 8 PC, which makes sense.

It's not hard to see why, for example, a bank that runs Windows on it's corporate desktop might not want anyone booting from another OS that will be able to compromise system security and so will prefer systems that follow that approach. Equally systems sold to the general public will more likely have a flexible approach to how they're used.

It's about having the freedom to choose what functionality is in the PC you buy. Isn't that supposed to be a good thing?

Ah

(Anonymous) 2011-09-23 03:08 pm (UTC)(link)
I see your point. Thanks for pointing that out :)

Page 1 of 8