Jeśli kupię komputer z systemem Windows 8 i funkcją bezpiecznego rozruchu, czy nadal będę mógł zainstalować system Linux?

48

Wiele słyszałem o tym, jak Microsoft wdraża UEFI Secure Boot w Windows 8. Najwyraźniej zapobiega uruchamianiu na komputerze „nieautoryzowanych” programów ładujących, aby zapobiec złośliwemu oprogramowaniu. Organizacja Free Software Foundation prowadzi kampanię przeciwko bezpiecznemu rozruchowi, a wiele osób mówi w Internecie, że Microsoft „łapie za energię”, aby „wyeliminować wolne systemy operacyjne”.

Jeśli otrzymam komputer z zainstalowanym systemem Windows 8 i funkcją bezpiecznego rozruchu, czy nadal będę mógł zainstalować system Linux (lub inny system operacyjny) później? Czy też komputer z funkcją bezpiecznego rozruchu działa tylko z systemem Windows?

nhinkle
źródło

Odpowiedzi:

70

Przede wszystkim prosta odpowiedź na twoje pytanie:

  • Jeśli masz tablet ARM z systemem Windows RT (np. Surface RT lub Asus Vivo RT), nie będziesz mógł wyłączyć Bezpiecznego rozruchu ani zainstalować innych systemów operacyjnych . Podobnie jak wiele innych tabletów ARM, na tych urządzeniach będzie działał tylko system operacyjny, z którym pochodzą.

  • Jeśli masz komputer bez ARM z systemem Windows 8 (taki jak Surface Pro lub dowolny z niezliczonych ultrabooków, komputerów stacjonarnych i tabletów z procesorem x86-64), możesz całkowicie wyłączyć Bezpieczny rozruch lub zainstalować własne klucze i podpisz swój bootloader. Tak czy inaczej, możesz zainstalować system operacyjny innej firmy, taki jak dystrybucja Linuksa, FreeBSD lub DOS lub cokolwiek ci się podoba.


Teraz, jeśli chodzi o szczegóły, w jaki sposób działa cała ta funkcja Bezpiecznego rozruchu: Istnieje wiele nieporozumień na temat Bezpiecznego rozruchu, szczególnie od Free Software Foundation i podobnych grup. Utrudniło to znalezienie informacji o tym, co faktycznie robi Bezpieczny rozruch, więc postaram się wyjaśnić. Zauważ, że nie mam osobistego doświadczenia w tworzeniu bezpiecznych systemów rozruchowych itp.; tego właśnie nauczyłem się czytając online.

Przede wszystkim Secure Boot nie jest czymś, co wymyślił Microsoft. Są pierwszymi, którzy szeroko go wdrożyli, ale go nie wymyślili. Jest to część specyfikacji UEFI , która jest zasadniczo nowszym zamiennikiem starego systemu BIOS, do którego prawdopodobnie jesteś przyzwyczajony. UEFI to w zasadzie oprogramowanie, które komunikuje system operacyjny ze sprzętem. Standardy UEFI są tworzone przez grupę zwaną „ Forum UEFI ”, w skład której wchodzą przedstawiciele branży komputerowej, w tym Microsoft, Apple, Intel, AMD oraz garstka producentów komputerów.

Drugi najważniejszy punkt, włączenie Bezpiecznego rozruchu na komputerze nie oznacza, że ​​komputer nigdy nie uruchomi żadnego innego systemu operacyjnego . W rzeczywistości, własne wymagania Microsoft dotyczące certyfikacji sprzętu dla systemu Windows mówią, że w przypadku systemów innych niż ARM musisz mieć możliwość zarówno bezpiecznego rozruchu, jak i zmiany kluczy (aby zezwolić na inne systemy operacyjne). Więcej na ten temat później.

 

Do czego służy Secure Boot?

Zasadniczo zapobiega atakowi złośliwego oprogramowania na komputer podczas sekwencji rozruchowej. Złośliwe oprogramowanie, które przedostaje się przez moduł ładujący, może być bardzo trudne do wykrycia i zatrzymania, ponieważ może przeniknąć do funkcji systemu operacyjnego na niskim poziomie, uniemożliwiając jego wykrycie przez oprogramowanie antywirusowe. Bezpieczne uruchamianie polega jedynie na sprawdzeniu, czy bootloader pochodzi z zaufanego źródła i czy nie został zmieniony. Pomyśl o tym jak o wyskakujących kapslach na butelkach, które mówią „nie otwieraj, jeśli pokrywa jest wysunięta lub sfałszowano ją”.

Przycisk wyskakuje po zerwaniu oryginalnej pieczęci

Na najwyższym poziomie ochrony masz klucz platformy (PK). W każdym systemie jest tylko jedna PK i jest ona instalowana przez OEM podczas produkcji. Ten klucz służy do ochrony bazy danych KEK. Baza danych KEK zawiera klucze wymiany kluczy, które służą do modyfikowania innych bezpiecznych baz danych rozruchu. Może istnieć wiele KEK. Istnieje wtedy trzeci poziom: autoryzowana baza danych (db) i zabroniona baza danych (dbx). Zawierają one informacje o urzędach certyfikacji, dodatkowych kluczach kryptograficznych i obrazach urządzeń UEFI, które odpowiednio można zezwolić lub zablokować. Aby bootloader mógł zostać uruchomiony, musi być podpisany kryptograficznie za pomocą klucza znajdującego się w db, a nie w dbx.

Klucz platformy> KEK> (Dozwolone skróty / Niedozwolone skróty)
Obraz z budowania systemu Windows 8: Ochrona środowiska sprzed systemu operacyjnego za pomocą UEFI

Jak to działa w prawdziwym systemie Windows 8 Certified

OEM generuje własną PK, a Microsoft zapewnia KEK, który OEM musi wstępnie załadować do bazy danych KEK. Microsoft następnie podpisuje program ładujący Windows 8 i używa KEK do umieszczenia tego podpisu w autoryzowanej bazie danych. Gdy UEFI uruchamia komputer, weryfikuje PK, weryfikuje KEK Microsoftu, a następnie weryfikuje bootloader. Jeśli wszystko wygląda dobrze, system operacyjny może się uruchomić.

Bezpieczny rozruch w systemie Windows 8: natywny UEFI> tylko zweryfikowany moduł ładujący OS> OS Start / UEFI uruchomi tylko zweryfikowany moduł ładujący system operacyjny / Złośliwe oprogramowanie nie może zmienić modułu ładującego rozruch
Obraz z budowania systemu Windows 8: Ochrona środowiska sprzed systemu operacyjnego za pomocą UEFI

 

Skąd się biorą systemy zewnętrzne, takie jak Linux?

Po pierwsze, każda dystrybucja Linuksa może zdecydować się na wygenerowanie KEK i domyślnie poprosić producentów OEM o włączenie go do bazy danych KEK. Mieliby wtedy tyle samo kontroli nad procesem rozruchu, co Microsoft. Problemy z tym, jak wyjaśnił Matthew Garrett Fedory , polegają na tym, że: a) trudno byłoby każdemu producentowi komputerów dołączyć klucz Fedory, i b) byłoby niesprawiedliwe wobec innych dystrybucji Linuksa, ponieważ ich klucz nie byłby dołączony , a mniejsze dystrybucje nie mają tylu partnerów OEM.

Fedora wybrała (i inne dystrybucje idą w tym samym kierunku) to korzystanie z usług podpisywania firmy Microsoft. Ten scenariusz wymaga zapłaty 99 USD na rzecz Verisign (urzędu certyfikacji, z którego korzysta Microsoft) i zapewnia programistom możliwość podpisania programu ładującego za pomocą KEK Microsoftu. Ponieważ KEK firmy Microsoft będzie już na większości komputerów, pozwala to podpisać program ładujący, aby korzystać z Bezpiecznego rozruchu, bez konieczności posiadania własnego KEK. Ostatecznie jest bardziej kompatybilny z większą liczbą komputerów i kosztuje mniej niż ogólnie, tworząc własne systemy podpisywania i dystrybucji kluczy. Więcej szczegółów na temat tego, jak to będzie działać (używając GRUB, podpisane moduły jądra i inne informacje techniczne) w wyżej wspomnianym wpisie na blogu, które polecam przeczytać, jeśli jesteś zainteresowany tego rodzaju rzeczami.

Załóżmy, że nie chcesz radzić sobie z kłopotami związanymi z rejestracją w systemie Microsoft, nie chcesz płacić 99 USD, lub po prostu masz pretensje do dużych korporacji zaczynających się na literę M. Istnieje jeszcze jedna opcja, aby nadal używać Bezpiecznego rozruchu i uruchom system operacyjny inny niż Windows. Certyfikacja sprzętowa Microsoft wymaga, aby producenci OEM wprowadzali swój system w tryb „niestandardowy” UEFI, w którym mogą ręcznie modyfikować bazy danych Secure Boot i PK. System można wprowadzić w tryb konfiguracji UEFI, w którym użytkownik może nawet określić własną PK i sam podpisać programy ładujące.

Ponadto własne wymagania certyfikacyjne firmy Microsoft nakładają na producentów OEM obowiązek włączenia metody wyłączania bezpiecznego rozruchu w systemach innych niż ARM. Możesz wyłączyć Bezpieczny rozruch! Jedynymi systemami, w których nie można wyłączyć Bezpiecznego rozruchu, są systemy ARM z systemem Windows RT, które działają bardziej podobnie do iPada, w których nie można załadować niestandardowych systemów operacyjnych. Chociaż chciałbym, aby możliwa była zmiana systemu operacyjnego na urządzeniach ARM, można śmiało powiedzieć, że Microsoft przestrzega standardu branżowego w odniesieniu do tabletów.

 

Więc bezpieczny rozruch nie jest z natury zły?

Jak widać, Secure Boot nie jest zły i nie ogranicza się tylko do korzystania z systemu Windows. FSF i inni są tak zaniepokojeni tym, że dodaje dodatkowych kroków do korzystania z systemu operacyjnego innej firmy. Dystrybucje Linuksa mogą nie lubić płacenia za używanie klucza Microsoft, ale jest to najłatwiejszy i najbardziej opłacalny sposób na uruchomienie Bezpiecznego rozruchu w systemie Linux. Na szczęście łatwo jest wyłączyć Bezpieczny rozruch i można dodawać różne klucze, co pozwala uniknąć konieczności kontaktowania się z firmą Microsoft.

Biorąc pod uwagę ilość coraz bardziej zaawansowanego złośliwego oprogramowania, Secure Boot wydaje się rozsądnym pomysłem. Nie ma to być zły spisek, by przejąć kontrolę nad światem, i jest o wiele mniej przerażający, niż niektórzy eksperci wolnego oprogramowania mogą w to uwierzyć.

złe logo UEFI

Dodatkowe czytanie:


TL; DR: Bezpieczny rozruch chroni złośliwe oprogramowanie przed zainfekowaniem systemu na niskim, niewykrywalnym poziomie podczas uruchamiania. Każdy może stworzyć niezbędne klucze, aby działało, ale trudno jest przekonać twórców komputerów, aby rozdali swój klucz wszystkim, więc możesz też zapłacić Verisign za użycie klucza Microsoft do podpisania programów ładujących i ich uruchomienie. Możesz także wyłączyć Bezpieczny rozruch na dowolnym komputerze nieobsługującym ARM.

Ostatnia myśl, w odniesieniu do kampanii FSF przeciwko bezpiecznego rozruchu: Niektóre z ich obaw (czyli to sprawia, że trudniej zainstalować darmowe systemy operacyjne) są ważne do punktu . Mówienie, że ograniczenia „uniemożliwią każdemu uruchamianie czegokolwiek poza systemem Windows” jest wyraźnie fałszywe z powodów przedstawionych powyżej. Kampania przeciwko UEFI / Secure Boot jako technologii jest krótkowzroczna, mylnie poinformowana i raczej nie będzie skuteczna. Ważniejsze jest upewnienie się, że producenci faktycznie spełniają wymagania Microsoftu dotyczące zezwolenia użytkownikom na wyłączenie Bezpiecznego rozruchu lub zmianę kluczy, jeśli sobie tego życzą.

nhinkle
źródło
4
>> „Przede wszystkim Secure Boot nie jest czymś, co wymyślił Microsoft. ... Jest częścią specyfikacji UEFI, która jest zasadniczo nowszym zamiennikiem starego BIOS-u, do którego prawdopodobnie jesteś przyzwyczajony. ... UEFI standardy są tworzone przez grupę o nazwie „Forum UEFI”, która składa się z przedstawicieli branży komputerowej, w tym Microsoft, Apple ... ”Więc masz na myśli: Secure Boot nie jest czymś, co Microsoft wymyślił sam
mcalex
@mcalex Myślę, że to uczciwa ocena.
nhinkle
2
To cudownie dobrze zrobione wyjaśnienie. Myślałem, że znam Bezpieczny rozruch, ale wiele nauczyłem się z tej odpowiedzi. Z dumą mogę to głosować.
Harsha K
4
+1 < Ivo Style > Być może powinieneś napisać wpis na blogu o tym @nhinkle; -) </ Ivo Style >
Tamara Wijsman
2
Martwi mnie tu nie Microsoft , to producenci. Jasne, urządzenia ARM może nadal być postrzegane jako zabawki teraz , ale różne platformy ARM mają pochodzić strasznie długą drogę w ciągu ostatnich kilku lat, i mogę łatwo wyobrazić sobie dzień, kiedy ludzie używają ich do więcej niż tylko oglądanie filmów z YouTube ... Rezygnacja z możliwości aktualizacji lub wymiany systemu operacyjnego wydaje się krótkowzroczna. To powiedziawszy, dziękuję za napisanie tego - zdecydowanie pomaga wyjaśnić, co jest, a co nie jest problematyczne w Bezpiecznym rozruchu.
Shog9