Planuję kupić nowego laptopa w najbliższych dniach i jestem pod wrażeniem nowych, fajnych Ultrabooków. Jako długoletni użytkownik GNU / Linux, oczywiście zainstaluję na nim wybraną dystrybucję.
Są szanse, że będę musiał kupić komputer z preinstalowanym systemem Windows 8; i są szanse, że uruchomi UEFI i będzie miał „bezpieczny rozruch”, na którym nie podpalą się niepodpisane jądra.
UEFI jest prawdopodobnie dobry, BIOS może wymagać przejścia na emeryturę. Chyba owłosiona rzecz to Bezpieczny rozruch .
O ile mi wiadomo, niektóre zaufane certyfikaty zostaną osadzone w oprogramowaniu układowym, a więc w jądrze itp . Jeśli certyfikat jądra można prześledzić do jednego z oprogramowania układowego , jądro uruchomi się, w przeciwnym razie UEFI powie mi o tym i odmówi uruchomienia. Ten proces zapobiegnie uruchomieniu niecertyfikowanego oprogramowania. Może to mieć zalety, chociaż ich nie widzę.
Zastanawiam się, w jaki sposób jądro open source może uzyskać jeden z tych kluczy i nadal być wolne . Przeczytałem wątek na liście mailingowej Linuksa, w którym pracownik Red Hat prosi Linusa Torvaldsa o pobranie zestawu zmian, który implementuje narzędzie do parsowania plików binarnych PE i podjęcia złożonego zestawu działań, aby umożliwić jądrze uruchomienie w trybie bezpiecznego rozruchu (o ile rozumiem ). Chcą to zrobić, ponieważ Microsoft podpisuje tylko pliki binarne PE. Pan Torvalds uprzejmie odrzucił ten zestaw zmian, stwierdzając, że jądro już implementuje standard, który nie jest PE . RedHat próbuje wypchnąć ten kod do jądra, aby pewnego dnia nie musieli go rozwidlać.
Widzisz, to skomplikowana sprawa. Pozwól, że zadam moje pytania:
- Jakie korzyści uzyskam dzięki UEFI i Secure Boot jako użytkownik domowy?
- Jak to podpisanie ?
- Kto może uzyskać podpisy / certyfikaty? Czy to jest opłacone? Czy to może być publiczne? (Powinien być dostępny w kodzie źródłowym Linuksa, prawda?)
- Czy Microsoft jest jedynym organem do składania podpisów? Czy nie powinna istnieć niezależna fundacja zapewniająca je?
Jak wpłynie to na otwarte i wolne jądra, hobbystów / programistów jądra akademickich itp . np. Czy to boot ( bardzo podstawowy kod sektora rozruchowego ):
hang: jmp hang times 510-($-$$) db 0 db 0x55 db 0xAA
Wiadomość na tej stronie była inspiracją tego pytania. Hiszpańska grupa użytkowników Linuksa o nazwie Hispalinux złożyła skargę przeciwko Microsoftowi na ten temat do Komisji Europejskiej.
Czy powinienem się martwić? Odrzucam używanie oprogramowania chronionego prawem autorskim ani oprogramowania podpisanego przez zaufane firmy. Zrobiłem to do tej pory i chcę to kontynuować. Z góry dziękuję.
UEFI
sam w sobie nie stanowi większego problemu, ale może być bezpieczny rozruch.Odpowiedzi:
Masz nowy mechanizm bezpieczeństwa do kontrolowania tego, co może, a co nie może uruchomić z twojego sprzętu. Funkcja bezpieczeństwa. Nie czujesz, że potrzebujesz, dopóki nie będzie za późno. Ale dygresję.
Sterowniki, podobnie jak oprogramowanie układowe GPU, muszą być podpisane zgodnie z funkcją Bezpiecznego rozruchu, w przeciwnym razie może to być kolejny rootkit. Status quo polega na tym, że sterowniki te są podpisane w formacie PE. Jądro i tak można uruchomić bez nich, ale sprzęt nie będzie działał. Parsowanie formatu PE w jądrze jest po prostu technicznie prostszym wyborem do tego, niż proszenie każdego dostawcy sprzętu o podpisywanie swoich obiektów blob dla każdej dystrybucji lub konfigurowanie w tym celu struktury przestrzeni użytkownika. Linus postanawia nie ssać penisa Microsoftu. To nie jest techniczny argument.
Najbardziej widoczną funkcją jest szybki rozruch UEFI. Mam kilka pulpitów z logo Windows 8, które uruchamiają się tak szybko, że często brakuje mi menu startowego. Intel i OEM mają dość inżynierii w tym zakresie.
Jeśli jesteś typem użytkowników Linuksa, którzy nie znoszą wzdęć i powielania kodu z pasją , możesz także zarządzać multiboot na poziomie oprogramowania układowego i całkowicie pozbyć się bootloaderów. UEFI zapewnia menedżera rozruchu, za pomocą którego można uruchomić bezpośrednio do jądra lub wybrać uruchomienie innego systemu operacyjnego z menu oprogramowania układowego. Chociaż może to wymagać majsterkowania.
Bardziej wymyślna grafika w czasie uruchamiania i w menu oprogramowania układowego. Lepsze bezpieczeństwo podczas rozruchu (Secure Boot). Inne funkcje (netboot IPv4 / 6, 2 TB + urządzenia rozruchowe itp.) Są przeznaczone głównie dla użytkowników korporacyjnych.
W każdym razie, jako Linus powiedział , BIOS / UEFI ma „po prostu załadować system operacyjny i wyjść z tego do diabła”, a UEFI z pewnością wydaje się tak dla użytkowników domowych z szybkim uruchomieniem. Z pewnością robi więcej rzeczy niż BIOS pod maską, ale jeśli mówimy o użytkownikach domowych, nie będą się tym przejmować.
Teoretycznie plik binarny jest szyfrowany kluczem prywatnym w celu wygenerowania podpisu. Następnie podpis można zweryfikować za pomocą klucza publicznego, aby udowodnić, że plik binarny jest podpisany przez właściciela klucza prywatnego, a następnie plik binarny zweryfikowany.Zobacz więcej na Wikipedii .
Z technicznego punktu widzenia podpisywany jest tylko skrót pliku binarnego, a podpis jest osadzony w pliku binarnym w formacie PE i kręceniu w formacie dodatkowym.
Pod względem proceduralnym klucz publiczny jest przechowywany w oprogramowaniu układowym przez producenta OEM i pochodzi od firmy Microsoft. Masz dwie możliwości:
Ponieważ podpisy / certyfikaty są osadzone w plikach binarnych, wszyscy użytkownicy powinni je uzyskać. Każdy może skonfigurować własny urząd certyfikacji i wygenerować certyfikat dla siebie. Ale jeśli chcesz, aby Microsoft wygenerował dla Ciebie certyfikat, musisz przejść przez Verisign, aby zweryfikować swoją tożsamość. Proces kosztuje 99 USD. Klucz publiczny znajduje się w oprogramowaniu układowym. Klucz prywatny znajduje się w sejfie Microsoft. Certyfikat znajduje się w podpisanym pliku binarnym. Nie dotyczy kodu źródłowego.
Strona techniczna jest dość trywialna w porównaniu do procesu zarządzania PKI, weryfikacji tożsamości, koordynacji z każdym znanym producentem OEM i dostawcą sprzętu. To kosztuje kochanie. Microsoft ma przez lata infrastrukturę (WHQL) i doświadczenie. Oferują więc podpisywanie plików binarnych. Każda niezależna fundacja może zaoferować to samo, ale jak dotąd nie zrobiła tego.
Widzę, że z sesji UEFI na IDF 2013 firma Canonical zaczęła także umieszczać własny klucz do oprogramowania układowego tabletu. Dzięki temu Canonical może podpisywać własne pliki binarne bez przechodzenia przez Microsoft. Ale raczej nie podpiszą dla ciebie plików binarnych, ponieważ nie wiedzą, kim jesteś.
Twoje niestandardowe jądro nie uruchamia się w Bezpiecznym rozruchu, ponieważ nie jest podpisane. Możesz to jednak wyłączyć.
Model zaufania Bezpiecznego rozruchu blokuje niektóre aspekty jądra. Nie możesz zniszczyć jądra pisząc do / dev / kmem, nawet jeśli jesteś teraz rootem. Nie można hibernować na dysk (pracujący w górę), ponieważ nie ma sposobu, aby upewnić się, że obraz jądra nie zostanie zmieniony na bootkit podczas wznawiania. Nie możesz zrzucić rdzenia, gdy jądro wpadnie w panikę, ponieważ mechanizm kdump (kexec) może być użyty do uruchomienia bootkita (również pracującego w górę). Są one kontrowersyjne i nie są akceptowane przez Linusa do jądra głównego, ale niektóre dystrybucje (Fedora, RHEL, Ubuntu, openSUSE, SUSE) są dostarczane z własnymi łatkami Bezpiecznego rozruchu.
Osobiście podpisanie modułu wymagane do zbudowania jądra Bezpiecznego rozruchu kosztuje 10 minut, podczas gdy faktyczna kompilacja zajmuje tylko 5 minut. Jeśli wyłączę podpisywanie modułów i włączę pamięć podręczną, budowanie jądra zajmuje tylko minutę.
UEFI to zupełnie inna ścieżka rozruchu niż BIOS. Cały kod rozruchowy systemu BIOS nie będzie wywoływany przez oprogramowanie układowe UEFI.
Jak wspomniano powyżej, nikt oprócz Microsoftu nie wziął udziału w świadczeniu usługi publicznej. Obecnie nie ma dowodów na to, że Microsoft zamierza zrobić z tym zło, ale nic nie stoi na przeszkodzie, aby Microsoft nadużył swojego faktycznego monopolu i wyruszył w podróż. Tak więc, chociaż grupy użytkowników FSF i Linux mogą nie wyglądać dość pragmatycznie i nie usiądą w konstruktywnym rozwiązywaniu problemów, bardzo konieczne jest, aby ludzie wywierali presję na Microsoft i ostrzegali go przed konsekwencjami.
Powody, dla których warto skorzystać z bezpiecznego rozruchu:
źródło
Właśnie przeszedłem przez to z ostatnim zakupem laptopa, który został dostarczony z Windows 8 i bezpiecznym uruchomieniem UEFI. Po długim czasie i badaniach mogę odpowiedzieć na następujące pytania:
Zalety UEFI, które zauważy przeciętny użytkownik, to to, że pierwszą rzeczą, którą zobaczą na ekranie, będzie ekran modułu ładującego UEFI marki Microsoft / Vendor. Żadne z tych strasznych rzeczy, takich jak „Naciśnij Del, aby skonfigurować, F11, aby wybrać urządzenie rozruchowe” itp.
Następnie ładnie przejdzie do ekranu oczekiwania jądra / programu ładującego jądro Microsoft. Stanowi to „moc do podpowiedzi” w tematyce Microsoft. Jeśli jest to faktyczna korzyść, wydaje mi się, że to oko. Byłem bardzo podenerwowany, że nie mam normalnych informacji, których oczekuję po uruchomieniu. Na przykład powodzenia, jeśli sprzedawca nie używa standardowego klucza do wejścia do podstawowej konfiguracji UEFI / Bios.
Och, tak, i teoria jest taka, że zatrzyma to wirusy sektora rozruchowego lub przynajmniej sprawi, że twórcy utworzą / wykradną czyjś identyfikator i zapłacą Verisign 99 USD (trasa Fedory RedHat. Google it.)
Aby uzyskać informacje o tym, jak odbywa się faktyczne podpisywanie, sprawdź to: http://al.robotfuzz.com/playing-with-uefi-secure-boot-part-2-basic-authenticode-signing-with-ms-tools /
Kto Tylko Microsoft?
Ach, i jest pocieranie. Każdy może podpisać kod za pomocą dowolnego klucza. Problem polega na tym, że komputer będzie uruchamiał tylko kod podpisany przez klucz zaufanych organów. Publiczna połowa klucza jest instalowana fabrycznie w rdzeniu systemu UEFI i służy do weryfikacji podpisu programów UEFI (kodu rozruchowego) podpisanego za pomocą klucza prywatnego.
Zgadnij, kto ma klucz publiczny zainstalowany w fabryce? Zgadnij, kto wymaga, aby Bezpieczny rozruch był domyślnie włączony?
Każdy producent systemu oczywiście umieści tam klucz Microsoft. Oni mogli również umieścić w kluczu Canonical (Ubuntu), Red Hat klucz, klucz Apple, itd. Inne klawisze choć oznacza więcej punktów za naruszenia, a tam jest oczywiście fizyczna granica ile mogliby przechowywać.
A jakie jest rozwiązanie dla zbuntowanego użytkownika komputera takiego jak ty?
Mam nadzieję, że twój dostawca systemu pozwoli ci uzyskać dostęp do konfiguracji rozruchu systemu
Mam nadzieję, że pozwalają wyłączyć bezpieczny rozruch. Kod rozruchowy systemu Windows będzie nadal działał bez bezpiecznego rozruchu.
Jeśli masz szczęście, sprzedawca systemu pozwoli ci na wprowadzenie własnych kluczy urzędu certyfikacji i możesz podpisać własne dokumenty. Jest to naprawdę potrzebne tylko wtedy, gdy chcesz się bawić przy użyciu Bezpiecznego rozruchu.
Mój laptop MSI pozwala mi wykonywać wszystkie powyższe czynności.
Chciałbym zobaczyć świat, w którym każdy może pobrać bezpłatną kopię Linux Distro i wymienić swój system operacyjny. To właśnie mieliśmy przed Bezpiecznym uruchomieniem. Mieliśmy również wiele wirusów sektora rozruchowego. Konieczność wyłączenia bezpiecznego rozruchu w konfiguracji systemu jest prawdopodobnie wystarczająco małą przeszkodą, aby sprawdzić, czy masz moc mózgu do zainstalowania systemu operacyjnego lub poznać kogoś, kto to robi.
Brak możliwości wyłączenia to zła rzecz i to zależy od producenta. Nie obwiniaj Microsoftu, chyba że „przekona” twórcę, aby uniemożliwił wyłączenie bezpiecznego rozruchu.
źródło