Shim Secure Boot – linuksowy bootloader dla UEFI Secure Boot

24
3655
Konsola katalog
Konsola katalog

Matthew Garrett, deweloper Linuksa, ogłosił wydanie Shim Secure Boot. Jest to linuksowy bootloader, który pozwala dowolnej dystrybucji Linuksa na uruchomienie jej na Secure Boot, bez potrzeby wyłączania UEFI Secure Boot. Warto zaznaczyć, że plik binarny Shim został podpisany cyfrowo przez firmę Microsoft, dzięki czemu będzie go można uruchomić na dowolnym firmwarze UEFI.

Każdy producent dystrybucji Linuksa będzie musiał odpowiednio podpisać bootloader UEFIgrubx64.efi, oddzielnym kluczem. Podczas uruchomienia systemu Linux, Shim zapyta się użytkownika o klucz, który będzie dostarczony na nośniku instalacyjnym. Oczywiście zostanie wskazane, gdzie on będzie się znajdował. Garret wspomina także o dodatkowym zabezpieczeniu, w postaci podpisanego obrazu jądra i modułów dla całego procesu uruchamiania. Podpisana wersja Shim chroni użytkowników dystrybucji Linuksa, przed próbą posiadania własnego bootloadera, podpisanego przez Microsoft.

Matthew Garrett opisał także na swoim blogu szczegóły techniczne Shim Secure Boot.

Poprzedni artykuł0day na MySQL – podniesienie uprawnień na Linuksie
Następny artykułLinux Mint 14.1
Michał Olber
Interesuję się głównie sprzętem i działaniem jego pod systemami GNU/Linux. Testuję różne dystrybucje i robię recenzje. Interesuję się działaniem sprzętu pod Linuksem, dzięki czemu wiem, jaki zestaw komputerowy wybierać :)

24 KOMENTARZE

    • A jakie będzie następne ustępstwo? Może komputery działające jak konsole tylko pod fabrycznym oprogramowaniem? A może obowiązkowe reklamy przy starcie systemu? Użyj trochę wyobraźni zamiast nazywać spostrzeżenia innych "babranie się w durną ideologię". Firmom z taką pozycją jak np MS trzeba patrzeć na ręce.

    • Nie unoś się tak. To łabędzi śpiew Microsoftu, nie wierzysz chyba w to, że łysol Ballmer poprowadzi i utrzyma Microsoft na poziomie Gatesa?
      Poza tym kto broni producentom linuksa opierać się pomysłom MS? Nikt! Takiś mądry? To dawaj, powiedz co mięli zrobić.Problem w tym, że nie mięli żadnego innego racjonalnego pomysłu jak wyjść z zaistniałej sytuacji. Ich polityka, tak chwalona przez pieniaczy, znowu ukazała, że są bezradni niczym berbeć i nawet się obrazić nie mogą, bo wzbudzi to tylko śmiech pożałowania.

  1. Nie do konca rozumiem czym jest ten UEFI.. tak prosto piszac to taki bootloader + BIOS? Czyli jesli bedziemy mieli w linuxie wsparcie dla UEFI nie bedzie potrzebne juz cos takiego jak GRUB? A jesli wylaczymy UEFI to poprostu bedziemy potrzebowali GRUBa? Czy taki coreboot mozna porownac do UEFI gdyz jest to mini system operacyjny, pod ktory tez mozna pisac sterowniki? Pomijam juz tutaj watpliwosci zwiazane z implementacja DRM w UEFI. Dodatkowo za wiki: " Jedną z cech EFI jest możliwość pisania dlań sterowników. W takim wypadku sterownik jest niezależny od systemu operacyjnego." Czyli co teraz sterowniki beda dostarczane razem z hardwarem a system dostanie tylko jakies standardowy interfejs do komunikacji z nimi? Pozatym gdzie tu zwiekszenie bezpieczenstwa skoro bedzie mozna ladowac wlasne moduly / sterowniki bezposrednio do UEFI? Ja tu widze tylko dodatkowe pole do nadurzyc.

    • OK ale czy ten Secure Boot to jest taki wbudowany boot loader jak grub / lilo? No i co z tymi sterownikami mam rozumiec, ze bedzie jakis standardowy interfejs do nich i w systemie trzeba bedzie tylko zaimplementowac "obsluge" hardwareu a co to za hardware to juz nie bedzie systemu obchodzic? Jesli tak to to akurat jest dobre.. bo nic nie stoi na przeszkodzie aby pisac otwarte stery do UEFI i z nich korzystac a dla systemu w tym przypadku to nie bedzie roznicy poniewaz on by korzystal tylko z tego standardowego interfejsu ktory udostepni mu UEFI. No i najepsze byly jeden sterownik pod windows / linux / jakikolwiek inny system, z ktorego moglyby korzystac wszystkie systemy.

    • Secure Boot ot tylko funkcja zaimplementowana w UEFI, która sprawdza, czy dany bootloader systemowy, w Linuksie grubx64.efi, jest odpowiednio podpisany. Shim ma być jakby takim wczesnym bootloaderem, który komunikuje się z UEFI Secure Boot i zapodaje odpowiedni klucz. Jeżeli weryfikacja przejdzie bez problemów, wtedy Shim ładuje grubx64.efi i dalej już standardowo.

    • OK teraz juz rozumiem.. czyli w sumie nie taki diabel straszny bo nijak nie ingeruje to w samego linuxa. Co do mojego drugiego pytania, to z tego co doczytalem mniej wiecej takby to wygladalo czyli system operacyjny przestalby sie przejmowac sterownikami. Tutaj mysle, ze linux by na tym zyskal gdyz skonczyloby sie narzekanie na brak / jakosc sterownikow bo dla wszystkich systemow bylyby takie same.. a sam dostawca sprzetu musialby sie o taki steownik zatroszczyc. Tyle, ze teraz co dostawca plyty glownej to pewnie inne UEFI, czy taki sterownik napisany pod UEFI od np intela bedzie musial dzialac takze z UEFI innego dostawcy?

    • Ale od zawsze miałeś różne wersje BIOSów do płyt głównych. Z tego, co wiem to dominowali w Europie: AMI oraz Phoenix BIOS. I tutaj producent płyt głównych wykupywał licencję i sam już przerabiał taki podsystem.

    • Tak tylko wczesniej sterowniki nie byly pisane dla biosu (poza tymi potrzebnymi do zbootowania system) a pod system. Do obslugi hw bedzie potrzebny sterownik dla danego UEFI.. co bedzie jesli bede chcial dokupic sobie jakas karte na PCI np.. bede musial szukac takiej, ktora jest wspierana przez moje UEFI?

    • Wydaje mi się, że to przemyślany ruch, mający na celu ograniczenie wolności użytkowników. Jeśli czytaliście licencję GNU/GPL w wersji 3, to zwróciliście uwagę na problem „obchodzenia skutecznych zabezpieczeń”

      (por. https://pl.wikipedia.org/wiki/Zarz%C4%85dzanie_prawami_cyfrowymi).
      Jeżeli cokolwiek ładuje się przed systemem operacyjnym i nie wiadomo co to jest (bo jest niesprawdzalne), zawsze istnieje możliwość nadużycia.
      Za przykład może posłużyć sterownik, który okresowo wysyła zawartość ekranu do producenta komputera.
      I można sobie firewalle instalować, szyfrować dyski…

  2. Ale firmy często odsprzedają używane komputery, a niemożność zainstalowania Linuksa jest dużą przeszkodą w ich ponownym wykorzystaniu (najczęściej osoba odkupująca dostaje komputery bez systemu).

  3. Mam takie pytanie ignoranta , bo nie znam się na SecureBoot- a dlaczego Ja nie mogę podpisać loadera do mojego systemu tak samo jak mogę sobie podpisać samodzielnie wygenerowany certyfikat SSL? Kupiłem maszynę Z UEFI/SB to dlaczego nie mogę wrzucić do UEFI klucza,, który sprawi, ze moje systemy się bedą na niej bootować? Czy to jest na prawdę takie durne, że tylko M$ I RH mogą podpisywać swoje loadery?
    A może jest przewidziane jakieś CA do tego?
    I może mnie ktoś oświecić jednym zdaniem jakie jest ryzyko, ze ktoś mi coś dziesiejszych czasach zabootuje przed moim systemem? Myślałem, że to zagrożenie minęło wraz z DOSem i programami rezydentnymi…

  4. […] Nowe zmienne systemu plików UEFI – efivars, potrafią czytać i ustawiać zmienne EFI, większe niż 1 kB. Fedora 18 posiada już ten system plików, który jest montowany w /sys/firmware/efi/efivars/, co pozwala wymieniać dane ze wsparciem MOK w Shim Secure Boot. […]

ZOSTAW ODPOWIEDŹ

Proszę wpisać swój komentarz!
Proszę podać swoje imię tutaj