Shuttleworth on Ubuntu Linux, Fedora, and the UEFI problem
zdnet.com
zdnet.com
Since our donated laptops are usually 3-5 years old, it seems the project will be able to continue for about that long without any UEFI-related problems. It seems we will start having problems when UEFI-based laptops are old enough to start being donated to us.
Is my understanding reasonable? It is pretty discouraging to think that this project will continue to evolve, only to hit a brick wall in the next 3-5 years.
Still two big "ifs" there, though:
1) You can turn it off if the OEM gives you the option to, and OEMs are under no obligation to do so; and
2) All of the above is only true for x86 machines; for ARM-based systems, Microsoft is requiring that no option be provided for the user to disable Secure Boot (see http://blogs.computerworlduk.com/open-enterprise/2012/01/is-...).
So the upshot is that if your hardware comes from a cooperative OEM, and if it runs on x86, the impact on you will be minimal -- just flipping a switch. But ARM systems and systems from uncooperative OEMs will be locked, so you won't be able to assume that any laptop that comes in over the transom will be useful to you anymore. (ARM laptops are uncommon today, but after Windows RT launches they may become more common.)
EDIT: Looks like since the last time I looked at this issue MS made it mandatory for OEMs to allow users to be able to turn off Secure Boot on x86, see comments below. So having to worry about which OEMs allow it and which don't isn't an issue. ARM systems still can't let users disable it, though.
Wrong.
>Mandatory. Enable/Disable Secure Boot. On non-ARM systems, it is required to implement the ability to disable Secure Boot via firmware setup. A physically present user must be allowed to disable Secure Boot via firmware setup without possession of PKpriv. A Windows Server may also disable Secure Boot remotely using a strongly authenticated (preferably public-key based) out-of-band management connection, such as to a baseboard management controller or service processor. Programmatic disabling of Secure Boot either during Boot Services or after exiting EFI Boot Services MUST NOT be possible. Disabling Secure Boot must not be possible on ARM systems.
Source:
Windows Hardware Certification requirements
http://msdn.microsoft.com/en-us/library/windows/hardware/jj1...
My recollection was based on the last burst of news coverage on the issue late last year; it sounds like Linux vendors like Red Hat worked with Microsoft on the issue between now and then (Red Hat this month: "the Linux Foundation, hardware partners, and Microsoft to collaboratively develop a UEFI secure boot mechanism that allows user/customer choice and ease of use" -- http://www.redhat.com/about/news/archive/2012/6/uefi-secure-...), so it may be that the ambiguity was present in older MS certification specs but got cleared up later on...
Yes, that is exactly what it means.
There might be value in having a recognized "professional body" where membership can be revoked but having a rubber stamp issued by such an org allows the developers code to bypass a lot of the BS.
So "thou shalt not write malware" as opposed to "thou shalt not harm the interests of the platform vendor".
Maybe Github could offer a service to sign your software, free for open source, and pay for closed. They might run some kind of automated testing on your source for deviant behavior and to ensure quality, sign it, and revoke its keys if verified complaints are submitted. If the author is found to have malicious intent, then Github could ban him/revoke all his keys, and maybe a competitor could choose to sign his software instead, possibly one specializing in high-risk customers.
>That's expensive. Like millions of dollars expensive. It would also take a lot of time to set up, and that's not really time we had. And, finally, nobody was jumping at the opportunity to volunteer. So no generic Linux key.
It's also important to point out that the secure code chain is also held up (albeit often incorrectly) as an important criteria for a working DRM implementation. The content providers like that story, and like to hear about efforts to prevent rogue code from running. Certainly this has a lot to do with the Intel/Microsoft rush to secure boot.
The point still stands on whether or not this is actually the best or most effective way to go about tackling the problem. And as you point out the "unintended" of securing the DRM chain and of increasing vendor OS lock-in are not to be ignored and probably just as much a factor behind adoption as the purported security issues.
Or do you mean mustache-twirling evil conspiracy "plausibly deniable" motives? I'm sure it's easy to ascribe malice to Microsoft's actions here.
That's from the linked canonical article on the issue: http://blog.canonical.com/2011/10/28/white-paper-secure-boot...
I'm fairly flummoxed as to why this hasn't received antitrust review, frankly.
Which is not to say that this technology is useless, boot-level attacks are important to defend against even if they aren't common now. But one has to wonder whether the costs are worth the benefit, on end user machines?
Note that I'm not saying that Secure Boot is significant in the battle against bots, but rather that security is important even if there is not immediate benefits to the users of that particular machine.
So verifying the bootloader with EUFI is a great thing that must happen. It could be completely transparent to most users -- their system works the same, it's just more secure. The problem is that Microsoft has engineered it so in practice only their key can be on the system to unlock it. Once this scheme gets established they might even be able to maintain a 'windows tax' just to unlock the hardware even if you don't even use their OS. That's really the only negative about EUFI.
But when you pressed Esc or F1 or whatever for a boot menu, instead of choosing what partition to boot from you choose which key. ie the list is
1) Microsoft, Inc. Operating System
2) Red Hat, Inc. Operating System
3) ...
So even if somebody hacked Red Hat and stole their key and signed something malicious, the user would still have to select that key on boot in order for it to run. Maybe the boot menu would only list keys that verified an actual installed OS.
In any case, just because you have a bunch of keys in the BIOS doesn't mean you have to automatically boot anything they sign.
Frankly I can't wait for the rise of great UEFI Android tablets that lock out Windows OSes as "insecure". (Most Windows users won't know how to turn off secure boot. I hope Android doesn't actually permanently lock anything down.) Then watch Redmond accuse Google of anti-competitive behavior, going against the users wishes, and general mean-spirited-ness.
It's great that Linux is out there. I use Ubuntu for the virtual machine I use exclusively for Facebook. I use another copy for the virtual machine I use exclusively for Linkedin, and Xbuntu for the one by which I access Gmail.
The very fact I use Linux at all places me in a tiny slice of the computer culture - the fact that I am running Linux in a virtual machine is without a doubt not a particularly distinguishing feature.
I've been reading Hackers and Painters. And the problem with Linux is that it's proponents lack empathy (in Paul Graham's sense). Nobody is going to give their mother a Linux box - PG even talks about his mother's Mac needing an upgrade.
There aren't any Linux laptops at your local BestBuy today because regular people don't want them...and BestBuy's GeekSquad damn sure doesn't want to support them. It's not Microsoft. It's the market.
Interestingly, this was her first real computer experience. While I could get to fix it, my cousin let her use a Windows 7 laptop. There were plenty of complaints from her about how unfriendly, unpredictable and annoying the interface was. It was kind of funny to hear that since usually you hear the reverse (ex-Windows users complain about Ubuntu GUI).
However, after installing ubuntu on my Mom's computer last year, my support calls got cut in half. Now she doesn't have to fight with malware, viruses all the time. I think Linux as a desktop has matured enough that most people can use it for their everyday computing.
On the other hand, if they are forced to use it by their sys-admin, then of course they will.