
Nowy system bezpiecznego rozruchu UEFI w systemie Windows 8 spowodował więcej niż sprawiedliwy udział w zamieszaniu, zwłaszcza wśród podwójnych programów rozruchowych. Czytaj dalej, gdy wyjaśniamy nieporozumienia dotyczące podwójnego uruchamiania w systemie Windows 8 i Linux.
Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser — pododdziału Stack Exchange, społecznościowej grupy witryn internetowych z pytaniami i odpowiedziami.
Pytanie
Czytnik SuperUser Harsha K jest ciekawy nowego systemu UEFI. On pisze:
Wiele słyszałem o tym, jak Microsoft implementuje UEFI Secure Boot w Windows 8. Podobno zapobiega uruchamianiu „nieautoryzowanych” programów ładujących na komputerze, aby zapobiec złośliwemu oprogramowaniu. Fundacja Free Software Foundation prowadzi kampanię przeciwko bezpiecznemu uruchamianiu, a wiele osób mówi w sieci, że Microsoft to „złapanie mocy”, aby „wyeliminować wolne systemy operacyjne”.
Jeśli otrzymam komputer z preinstalowanym systemem Windows 8 i Bezpiecznym rozruchem, czy nadal będę mógł później zainstalować system Linux (lub inny system operacyjny)? A może komputer z funkcją Secure Boot działa tylko z systemem Windows?
Więc o co chodzi? Czy podwójne buty naprawdę nie mają szczęścia?
Odpowiedź
Współtwórca SuperUser Nathan Hinkle oferuje fantastyczny przegląd tego, czym UEFI jest, a czym nie jest:
Przede wszystkim prosta odpowiedź na Twoje pytanie:
- Jeśli masz tablet ARMz systemem Windows RT (np. Surface RT lub Asus Vivo RT), tonie będziesz w stanie wyłączyć bezpiecznego rozruchu ani zainstalować innych systemów operacyjnych. Podobnie jak wiele innych tabletów ARM, te urządzenia będątylkouruchomić system operacyjny, z którym pochodzą.
- Jeśli masz komputer bez ARMz systemem Windows 8 (takim jak Surface Pro lub dowolny z niezliczonych ultrabooków, komputerów stacjonarnych i tabletów z procesorem x86-64), a następniemożesz całkowicie wyłączyć Bezpieczny rozruch, lub możesz zainstalować własne klucze i podpisać własny bootloader. Tak czy inaczej,możesz zainstalować system operacyjny innej firmy, taki jak dystrybucja Linuksalub FreeBSD lub DOS lub cokolwiek ci się podoba.
Teraz przejdźmy do szczegółów tego, jak faktycznie działa ten cały bezpieczny rozruch: istnieje wiele dezinformacji na temat bezpiecznego rozruchu, zwłaszcza od Free Software Foundation i podobnych grup. Utrudniło to znalezienie informacji o tym, co faktycznie robi Secure Boot, więc postaram się jak najlepiej wyjaśnić. Zwróć uwagę, że nie mam osobistego doświadczenia z tworzeniem bezpiecznych systemów rozruchowych ani niczego w tym rodzaju; to jest właśnie to, czego nauczyłem się z czytania online.
Po pierwsze,Bezpieczny rozruch jestniecoś, co wymyślił Microsoft.Jako pierwsi szeroko go wdrożyli, ale to nie oni go wymyślili. Jegoczęść specyfikacji UEFI, który jest w zasadzie nowszym zamiennikiem starego BIOS-u, do którego prawdopodobnie jesteś przyzwyczajony. UEFI to w zasadzie oprogramowanie, które komunikuje się między systemem operacyjnym a sprzętem. Standardy UEFI są tworzone przez grupę o nazwie „Forum UEFI“, który składa się z przedstawicieli branży komputerowej, w tym Microsoft, Apple, Intel, AMD i kilku producentów komputerów.
Drugi najważniejszy punkt,posiadanie włączonego bezpiecznego rozruchu na komputerze nienieoznacza, że komputer nigdy nie może uruchomić żadnego innego systemu operacyjnego. W rzeczywistości własne wymagania certyfikacji sprzętu systemu Windows firmy Microsoft stanowią, że w przypadku systemów innych niż ARM musisz być w stanie zarówno wyłączyć Bezpieczny rozruch, jak i zmienić klucze (aby zezwolić na inne systemy operacyjne). Więcej o tym później.
Co robi Bezpieczny rozruch?
Zasadniczo zapobiega atakowaniu komputera przez złośliwe oprogramowanie poprzez sekwencję rozruchową. Złośliwe oprogramowanie, które dostaje się przez bootloader, może być bardzo trudne do wykrycia i zatrzymania, ponieważ może przeniknąć do funkcji niskiego poziomu systemu operacyjnego, utrzymując go niewidocznym dla oprogramowania antywirusowego. Wszystko, co naprawdę robi Bezpieczny rozruch, to weryfikacja, czy bootloader pochodzi z zaufanego źródła i czy nie został naruszony. Pomyśl o tym jak o wyskakujących zakrętkach na butelkach, które mówią „nie otwieraj, jeśli pokrywka jest podniesiona lub została naruszona”.
Na najwyższym poziomie ochrony masz klucz platformy (PK). W każdym systemie jest tylko jeden PK, który jest instalowany przez producenta 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 baz danych bezpiecznego rozruchu. Może być wiele KEK. Jest wtedy trzeci poziom: Autoryzowana Baza Danych (db) i Zakazana Baza Danych (dbx). Zawierają one informacje o urzędach certyfikacji, dodatkowych kluczach kryptograficznych i obrazach urządzeń UEFI, które należy odpowiednio zezwolić lub zablokować. Aby bootloader mógł działać, musi być podpisany kryptograficznie kluczem, któryjestw bazie i,nie jestw dbx.
Obraz zBudowanie Windows 8: Ochrona środowiska przed systemem operacyjnym za pomocą UEFI
Jak to działa w rzeczywistym systemie z certyfikatem Windows 8?
Producent OEM generuje własny plik PK, a firma Microsoft udostępnia klucz KEK, który producent OEM musi wstępnie załadować do bazy danych KEK. Microsoft podpisuje następnie bootloader systemu Windows 8 i używa swojego klucza KEK, aby umieścić ten podpis w autoryzowanej bazie danych. Gdy UEFI uruchamia komputer, weryfikuje PK, weryfikuje KEK firmy Microsoft, a następnie weryfikuje bootloader. Jeśli wszystko wygląda dobrze, system operacyjny może się uruchomić.
Obraz zBudowanie Windows 8: Ochrona środowiska przed systemem operacyjnym za pomocą UEFIGdzie wkraczają systemy operacyjne firm trzecich, takie jak Linux?
Po pierwsze, każda dystrybucja Linuksa może zdecydować się na wygenerowanie KEK i poprosić producentów OEM, aby domyślnie włączyli go do bazy danych KEK. Mieliby wtedy taką samą kontrolę nad procesem rozruchu, jak Microsoft. Problemy z tym, ponieważwyjaśnione przez Matthew Garretta z Fedory, czy to a) trudno byłoby sprawić, by każdy producent komputerów PC dołączył klucz Fedory, i b) byłoby to niesprawiedliwe w stosunku do innych dystrybucji Linuksa, ponieważ ich klucz nie zostałby dołączony, ponieważ mniejsze dystrybucje nie mają tak wielu OEM Związki partnerskie.
Fedora zdecydowała się (i inne dystrybucje idą w ich ślady) użyć usług podpisywania Microsoftu. Ten scenariusz wymaga zapłaty 99 USD firmie Verisign (urzędowi certyfikacji, z którego korzysta Microsoft) i daje programistom możliwość podpisania ich bootloadera za pomocą KEK firmy Microsoft. Ponieważ KEK Microsoftu będzie już w większości komputerów, pozwala im to podpisać swój bootloader, aby używać bezpiecznego rozruchu, bez konieczności posiadania własnego KEK. Okazuje się, że jest bardziej kompatybilny z większą liczbą komputerów i ogólnie kosztuje mniej niż zajmowanie się konfiguracją własnego systemu podpisywania i dystrybucji kluczy. Więcej szczegółów na temat tego, jak to będzie działać (przy użyciu GRUB-a, podpisanych modułów jądra i innych informacji technicznych) znajduje się we wspomnianym powyżej wpisie na blogu, który polecam przeczytać, jeśli jesteś zainteresowany tego rodzaju rzeczami.
Załóżmy, że nie chcesz zajmować się kłopotami związanymi z rejestracją w systemie Microsoftu, nie chcesz płacić 99 USD lub po prostu masz pretensje do dużych korporacji, które zaczynają się na literę M. Jest jeszcze inna opcja, aby nadal korzystać z Bezpiecznego rozruchu i uruchom system operacyjny inny niż Windows.Certyfikacja sprzętu Microsoftwymagaże producenci OEM pozwalają użytkownikom wprowadzić swój system w „niestandardowy” tryb UEFI, w którym mogą ręcznie modyfikować bazy danych Secure Boot i PK. System można przełączyć w tryb konfiguracji UEFI, w którym użytkownik może nawet określić własne PK i samodzielnie podpisać bootloadery.
Co więcej, własne wymagania certyfikacyjne Microsoftu 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, gdzie 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 postępuje zgodnie ze standardem branżowym w odniesieniu do tabletów.
Czyli bezpieczny rozruch nie jest z natury zły?
Tak więc, miejmy nadzieję, Bezpieczny rozruch nie jest zły i nie ogranicza się tylko do korzystania z systemu Windows. Powodem, dla którego FSF i inni są tak zdenerwowani, jest to, że dodaje dodatkowe kroki do korzystania z systemu operacyjnego innej firmy. Dystrybucje Linuksa mogą nie lubić płacić za używanie klucza Microsoftu, 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 dodać różne klucze, unikając w ten sposób konieczności radzenia sobie z Microsoftem.
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 mający na celu przejęcie władzy nad światem i jest o wiele mniej przerażający niż niektórzy eksperci od wolnego oprogramowania chcą, abyś uwierzył.
Dodatkowa lektura:
- Wymagania dotyczące certyfikacji sprzętu firmy Microsoft
- Budowanie Windows 8: Ochrona środowiska przed systemem operacyjnym za pomocą UEFI
- Prezentacja firmy Microsoft na temat wdrażania bezpiecznego rozruchu i zarządzania kluczami
- Implementacja bezpiecznego rozruchu UEFI w Fedorze
- Przegląd bezpiecznego rozruchu TechNet
- Artykuł w Wikipedii na temat UEFI
TL; DR:Bezpieczny rozruch zapobiega zainfekowaniu systemu przez złośliwe oprogramowanie na niskim, niewykrywalnym poziomie podczas rozruchu. Każdy może stworzyć niezbędne klucze, aby to działało, ale trudno przekonać producentów komputerów do dystrybucjiTwójkluczem dla wszystkich, dzięki czemu możesz alternatywnie zapłacić Verisign za użycie klucza Microsoft do podpisania programów ładujących i umożliwienia ich działania.Możesz także wyłączyć Bezpieczny rozruch nakażdykomputer bez ARM.
Ostatnia myśl, w odniesieniu do kampanii FSF przeciwko Secure Boot: Niektóre z ich obaw (tjtrudniejszezainstalować bezpłatne systemy operacyjne) są ważnedo punktu. Stwierdzenie, że ograniczenia „zapobiegają każdemu uruchamianiu czegokolwiek poza systemem Windows”, jest jednak wyraźnie fałszywe z powodów przedstawionych powyżej. Kampania przeciwko UEFI/Secure Boot jako technologii jest krótkowzroczna, wprowadza w błąd i i tak mało prawdopodobne jest, aby była skuteczna. Ważniejsze jest upewnienie się, że producenci faktycznie przestrzegają wymagań Microsoftu, aby umożliwić użytkownikom wyłączenie bezpiecznego rozruchu lub zmianę kluczy, jeśli sobie tego życzą.
Masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych doświadczonych technologicznie użytkowników Stack Exchange?Sprawdź pełny wątek dyskusji tutaj.