Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ten dokument pomaga poprowadzić producentów OEM i ODM w tworzeniu kluczy i certyfikatów Secure Boot oraz zarządzaniu nimi w środowisku produkcyjnym. Odpowiada na pytania związane z tworzeniem, przechowywaniem i pobieraniem kluczy platformy (PK), bezpiecznymi kluczami aktualizacji oprogramowania układowego i kluczami wymiany kluczy innych firm (KEKs).
Uwaga / Notatka
Producenci urządzeń, przedsiębiorstwa i klienci mogą znaleźć zalecane pliki binarne PK, KEK, DB i DBX firmy Microsoft w repozytorium open source secure boot firmy Microsoft. Pliki binarne są formatowane zgodnie z oczekiwanym formatem EDKII, aby łatwo zintegrować je z oprogramowaniem układowym.
Producenci OEM urządzeń mogą znaleźć wymagania dotyczące konfiguracji bezpiecznego rozruchu dla systemu Windows 11 w wersji 25H2 w sekcji 1.6 tego artykułu.
Uwaga / Notatka
Certyfikat Microsoft Corporation KEK CA 2011 wygaśnie w 2026 roku, a wszyscy OEM muszą tworzyć, podpisywać i przesyłać aktualizacje dla nowego certyfikatu Microsoft Corporation KEK CA 2023 do Microsoft. Umożliwi to firmie Microsoft aktualizowanie urządzeń na rynku przy użyciu nowego urzędu certyfikacji KEK firmy Microsoft, dzięki czemu systemy będą nadal otrzymywać aktualizacje DB i DBX po 2026 roku. Aby uzyskać instrukcje i przetestować zabezpieczenia, odwiedź stronę https://aka.ms/KEKUpdatePackage
Wymagania systemu Windows dotyczące interfejsu UEFI i bezpiecznego rozruchu można znaleźć w temacie Wymagania dotyczące certyfikacji sprzętu systemu Windows. Ten dokument nie wprowadza nowych wymagań ani nie reprezentuje oficjalnego programu systemu Windows. Jest ona przeznaczona jako wskazówki wykraczające poza wymagania dotyczące certyfikacji, aby pomóc w tworzeniu wydajnych i bezpiecznych procesów tworzenia kluczy bezpiecznego rozruchu i zarządzania nimi. Jest to ważne, ponieważ bezpieczny rozruch UEFI jest oparty na użyciu infrastruktury kluczy publicznych do uwierzytelniania kodu przed zezwoleniem na wykonanie.
Oczekuje się, że czytelnik zna podstawy interfejsu UEFI, podstawową wiedzę na temat bezpiecznego rozruchu (rozdział 27 specyfikacji UEFI) i model zabezpieczeń infrastruktury kluczy publicznych.
Wymagania, testy i narzędzia weryfikacji bezpiecznego rozruchu w systemie Windows są dostępne dzisiaj za pośrednictwem zestawu certyfikacji sprzętu systemu Windows (HCK). Jednak te zasoby HCK nie dotyczą tworzenia kluczy i zarządzania nimi w przypadku wdrożeń systemu Windows. Ten dokument dotyczy zarządzania kluczami jako zasobu, który ułatwia partnerom wdrażanie kluczy używanych przez oprogramowanie układowe. Nie jest ona przeznaczona jako normatywne wskazówki i nie obejmuje żadnych nowych wymagań.
Na tej stronie:
- 1. Bezpieczny rozruch, system Windows i zarządzanie kluczami zawiera informacje na temat zabezpieczeń rozruchu i architektury infrastruktury PKI, ponieważ dotyczy systemu Windows i bezpiecznego rozruchu.
- 2. Rozwiązania do zarządzania kluczami mają pomóc partnerom w projektowaniu rozwiązania do zarządzania kluczami i projektowania, które odpowiada ich potrzebom.
- 3. Podsumowanie i zasoby obejmują dołączania, listy kontrolne, interfejsy API i inne odwołania.
Ten dokument jest punktem wyjścia do opracowywania komputerów gotowych do użycia przez klientów, narzędzi wdrażania w fabryce oraz najważniejszych najlepszych praktyk w zakresie zabezpieczeń.
1. Bezpieczny rozruch, system Windows i zarządzanie kluczami
Specyfikacja interfejsu UEFI (Unified Extensible Firmware Interface) definiuje proces uwierzytelniania wykonywania oprogramowania układowego o nazwie Bezpieczny rozruch. Jako standard branżowy Secure Boot definiuje sposób, w jaki oprogramowanie układowe platformy zarządza certyfikatami, uwierzytelnia oprogramowanie układowe oraz jak system operacyjny integruje się z tym procesem.
Bezpieczny rozruch jest oparty na procesie infrastruktury kluczy publicznych (PKI) do uwierzytelniania modułów, zanim będą mogły być wykonywane. Te moduły mogą obejmować sterowniki firmware, sterowniki ROM opcji, sterowniki UEFI na dysku, aplikacje UEFI lub programy rozruchowe UEFI. Dzięki uwierzytelnieniu obrazu przed wykonaniem, Secure Boot zmniejsza ryzyko ataków typu rootkits, które mogą pojawić się przed uruchomieniem systemu. Firma Microsoft korzysta z bezpiecznego rozruchu UEFI w systemie Windows 8 lub nowszym w ramach architektury zabezpieczeń zaufanego rozruchu w celu poprawy bezpieczeństwa platformy dla naszych klientów. Bezpieczny rozruch jest wymagany dla komputerów klienckich z systemem Windows 8 lub nowszym oraz systemu Windows Server 2016 zgodnie z definicją w wymaganiach dotyczących zgodności sprzętu systemu Windows.
Proces bezpiecznego rozruchu działa w następujący sposób i jak pokazano na rysunku 1:
- Składniki rozruchu oprogramowania układowego: Oprogramowanie układowe sprawdza, czy moduł ładujący systemu operacyjnego jest zaufany (system Windows lub inny zaufany system operacyjny).
- Składniki rozruchu systemu Windows: BootMgr, WinLoad, Uruchamianie jądra systemu Windows. Składniki rozruchu systemu Windows weryfikują podpis każdego składnika. Żadne niezaufane składniki nie zostaną załadowane, a zamiast tego wywołają procedurę naprawczą bezpiecznego rozruchu.
- Inicjowanie oprogramowania antywirusowego i oprogramowania chroniącego przed złośliwym kodem: To oprogramowanie jest sprawdzane pod kątem specjalnego podpisu wystawionego przez firmę Microsoft, sprawdzając, czy jest to zaufany sterownik krytyczny dla rozruchu i zostanie uruchomione na początku procesu rozruchu.
- Inicjowanie sterownika krytycznego rozruchu: Podpisy wszystkich sterowników krytycznych dla rozruchu są sprawdzane w ramach weryfikacji bezpiecznego rozruchu w narzędziu WinLoad.
- Inicjalizacja dodatkowego systemu operacyjnego
- Ekran logowania systemu Windows
Rysunek 1. Architektura zaufanego rozruchu systemu Windows
Implementacja bezpiecznego rozruchu UEFI jest częścią zaufanej architektury rozruchu firmy Microsoft wprowadzonej w systemie Windows 8.1. Rosnący trend w rozwoju złośliwego oprogramowania polega na atakowaniu ścieżki rozruchowej jako preferowanego wektora ataku. Ta klasa ataku była trudna do ochrony, ponieważ produkty chroniące przed złośliwym kodem mogą być wyłączone przez złośliwe oprogramowanie, które uniemożliwia ich całkowite ładowanie. Dzięki architekturze zaufanego rozruchu systemu Windows i utworzeniu root zaufania za pomocą Bezpiecznego Rozruchu, użytkownik jest chroniony przed złośliwym kodem wykonywanym w ścieżce rozruchu, zapewniając, że tylko podpisany, certyfikowany kod "znany jako dobry" oraz programy rozruchowe mogą być wykonywane przed załadowaniem samego systemu operacyjnego.
1.1 infrastruktura Public-Key (PKI) i bezpieczny rozruch
Infrastruktura kluczy publicznych ustanawia autentyczność i zaufanie do systemu. Bezpieczny rozruch wykorzystuje infrastrukturę PKI do dwóch celów wysokiego poziomu.
- Podczas rozruchu w celu określenia, czy moduły wczesnego rozruchu są zaufane do uruchomienia.
- W celu uwierzytelnienia żądań usług, należy uwzględnić modyfikację baz danych Secure Boot oraz aktualizację oprogramowania układowego platformy.
Infrastruktura kluczy publicznych składa się z następujących elementów:
- Urząd certyfikacji, który wystawia certyfikaty cyfrowe.
- Urząd rejestracji, który weryfikuje tożsamość użytkowników żądających certyfikatu z urzędu certyfikacji.
- Centralny katalog, w którym przechowywane są i indeksowane klucze.
- System zarządzania certyfikatami.
1.2 Kryptografia klucza publicznego
Kryptografia klucza publicznego używa pary powiązanych matematycznie kluczy kryptograficznych, znanych jako klucz publiczny i prywatny. Jeśli znasz jeden z kluczy, nie możesz łatwo obliczyć, czym jest drugi. Jeśli jeden klucz jest używany do szyfrowania informacji, tylko odpowiedni klucz może odszyfrować te informacje. W przypadku bezpiecznego rozruchu klucz prywatny jest używany do cyfrowego podpisywania kodu, a klucz publiczny służy do weryfikowania podpisu w tym kodzie w celu potwierdzenia jego autentyczności. W przypadku naruszenia zabezpieczeń klucza prywatnego systemy z odpowiednimi kluczami publicznymi nie są już bezpieczne. Może to prowadzić do ataków zestawu rozruchowego i zaszkodzi reputacji jednostki odpowiedzialnej za zapewnienie bezpieczeństwa klucza prywatnego.
W systemie bezpiecznego rozruchu z kluczem publicznym masz następujące elementy:
1.2.1 Szyfrowanie RSA 2048
RSA-2048 to asymetryczny algorytm kryptograficzny. Miejsce potrzebne do przechowywania modulu RSA-2048 w postaci pierwotnej wynosi 2048 bitów.
1.2.2 Certyfikat z podpisem własnym
Certyfikat podpisany przez klucz prywatny zgodny z kluczem publicznym certyfikatu jest znany jako certyfikat z podpisem własnym. Certyfikaty głównego urzędu certyfikacji należą do tej kategorii.
1.2.3 Urząd certyfikacji
Urząd certyfikacji wystawia podpisane certyfikaty, które potwierdzają tożsamość podmiotu certyfikatu i wiążą tę tożsamość z kluczem publicznym zawartym w certyfikacie. Urząd certyfikacji podpisuje certyfikat przy użyciu jego klucza prywatnego. Wystawia on odpowiedni klucz publiczny wszystkim zainteresowanym stronom w certyfikacie głównego urzędu certyfikacji z podpisem własnym.
Podczas bezpiecznego rozruchu urzędy certyfikacji (CA) to producent OEM (lub jego delegaci) oraz firma Microsoft. Urzędy certyfikacji generują pary kluczy, które tworzą katalog główny zaufania, a następnie używają kluczy prywatnych do podpisywania uzasadnionych operacji, takich jak dozwolone moduły EFI wczesnego rozruchu i żądania obsługi oprogramowania układowego. Odpowiednie klucze publiczne są dostarczane do oprogramowania układowego UEFI na komputerach z włączoną obsługą bezpiecznego rozruchu i są używane do weryfikowania tych operacji.
(Więcej informacji na temat używania urzędów certyfikacji i wymiany kluczy jest łatwo dostępne w Internecie, który odnosi się do modelu bezpiecznego rozruchu).
1.2.4 Klucz publiczny
Publiczny klucz platformy jest dostarczany z komputerem i jest dostępny publicznie. W tym dokumencie użyjemy sufiksu "pub", aby oznaczyć klucz publiczny. Na przykład PKpub oznacza publiczną połowę PK.
1.2.5 Klucz prywatny
Aby infrastruktura kluczy publicznych działała, należy bezpiecznie zarządzać kluczem prywatnym. Powinna być dostępna dla kilku wysoce zaufanych osób w organizacji i znajdujących się w fizycznie bezpiecznej lokalizacji z silnymi ograniczeniami zasad dostępu. W tym dokumencie użyjemy sufiksu "priv", aby oznaczyć klucz prywatny. Na przykład PKpriv oznacza prywatną część PK.
1.2.6 Certyfikaty
Podstawowym zastosowaniem certyfikatów cyfrowych jest zweryfikowanie źródła podpisanych danych, takich jak pliki binarne itp. Typowym zastosowaniem certyfikatów jest bezpieczeństwo wiadomości internetowych przy użyciu protokołu Transport Layer Security (TLS) lub Secure Sockets Layer (SSL). Zweryfikowanie podpisanych danych przy użyciu certyfikatu pozwala odbiorcy znać źródło danych i czy zostały zmienione podczas przesyłania.
Certyfikat cyfrowy ogólnie zawiera na wysokim poziomie nazwę wyróżniającą (DN), klucz publiczny i podpis. Nazwa wyróżniająca identyfikuje jednostkę — na przykład firmę — która posiada klucz prywatny zgodny z kluczem publicznym certyfikatu. Podpisywanie certyfikatu przy użyciu klucza prywatnego i umieszczanie podpisu w certyfikacie wiąże klucz prywatny z kluczem publicznym.
Certyfikaty mogą zawierać inne typy danych. Na przykład certyfikat X.509 zawiera format certyfikatu, numer seryjny certyfikatu, algorytm użyty do podpisania certyfikatu, nazwę urzędu certyfikacji, nazwę certyfikatu, nazwę i klucz publiczny jednostki żądającej certyfikatu oraz podpis urzędu certyfikacji.
1.2.7 Łączenie certyfikatów
Rysunek 2. Łańcuch trzech certyfikatów
Certyfikaty użytkownika są często podpisane przez inny klucz prywatny, taki jak klucz prywatny urzędu certyfikacji. Stanowi to łańcuch dwóch certyfikatów. Zweryfikowanie, czy certyfikat użytkownika jest autentyczny, polega na sprawdzeniu jego podpisu, co wymaga użycia klucza publicznego urzędu certyfikacji z jego certyfikatu. Jednak zanim będzie można użyć klucza publicznego urzędu certyfikacji, należy zweryfikować dołączony certyfikat urzędu certyfikacji. Ponieważ certyfikat urzędu certyfikacji jest z podpisem własnym, klucz publiczny urzędu certyfikacji jest używany do weryfikowania certyfikatu.
Certyfikat użytkownika nie musi być podpisany kluczem prywatnym głównego urzędu certyfikacji. Może być podpisane kluczem prywatnym pośrednika, którego certyfikat został podpisany kluczem prywatnym urzędu certyfikacji. Jest to wystąpienie łańcucha trzech certyfikatów: certyfikat użytkownika, certyfikat pośredniczący i certyfikat urzędu certyfikacji. Jednak więcej niż jeden pośrednik może być częścią łańcucha, więc łańcuchy certyfikatów mogą mieć dowolną długość.
1.3 Wymagania dotyczące infrastruktury kluczy publicznych bezpiecznego rozruchu
Zdefiniowane przez UEFI podstawowe zaufanie składa się z klucza platformy oraz wszelkich kluczy, które OEM lub ODM włącza do rdzenia oprogramowania sprzętowego. Zabezpieczenia sprzed UEFI i podstawa zaufania nie są rozwiązywane przez proces bezpiecznego rozruchu UEFI, lecz poprzez publikacje National Institute of Standards and Technology (NIST) oraz Trusted Computing Group (TCG) przywołane w tym dokumencie.
1.3.1 Wymagania dotyczące bezpiecznego rozruchu
Aby zaimplementować bezpieczny rozruch, należy wziąć pod uwagę następujące parametry:
- Wymagania klienta
- Wymagania dotyczące zgodności sprzętu systemu Windows
- Wymagania dotyczące generowania kluczy i zarządzania.
Należy wybrać sprzęt do zarządzania kluczami bezpiecznego rozruchu, takich jak sprzętowe moduły zabezpieczeń (HSM), rozważyć specjalne wymagania dotyczące komputerów, aby wysłać je do instytucji rządowych i innych agencji, a na koniec proces tworzenia, wypełniania i zarządzania cyklem życia różnych kluczy bezpiecznego rozruchu.
1.3.2 Klucze związane z bezpiecznym rozruchem
Klucze używane do bezpiecznego rozruchu znajdują się poniżej:
Rysunek 3. Klucze związane z bezpiecznym rozruchem
Rysunek 3 powyżej reprezentuje podpisy i klucze na komputerze z bezpiecznym rozruchem. Platforma jest zabezpieczona za pośrednictwem klucza platformy instalowanego przez producenta OEM w oprogramowaniu układowym podczas produkcji. Inne klucze są używane przez Bezpieczny Rozruch do ochrony dostępu do baz danych, które przechowują klucze w celu umożliwienia lub zabronienia wykonania oprogramowania układowego.
Autoryzowana baza danych (db) zawiera klucze publiczne i certyfikaty reprezentujące zaufane składniki oprogramowania układowego i moduły ładujące systemu operacyjnego. Zabroniona baza danych sygnatur (dbx) zawiera skróty złośliwych i narażonych składników, a także naruszone klucze i certyfikaty oraz blokuje wykonywanie tych złośliwych składników. Siła tych zasad opiera się na podpisywaniu oprogramowania układowego przy użyciu technologii Authenticode i infrastruktury kluczy publicznych (PKI). Infrastruktura kluczy publicznych to dobrze ugruntowany proces tworzenia, zarządzania i odwoływanie certyfikatów, które ustanawiają zaufanie podczas wymiany informacji. Infrastruktura kluczy publicznych jest podstawą modelu zabezpieczeń bezpiecznego rozruchu.
Poniżej przedstawiono więcej szczegółów dotyczących tych kluczy.
1.3.3 Klucz platformy (PK)
Zgodnie z sekcją 27.5.1 UEFI 2.3.1 Errata C, klucz platformy ustanawia relację zaufania między właścicielem platformy a jej oprogramowaniem układowym. Właściciel platformy rejestruje publiczną połowę klucza (PKpub) w oprogramowaniu układowym platformy, zgodnie z sekcją 7.2.1 UEFI 2.3.1 Errata C. Ten krok przenosi platformę z trybu konfiguracji do trybu użytkownika. Firma Microsoft zaleca, aby klucz platformy był typu
EFI_CERT_X509_GUIDz algorytmem klucza publicznego RSA, długością klucza publicznego 2048 bitów i algorytmem podpisu sha256RSA. Właściciel platformy może użyć typuEFI_CERT_RSA2048_GUID, jeśli miejsce do magazynowania jest problemem. Klucze publiczne służą do sprawdzania podpisów zgodnie z opisem we wcześniejszej sekcji tego dokumentu. Właściciel platformy może później użyć prywatnej połowy klucza (PKpriv):Aby zmienić własność platformy, należy umieścić oprogramowanie układowe w trybie konfiguracji zdefiniowanym przez interfejs UEFI, co wyłącza bezpieczny rozruch. Przywróć tryb konfiguracji tylko wtedy, gdy jest to konieczne podczas produkcji.
W przypadku urządzeń stacjonarnych i serwerów producenci OEM mogą zarządzać kluczami PK i niezbędnymi skojarzonymi z nimi infrastrukturami PKI lub zdecydować się na użycie zarządzanego przez firmę Microsoft klucza PK dla OEM. PK zarządzane przez firmę Microsoft jest chronione przez moduły HSM firmy Microsoft i zarządzane w ramach najlepszych praktyk PKI. Jest to preferowany klucz publiczny (PK) dla ekosystemu Windows.
1.3.3.1 Aby zarejestrować lub zaktualizować klucz wymiany kluczy (KEK) oraz zarejestrować klucz platformy
Właściciel platformy rejestruje publiczną połowę klucza platformy (PKpub), wywołując usługę UEFI Boot Service SetVariable() zgodnie z sekcją 7.2.1 specyfikacji UEFI 2.3.1 errata C, a następnie resetuje platformę. Jeśli platforma jest w trybie konfiguracji, nowy PKpub zostanie podpisany przy użyciu swojego odpowiednika PKpriv . Jeśli platforma jest w trybie użytkownika, nowy PKpub musi być podpisany przy użyciu bieżącego PKpriv. Jeśli klucz PK jest typu EFI_CERT_X509_GUID, to musi być podpisany przez bezpośredni klucz PKpriv, a nie klucz prywatny żadnego certyfikatu wystawionego w ramach PK.
1.3.3.2 Wyczyszczenie klucza platformy
Właściciel platformy wyczyści publiczną połowę klucza platformy (PKpub), wywołując usługę UEFI Boot Service SetVariable() o rozmiarze 0, a następnie resetując platformę. Jeśli platforma jest w trybie konfiguracji, pusta zmienna nie musi być uwierzytelniona. Jeśli platforma jest w trybie użytkownika, pusta zmienna musi być podpisana bieżącym kluczem PKpriv; aby uzyskać szczegółowe informacje, zobacz sekcję 7.2 (Usługi zmiennych) w specyfikacji UEFI 2.3.1 Errata C. Zdecydowanie zaleca się, aby produkcyjny klucz PKpriv nigdy nie był używany do podpisywania pakietu w celu zresetowania platformy, ponieważ umożliwia to programowe wyłączenie bezpiecznego rozruchu. Jest to przede wszystkim scenariusz testowy przedprodukcyjny.
Klucz platformy może być również wyczyszczony przy użyciu bezpiecznej metody specyficznej dla platformy. W takim przypadku należy również zaktualizować tryb konfiguracji zmiennej globalnej do 1.
Rysunek 4. Diagram stanu klucza platformy
1.3.3.3 Generacja PK
Zgodnie z zaleceniami UEFI klucz publiczny musi być przechowywany w magazynie nietrwałym, który jest odporny na naruszenia i usuwanie na komputerze. Klucze prywatne pozostają bezpieczne w partnerze lub w biurze zabezpieczeń producenta OEM i tylko klucz publiczny jest ładowany na platformę. Więcej szczegółów można znaleźć w sekcji 2.2.1 i 2.3.
Firma Microsoft udostępnia klucz PK dla OEM , aby wyeliminować odpowiedzialność za utrzymanie i zabezpieczanie certyfikatu PK. Klucz PK jest chroniony przez moduły HSM firmy Microsoft i zarządzany w ramach operacji PKI firmy Microsoft.
Liczba generowanych PK zależy od uznania właściciela platformy (OEM). Te klucze mogą być następujące:
Jeden na komputer. Posiadanie jednego unikatowego klucza dla każdego urządzenia. Może to być wymagane w przypadku agencji rządowych, instytucji finansowych lub innych klientów serwerów z wysokimi potrzebami w zakresie zabezpieczeń. Może to wymagać dodatkowej mocy magazynowania i przetwarzania kryptograficznego w celu wygenerowania prywatnych i publicznych kluczy dla dużej liczby komputerów. Zwiększa to złożoność mapowania urządzeń z ich odpowiednim kluczem PK podczas wdrażania przyszłych aktualizacji oprogramowania sprzętowego do tych urządzeń. Istnieje kilka różnych rozwiązań HSM do zarządzania dużą liczbą kluczy, zależnie od dostawcy HSM. Aby uzyskać więcej informacji, zobacz Secure Boot Key Generation Using HSM (Generowanie klucza bezpiecznego rozruchu przy użyciu modułu HSM).
Jeden na model. Posiadanie jednego klucza na model komputera. Kompromis polega na tym, że jeśli klucz zostanie naruszony, wszystkie maszyny w tym samym modelu będą narażone na zagrożenia. Jest to zalecane przez firmę Microsoft w przypadku komputerów stacjonarnych.
Jeden na linię produktu. W przypadku naruszenia zabezpieczeń klucza cała linia produktu byłaby podatna na zagrożenia.
Jeden na producenta OEM. Chociaż może to być najprostsze do skonfigurowania, jeśli klucz zostanie naruszony, każdy wyprodukowany komputer będzie narażony na zagrożenia. Aby przyspieszyć działanie na hali produkcyjnej, klucz PK i potencjalnie inne klucze mogą być wstępnie generowane i przechowywane w bezpiecznej lokalizacji. Mogą zostać później pobrane i użyte na linii montażowej. Rozdziały 2 i 3 zawierają więcej szczegółów.
1.3.3.4 Ponowne łączenie klucza PK
Może to być konieczne, jeśli klucz PK zostanie naruszony lub jako wymaganie przez klienta, który ze względów bezpieczeństwa może zdecydować się na zarejestrowanie własnego klucza PK.
Ponowne tworzenie klucza można wykonać dla modelu lub komputera w oparciu o metodę wybraną do utworzenia klucza PK. Wszystkie nowsze komputery zostaną podpisane przy użyciu nowo utworzonego klucza PK.
Zaktualizowanie klucza PK na komputerze produkcyjnym wymagałoby aktualizacji zmiennej podpisanej przy użyciu istniejącego klucza PK w celu jego zastąpienia lub instalacji pakietu aktualizacji oprogramowania układowego. OEM może również utworzyć pakiet SetVariable() i rozpowszechnić go za pomocą prostej aplikacji, takiej jak program PowerShell, który po prostu zmienia klucz PK. Pakiet aktualizacji oprogramowania układowego zostanie podpisany kluczem bezpieczeństwa aktualizacji oprogramowania układowego i zweryfikowany przez oprogramowanie układowe. W przypadku aktualizacji oprogramowania układowego w celu zaktualizowania klucza platformy (PK) należy zadbać o zachowanie klucza KEK, bazy db i dbx.
Na wszystkich komputerach zaleca się, aby nie używać klucza PK jako bezpiecznego klucza aktualizacji oprogramowania układowego. Jeśli PKpriv został naruszony, klucz bezpiecznej aktualizacji oprogramowania układowego również jest naruszony (ponieważ są takie same). W takim przypadku aktualizacja rejestracji nowego PKpub może nie być możliwa, ponieważ proces aktualizacji również został naruszony.
Na komputerach SOCs istnieje inny powód, aby nie używać klucza PK jako bezpiecznego klucza aktualizacji oprogramowania układowego. Dzieje się tak, ponieważ bezpieczny klucz aktualizacji oprogramowania układowego jest trwale zapisany w bezpiecznikach na komputerach spełniających wymagania dotyczące certyfikacji sprzętu systemu Windows.
1.3.4 Klucz wymiany kluczy (KEK) Klucze wymiany kluczy ustanawiają relację zaufania między systemem operacyjnym a oprogramowaniem układowym platformy. Każdy system operacyjny (i potencjalnie każda aplikacja innej firmy, która musi komunikować się z oprogramowaniem układowym platformy) rejestruje klucz publiczny (KEKpub) w oprogramowaniu układowym platformy.
1.3.4.1 Rejestrowanie kluczy wymiany kluczy
Klucze wymiany kluczy są przechowywane w bazie danych sygnatur zgodnie z opisem w 1.4 Signature Databases (Db and Dbx)). Baza danych sygnatur jest przechowywana jako uwierzytelniona zmienna UEFI.
Właściciel platformy rejestruje klucze wymiany kluczy, wywołując metodę SetVariable() zgodnie z sekcją 7.2 (Usługi zmiennych) w ramach specyfikacji UEFI 2.3.1 Errata C. z zestawem
EFI_VARIABLE_APPEND_WRITEatrybutów i parametrem Dane zawierającym nowe klucze lub odczytując bazę danych przy użyciu metody GetVariable(), dołączając nowy klucz wymiany kluczy do istniejących kluczy, a następnie zapisując bazę danych przy użyciu metody SetVariable()zgodnie z sekcją 7.2 (Usługi zmiennych) w ramach specyfikacji UEFI 2.3.1 Errata C bez zestawu atrybutówEFI_VARIABLE_APPEND_WRITE.Jeśli platforma jest w trybie konfiguracji, zmienna bazy danych sygnatury nie musi być podpisana, ale parametry wywołania SetVariable() należy nadal przygotować zgodnie z określonymi wymaganiami dla zmiennych autoryzowanych w sekcji 7.2.1. Jeśli platforma jest w trybie użytkownika, baza danych podpisów musi być podpisana przy użyciu bieżącego klucza PKpriv
1.3.4.2 Wyczyszczenie KEK
Możliwe jest "wyczyszczenie" (usunięcie) KEK. Należy pamiętać, że jeśli klucz PK nie jest zainstalowany na platformie, "czyste" żądania nie są wymagane do podpisania. Jeśli są podpisane, wtedy do wyczyszczenia KEK wymagany jest pakiet podpisany kluczem PK, a do wyczyszczenia db lub dbx wymagany jest pakiet podpisany przez dowolną jednostkę obecną w KEK.
1.3.4.3 Microsoft KEK
Następujący certyfikat KEK firmy Microsoft jest wymagany do umożliwienia odwołania nieprawidłowych obrazów przez zaktualizowanie dbx oraz potencjalnie zaktualizowanie bazy db, aby przygotować się na nowsze obrazy podpisane przez Windows.
Microsoft Corporation KEK 2K CA 2023
- Skrót certyfikatu SHA-1:
459AB6FB5E284D272D5E3E6ABC8ED663829D632B. - WłaścicielPodpisu GUID:
{77fa9abd-0359-4d32-bd60-28f4e78f784b}. - Microsoft udostępni certyfikat partnerom i może on zostać dodany jako podpis typu
EFI_CERT_X509_GUIDlubEFI_CERT_RSA2048_GUID. - Certyfikat KEK firmy Microsoft można pobrać z: https://go.microsoft.com/fwlink/?linkid=2239775.
- Skrót certyfikatu SHA-1:
1.3.4.4 KEKDefault Dostawca platformy musi podać domyślny zestaw kluczy wymiany kluczy w zmiennej KEKDefault. Aby uzyskać więcej informacji, zapoznaj się ze specyfikacją UEFI w sekcji 27.3.3.
1.3.4.5 OEM/z zewnątrz KEK — dodawanie wielu kluczy KEK
Klienci i właściciele platform nie muszą mieć własnego KEK. Na komputerach innych niż te z systemem Windows RT, producent OEM może mieć dodatkowe KEKs umożliwiające kontrolę nad bazą danych (db) i dbx przez dodatkowych producentów OEM lub zaufane osoby trzecie.
1.3.5 Klucz aktualizacji oprogramowania układowego bezpiecznego rozruchuKlucz aktualizacji bezpiecznego oprogramowania układowego służy do podpisywania oprogramowania układowego, gdy trzeba go zaktualizować. Ten klucz musi mieć minimalną siłę klucza RSA-2048. Wszystkie aktualizacje oprogramowania układowego muszą być bezpiecznie podpisane przez producenta OEM, ich zaufany pełnomocnik, taki jak ODM lub IBV (niezależny dostawca systemu BIOS) lub przez bezpieczną usługę podpisywania.
Zgodnie z publikacją NIST 800-147 Aktualizacja oprogramowania sprzętowego w terenie musi wspierać wszystkie elementy wytycznych:
Każda aktualizacja pamięci flash oprogramowania sprzętowego musi być podpisana przez twórcę.
Oprogramowanie układowe musi sprawdzić podpis aktualizacji.
1.3.6 Tworzenie kluczy dla bezpiecznej aktualizacji oprogramowania układowego
Ten sam klucz będzie używany do podpisywania wszystkich aktualizacji oprogramowania układowego, ponieważ część publiczna będzie znajdować się na komputerze. Można również podpisać aktualizację oprogramowania układowego za pomocą klucza, który jest powiązany z kluczem aktualizacji bezpiecznego oprogramowania układowego.
Może istnieć jeden klucz na komputer, taki jak PK lub jeden na model lub jeden na linię produktu. Jeśli istnieje jeden klucz na komputer, co oznaczałoby, że miliony unikatowych pakietów aktualizacji będą musiały zostać wygenerowane. Zastanów się nad dostępnością zasobów, jaka metoda będzie ci działać. Posiadanie klucza dla modelu lub linii produktów jest dobrym kompromisem.
Klucz publiczny aktualizacji bezpiecznego oprogramowania układowego (lub jego skrót w celu zaoszczędzenia miejsca) będzie przechowywany w jakimś chronionym magazynie na platformie — zwykle chroniona pamięć flash (w komputerze PC) lub bezpieczniki programowane jednorazowo (w układach SoC).
Jeśli jest przechowywany tylko skrót tego klucza (aby zaoszczędzić miejsce), aktualizacja oprogramowania układowego będzie zawierać klucz, a pierwszy etap procesu aktualizacji sprawdzi, czy klucz publiczny w aktualizacji jest zgodny z skrótem przechowywanym na platformie.
Kapsułki to środek, za pomocą którego system operacyjny może przekazywać dane do środowiska UEFI podczas ponownego uruchamiania. System Windows wywołuje interfejs UEFI UpdateCapsule() w celu dostarczania aktualizacji oprogramowania układowego systemu i komputera. Podczas rozruchu, przed wywołaniem ExitBootServices(), system Windows przekaże wszystkie nowe aktualizacje oprogramowania układowego znajdujące się w magazynie sterowników systemu Windows do funkcji UpdateCapsule(). Oprogramowanie układowe systemu UEFI może użyć tego procesu do aktualizacji systemu i oprogramowania układowego komputera. Dzięki obsłudze oprogramowania układowego przez Windows, OEM może polegać na tym samym typowym formacie i procesie aktualizacji oprogramowania zarówno dla systemu, jak i komputera. Oprogramowanie układowe musi zaimplementować tabelę ACPI ESRT w celu obsługi interfejsu UEFI UpdateCapsule() dla systemu Windows.
Aby uzyskać szczegółowe informacje na temat implementowania obsługi platformy aktualizacji oprogramowania układowego UEFI systemu Windows, zapoznaj się z następującą dokumentacją: Platforma aktualizacji oprogramowania układowego UEFI systemu Windows.
Kapsułki aktualizacji mogą znajdować się w pamięci lub na dysku. System Windows obsługuje aktualizacje pamięci.
1.3.6.1 Kapsuła (Kapsuła w pamięci)
Poniżej przedstawiono przebieg zdarzeń dla działania kapsuły aktualizacji w pamięci.
- Kapsuła jest umieszczana w pamięci przez aplikację w systemie operacyjnym
- Zdarzenie dotyczące skrzynki pocztowej jest ustawione, aby powiadomić BIOS-u o zbliżającej się aktualizacji
- Komputer się restartuje, weryfikuje obraz kapsuły, a następnie system BIOS wykonuje aktualizację.
1.3.7 Przepływ pracy typowej aktualizacji oprogramowania układowego
- Pobierz i zainstaluj sterownik oprogramowania układowego.
- Ponowny rozruch.
- Moduł ładujący systemu operacyjnego wykrywa i weryfikuje oprogramowanie układowe.
- Moduł ładujący systemu operacyjnego przekazuje binarny blok danych do UEFI.
- UEFI wykonuje aktualizację oprogramowania układowego (ten proces należy do dostawcy układów scalonych).
- Wykrywanie modułu ładującego systemu operacyjnego zakończyło się pomyślnie.
- System operacyjny kończy rozruch.
1.4 Bazy danych podpisów (Db i Dbx)
1.4.1 Autoryzowana baza danych sygnatur (db)
Zawartość bazy danych EFI
_IMAGE_SECURITY_DATABASEkontroluje, jakie obrazy są zaufane podczas weryfikowania załadowanych obrazów. Baza danych może zawierać wiele certyfikatów, kluczy i skrótów w celu zidentyfikowania dozwolonych obrazów.Aby umożliwić ładowanie modułu ładującego systemu operacyjnego Windows, należy uwzględnić następujący certyfikat w bazie danych:
-
Windows UEFI CA 2023
- Skrót certyfikatu SHA-1:
45A0FA32604773C82433C3B7D59E7466B3AC0C67. - WłaścicielPodpisu GUID:
{77fa9abd-0359-4d32-bd60-28f4e78f784b}. - Microsoft udostępni certyfikat partnerom i może on zostać dodany jako podpis typu
EFI_CERT_X509_GUIDlubEFI_CERT_RSA2048_GUID. - Certyfikaty UEFI dla systemu Windows 2023 można pobrać stąd: https://go.microsoft.com/fwlink/?linkid=2239776.
- Skrót certyfikatu SHA-1:
Z wyjątkiem systemów, które są zablokowane do rozruchu wyłącznie systemu Windows, producent OEM powinien rozważyć uwzględnienie certyfikatów UEFI stron trzecich Microsoft oraz certyfikatów ROM opcji Microsoft. Pozwoli to na uruchamianie sterowników UEFI i aplikacji od innych firm na komputerze bez konieczności wykonywania dodatkowych kroków przez użytkownika.
Microsoft Corporation UEFI CA 2011
- Skrót certyfikatu SHA-1:
46DEF63B5CE61CF8BA0DE2E6639C1019D0ED14F3. - WłaścicielPodpisu GUID:
{77fa9abd-0359-4d32-bd60-28f4e78f784b}. - Microsoft udostępni certyfikat partnerom i może on zostać dodany jako podpis typu
EFI_CERT_X509_GUIDlubEFI_CERT_RSA2048_GUID. - UEFI CA Microsoft Corporation 2011 można pobrać tutaj: https://go.microsoft.com/fwlink/p/?linkid=321194.
- Skrót certyfikatu SHA-1:
Microsoft UEFI CA 2023
- Skrót certyfikatu SHA-1:
B5EEB4A6706048073F0ED296E7F580A790B59EAA. - WłaścicielPodpisu GUID:
{77fa9abd-0359-4d32-bd60-28f4e78f784b}. - Microsoft udostępni certyfikat partnerom i może on zostać dodany jako podpis typu
EFI_CERT_X509_GUIDlubEFI_CERT_RSA2048_GUID. - Urząd certyfikacji Microsoft UEFI 2023 można pobrać tutaj: https://go.microsoft.com/fwlink/?linkid=2239872.
- Skrót certyfikatu SHA-1:
Microsoft Option ROM UEFI CA 2023
- Skrót certyfikatu SHA-1:
3FB39E2B8BD183BF9E4594E72183CA60AFCD4277. - WłaścicielPodpisu GUID:
{77fa9abd-0359-4d32-bd60-28f4e78f784b}. - Microsoft udostępni certyfikat partnerom i może on zostać dodany jako podpis typu
EFI_CERT_X509_GUIDlubEFI_CERT_RSA2048_GUID. - Opcja Microsoft ROM UEFI CA 2023 można pobrać tutaj: https://go.microsoft.com/fwlink/?linkid=2284009.
- Skrót certyfikatu SHA-1:
1.4.2 DbDefault: dostawca platformy musi podać domyślny zestaw wpisów dla bazy danych sygnatur w zmiennej dbDefault. Aby uzyskać więcej informacji, zobacz sekcję 27.5.3 w specyfikacji UEFI.
1.4.3 Zabroniona baza danych sygnatur (dbx)
Zawartość
EFI_IMAGE_SIGNATURE_DATABASE1dbx należy sprawdzić w trakcie weryfikacji obrazów przed sprawdzeniem bazy danych, a wszelkie dopasowania muszą uniemożliwić wykonanie obrazu. Baza danych może zawierać wiele certyfikatów, kluczy i skrótów w celu zidentyfikowania zabronionych obrazów. Wymagania dotyczące certyfikacji sprzętu systemu Windows stanowią, że dbx musi być obecny, więc każda fikcyjna wartość, taka jak skrót0SHA-256 , może być używana jako bezpieczny symbol zastępczy, dopóki firma Microsoft nie rozpocznie dostarczania aktualizacji dbx. Kliknij tutaj , aby pobrać najnowszą listę odwołania UEFI od firmy Microsoft.1.4.4 DbxDefault: dostawca platformy może udostępnić domyślny zestaw wpisów dla bazy danych sygnatur w zmiennej dbxDefault. Aby uzyskać więcej informacji, zobacz sekcję 27.5.3 w specyfikacji UEFI.
1.5 Klucze wymagane do bezpiecznego rozruchu na wszystkich komputerach
Uwaga / Notatka
Producenci urządzeń, przedsiębiorstwa i klienci mogą znaleźć zalecane pliki binarne PK, KEK, DB i DBX firmy Microsoft w repozytorium open source secure boot firmy Microsoft. Pliki binarne są formatowane zgodnie z oczekiwanym formatem EDKII, aby łatwo zintegrować je z oprogramowaniem układowym.
| Nazwa klucza/bazy danych | Zmienna | Właściciel | Notatki |
|---|---|---|---|
PKpub |
PK |
producent oryginalnego wyposażenia (OEM) |
PK: tylko 1. Musi być RSA 2048 lub silniejszy. |
Microsoft Corporation KEK 2K CA 2023 | Klucz szyfrowania kluczy |
Microsoft |
Zezwala na aktualizacje bazy danych i dbx: |
Windows UEFI CA 2023 | baza danych |
Microsoft |
Urząd certyfikacji (CA) w bazie danych sygnatur umożliwia rozruch systemu Windows: https://go.microsoft.com/fwlink/?LinkId=2239776 |
Zabroniona baza danych podpisów |
dbx (Biblioteka Danych |
Microsoft |
Lista kluczy, urzędów certyfikacji lub obrazów firmy Microsoft, które są znane jako nieprawidłowe |
Bezpieczny klucz aktualizacji oprogramowania układowego |
producent oryginalnego wyposażenia (OEM) |
Zaleca się, aby ten klucz różnił się od klucza PK |
Tabela 1. Klucze/baza danych potrzebne do bezpiecznego rozruchu
1.6 Wymagania dotyczące konfiguracji bezpiecznego rozruchu UEFI dla urządzeń z systemem Windows 11 w wersji 25H2+
Producenci OEM muszą upewnić się, że konfiguracja bezpiecznego rozruchu UEFI aprowizowana i dostarczana na urządzeniach z systemem Windows 11, 25H2+ ze wstępnie załadowanym systemem Windows obejmuje następujące elementy:
PK |
OEM lub Microsoft PK |
Klucz szyfrowania kluczy |
Microsoft Corporation KEK 2K CA 2023 |
DB | Windows UEFI CA 2023 |
DBX |
Najnowszy pakiet dbx |
W przypadku urządzeń, które mają obsługiwać system Linux, inne aplikacje UEFI innych firm lub obejmują specjalny sprzęt wymagający opcji ROM, producenci OEM mogą dostarczać urządzenia z tą alternatywną konfiguracją:
PK |
OEM lub Microsoft PK |
Klucz szyfrowania kluczy |
Microsoft Corporation KEK 2K CA 2023 |
DB | Windows UEFI CA 2023 |
DBX |
Najnowszy pakiet dbx |
Chociaż nie zaleca się wysyłania urządzeń ze wstępnie załadowanym systemem Windows, mogą być używane następujące konfiguracje:
- Microsoft Windows Production PCA 2011, Microsoft Corporation UEFI CA 2011 i Microsoft Corporation KEK CA 2011 mogą być uwzględnione tylko w celu zachowania zgodności rozruchu ze starszymi lub jeszcze nie zaktualizowanymi systemami i aplikacjami UEFI innych firm.
- W razie potrzeby urząd certyfikacji UEFI OEM może zostać uwzględniony w bazie danych dla każdej z powyższych konfiguracji.
Aby zapoznać się z zalecaną zawartością dla wszystkich zmiennych UEFI bezpiecznego rozruchu, zapoznaj się z repozytorium otwartoźródłowym bezpiecznego rozruchu firmy Microsoft. W przypadku zawartości dbx odwołania zostaną podzielone i zastosowane na podstawie certyfikatów podpisywania znajdujących się w zmiennych KEK i DB urządzenia.
Rozwiązania w zakresie zarządzania kluczami
Poniżej podano niektóre metryki użyte do porównania.
2.1 Użyte metryki
Poniższe metryki mogą pomóc wybrać komputer HSM na podstawie wymagań specyfikacji UEFI 2.3.1 Errata C i Twoich potrzeb.
Związane z infrastrukturą kluczy publicznych (PKI)
- Czy obsługuje on rsa 2048 lub nowszy? - Specyfikacja UEFI 2.3.1 Errata C zaleca, aby klucze były na poziomie RSA-2048 lub lepsze.
- Czy ma możliwość generowania kluczy i podpisywania?
- Ile kluczy może przechowywać? Czy przechowuje klucze na HSM lub na dołączonym serwerze?
- Metoda uwierzytelniania do pobierania kluczy. Niektóre komputery obsługują wiele jednostek uwierzytelniania, które mają być obecne na potrzeby pobierania klucza.
Ceny
- Jaki jest punkt cenowy? Moduły HSM mogą wahać się w cenie od $1,500 do $70,000 w zależności od dostępnych funkcji.
Środowisko produkcyjne
- Szybkość pracy na hali produkcyjnej. Procesory kryptograficzne mogą przyspieszyć tworzenie kluczy i dostęp.
- Łatwość instalacji, wdrażania, konserwacji.
- Wymagany zestaw umiejętności i szkolenie?
- Dostęp do sieci na potrzeby tworzenia kopii zapasowych i wysokiej dostępności
Standardy i zgodność
- Jaki poziom zgodności ze standardem FIPS ma? Czy jest odporny na manipulacje?
- Obsługa innych standardów, na przykład interfejsów API kryptograficznych MS.
- Czy spełnia wymagania rządu i innych agencji?
Niezawodność i odzyskiwanie po awarii
Czy zezwala na tworzenie kopii zapasowej kluczy?
Kopie zapasowe mogą być przechowywane zarówno lokalnie w bezpiecznym miejscu, które znajduje się w innej lokalizacji fizycznej niż komputer urzędu certyfikacji i moduł HSM, jak również poza lokalem.
Czy umożliwia wysoką dostępność na potrzeby odzyskiwania po awarii?
2.2 Opcje zarządzania kluczami
2.2.1 Sprzętowy moduł zabezpieczeń (HSM)
Na podstawie powyższych kryteriów jest to prawdopodobnie najbardziej odpowiednie i bezpieczne rozwiązanie. Większość modułów HSM ma zgodność ze standardem FIPS 140–2 na poziomie 3. Zgodność ze standardem FIPS 140–2 na poziomie 3 jest ścisła w przypadku uwierzytelniania i wymaga, aby klucze nie zostały wyeksportowane ani zaimportowane z modułu HSM.
Obsługują one wiele sposobów przechowywania kluczy. Mogą być przechowywane lokalnie na samym module HSM lub na serwerze dołączonym do modułu HSM. Na serwerze klucze są szyfrowane i przechowywane i preferowane w przypadku rozwiązań, które wymagają przechowywania wielu kluczy.
Zasady zabezpieczeń modułu kryptograficznego określają zasady zabezpieczeń fizycznych, w tym fizyczne mechanizmy zabezpieczeń, które są implementowane w module kryptograficznym, takie jak uszczelnienia umożliwiające wykrycie naruszenia, blokady, reagowanie na naruszenia i przełączniki zerowe oraz alarmy. Umożliwia również określenie akcji wymaganych przez operatorów w celu zapewnienia, że bezpieczeństwo fizyczne jest utrzymywane, takie jak okresowa inspekcja uszczelnień widocznych dla manipulacji lub testowanie reakcji na naruszenia i przełączników zerowania.
2.2.1.1 Moduł HSM sieci
To rozwiązanie jest najlepsze w swojej klasie pod względem zabezpieczeń, zgodności ze standardami, generowaniem kluczy, magazynem i pobieraniem. Większość tych komputerów obsługuje wysoką dostępność i ma możliwość tworzenia kopii zapasowych kluczy.
Koszty tych produktów mogą być w dziesiątkach tysięcy dolarów na podstawie dodatkowych usług, które oferują.
2.2.1.2 Autonomiczny moduł HSM
Te funkcje doskonale sprawdzają się w przypadku serwerów autonomicznych. Można użyć programu Microsoft CAPI i CNG lub innego bezpiecznego interfejsu API obsługiwanego przez moduł HSM. Te moduły HSM są dostępne w różnych formach obsługujących magistrale USB, PCIe i PCMCIA.
Opcjonalnie obsługują one tworzenie kopii zapasowych kluczy i wysoką dostępność.
2.2.2 Dostawcy rozwiązań niestandardowych
Kryptografia klucza publicznego może być trudna i wymagać zrozumienia pojęć kryptograficznych, które mogą być nowe. Istnieją dostawcy rozwiązań niestandardowych, którzy mogą pomóc w zapewnieniu bezpiecznego rozruchu do pracy w środowisku produkcyjnym.
Istnieją różne niestandardowe rozwiązania oferowane przez dostawców BIOS, firmy HSM i firmy konsultingowe PKI, aby zapewnić działanie Secure Boot PKI w środowisku produkcyjnym.
Poniżej wymieniono niektórych dostawców:
2.2.2.1 Dostawcy systemu BIOS
Istnieje kilka dostawców systemu BIOS, którzy mogą być w stanie zapewnić rozwiązania niestandardowe.
2.2.2.2 Dostawcy modułów HSM
Niektórzy dostawcy modułu HSM mogą być w stanie zapewnić niestandardowe doradztwo. Aby uzyskać więcej informacji, zobacz Secure Boot Key Generation and Signing Using HSM (Example)( Generowanie klucza bezpiecznego rozruchu i podpisywanie przy użyciu modułu HSM (przykład).
Moduł TPM (Trusted Platform Module) 2.2.3
Moduł TPM (Trusted Platform Module) to układ sprzętowy na płycie głównej, który przechowuje klucze kryptograficzne używane do szyfrowania. Wiele komputerów obejmuje moduł TPM, ale jeśli komputer go nie zawiera, nie można go dodać. Po włączeniu, moduł Trusted Platform Module może pomóc w zabezpieczeniu produktów pełnego szyfrowania dysków, takich jak funkcje Microsoft BitLocker. Przechowuje dyski twarde zablokowane lub zapieczętowane, dopóki komputer nie ukończy procesu weryfikacji systemu lub uwierzytelniania.
Moduł TPM może generować, przechowywać i chronić klucze używane w procesie szyfrowania i odszyfrowywania.
Wadami modułów TPM jest to, że może nie mieć szybkich procesorów kryptograficznych w celu przyspieszenia przetwarzania w środowisku produkcyjnym. Nie są one również odpowiednie do przechowywania dużej liczby kluczy. Kopie zapasowe, wysoka dostępność i zgodność ze standardami FIPS 140-2 na poziomie 3 mogą być niedostępne.
2.2.4 Karty inteligentne
Karta inteligentna może generować i przechowywać klucze. Udostępniają one niektóre funkcje, które obsługują HSM, takie jak uwierzytelnianie i zabezpieczenie przed manipulacją, ale nie mają za dużo miejsca na przechowywanie kluczy czy kopii zapasowej. Wymagają one ręcznej interwencji i mogą nie być odpowiednie do automatyzacji i użycia w środowisku produkcyjnym, ponieważ wydajność może być niska.
Wady kart inteligentnych są podobne do TPM. Mogą nie mieć szybkich procesorów kryptograficznych w celu przyspieszenia przetwarzania w środowisku produkcyjnym. Nie są one również odpowiednie do przechowywania dużej liczby kluczy. Kopie zapasowe, wysoka dostępność i zgodność ze standardami FIPS 140-2 na poziomie 3 mogą być niedostępne.
2.2.5 Certyfikat rozszerzonej weryfikacji
Certyfikaty EV to certyfikaty o wysokiej gwarancji, których klucze prywatne są przechowywane w tokenach sprzętowych. Pomaga to ustanowić silniejsze praktyki zarządzania kluczami. Certyfikaty EV mają te same wady co karty inteligentne.
2.2.6 Podejścia skoncentrowane na oprogramowaniu (NIEZALECANE)
Użyj interfejsów API kryptograficznych do zarządzania kluczami. Może to obejmować przechowywanie klucza w kontenerze kluczy na zaszyfrowanym dysku twardym oraz ewentualne dodatkowe użycie maszyny wirtualnej do sandboxingu i zwiększenia zabezpieczeń.
Te rozwiązania nie są tak bezpieczne, jak używanie modułu HSM i uwidaczniają wyższy wektor ataku.
2.2.6.1 Makecert (NIEZALECANE)
Makecert jest narzędziem firmy Microsoft i może być używany w następujący sposób na potrzeby generowania kluczy. Aby upewnić się, że powierzchnia ataku jest zminimalizowana, może zajść konieczność fizycznego odizolowania komputera. Komputer osobisty z kluczem PKpriv nie powinien być połączony z siecią. Powinna znajdować się w bezpiecznej lokalizacji i najlepiej używać co najmniej czytnika kart inteligentnych, jeśli nie rzeczywistego modułu HSM.
makecert -pe -ss MY -$ individual -n "CN=your name here" -len 2048 -rAby uzyskać więcej informacji, zobacz Narzędzie do tworzenia certyfikatów (Makecert.exe).
To rozwiązanie nie jest zalecane.
2.3 Generowanie kluczy HSM i przechowywanie kluczy Secure Boot
2.3.1 Przechowywanie kluczy prywatnych
Wymagania dotyczące miejsca dla każdego klucza RSA-2048 to 2048 bitów. Rzeczywista lokalizacja magazynu kluczy zależy od wybranego rozwiązania. Moduły HSM są dobrym sposobem na przechowywanie kluczy.
Fizyczna lokalizacja komputerów na hali produkcyjnej musi być obszarem chronionym z ograniczonym dostępem użytkowników, takimi jak bezpieczna klatka.
W zależności od wymagań te klucze mogą być również przechowywane w zróżnicowanej lokalizacji geograficznej lub kopii zapasowej w innej lokalizacji.
Wymagania dotyczące ponownego instalowania tych kluczy mogą się różnić w zależności od klienta (zobacz dodatek A dla federalnych wytycznych dotyczących ponownego instalowania kluczy przez urząd certyfikacji mostka).
Można to zrobić raz na rok. Może być konieczne uzyskanie dostępu do tych kluczy przez maksymalnie 30 lat (w zależności od wymagań dotyczących ponownego klucza itp.).
2.3.2 Pobieranie kluczy prywatnych
Z wielu powodów może być konieczne pobranie kluczy.
- Może być konieczne odzyskanie klucza PK, aby wydać jego zaktualizowaną wersję z powodu naruszenia bezpieczeństwa lub zgodności z przepisami rządowymi i innymi regulacjami agencji.
- KEKpri będzie używane do aktualizowania db i dbx.
- Bezpieczny klucz aktualizacji oprogramowania układowego — pri będzie używany do podpisywania nowszych aktualizacji.
2.3.3 Uwierzytelnianie
Zgodnie z FIPS 140-2 uwierzytelnianie jest oparte na poziomie dostępu.
Poziom 2
Poziom zabezpieczeń 2 wymaga co najmniej uwierzytelniania opartego na rolach, w którym moduł kryptograficzny uwierzytelnia autoryzację operatora, aby objąć określoną rolę i wykonać odpowiedni zestaw usług.
Poziom 3
Poziom zabezpieczeń 3 wymaga mechanizmów uwierzytelniania opartych na tożsamościach, zwiększając bezpieczeństwo zapewniane przez mechanizmy uwierzytelniania opartego na rolach określone dla poziomu zabezpieczeń 2. Moduł kryptograficzny uwierzytelnia tożsamość operatora i sprawdza, czy zidentyfikowany operator jest autoryzowany do przyjęcia określonej roli i wykonywania odpowiedniego zestawu usług.
Komputery PC, takie jak HSM, obsługują poziom bezpieczeństwa 3, który wymaga opartego na tożsamości uwierzytelniania 'k z m'. Oznacza to, że jednostki k mają dostęp do modułu HSM z tokenem, ale w danym momencie co najmniej k z tokenów m muszą być obecne, aby uwierzytelnianie działało w celu uzyskania dostępu do kluczy prywatnych z modułu HSM.
Na przykład do uzyskania dostępu do modułu HSM należy uwierzytelnić 3 z 5 tokenów. Członkowie ci mogą być funkcjonariuszami ochrony, autoryzatorem transakcji i/lub członkami zarządu wykonawczego.
Tokeny modułu HSM
Możesz mieć zasady dotyczące modułu HSM, które wymagają obecności tokenu:
Lokalnie
Zdalnie
Skonfigurowane do zautomatyzowania
Dobrym rozwiązaniem jest użycie kombinacji standardowego tokenu oraz hasła przypisanego do każdego tokenu.
2.4 Bezpieczne uruchamianie i podpisywanie przez strony trzecie
2.4.1 Podpisywanie sterowników UEFI
Sterowniki UEFI muszą być podpisane przez urząd certyfikacji lub klucz w bazie danych UEFI, zgodnie z opisem w innym miejscu dokumentu, lub zawierać skrót obrazu sterownika dołączony do tej bazy danych. Firma Microsoft będzie świadczyć usługę podpisywania sterowników UEFI podobną do usługi podpisywania sterowników WHQL, wykorzystując Microsoft UEFI CA 2023. Wszystkie sterowniki podpisane za pomocą tego będą bezproblemowo działać na wszystkich komputerach, które posiadają certyfikat UEFI firmy Microsoft. Istnieje również możliwość podpisania zaufanych sterowników przez producenta OEM i dołączenia urzędu certyfikacji OEM do bazy danych lub uwzględnienia skrótów sterowników w bazie danych. We wszystkich przypadkach sterownik UEFI (Opcja ROM) nie jest wykonywany, jeśli nie jest zaufany w bazie danych.
Nie trzeba ponownie weryfikować wszystkich sterowników zawartych w obrazie oprogramowania układowego systemu. Bycie częścią obrazu systemowego zapewnia wystarczającą pewność, że sterownik jest zaufany na komputerze.
Firma Microsoft udostępniła to każdemu, kto chce podpisać sterowniki UEFI. Ten certyfikat jest częścią testów bezpiecznego rozruchu HCK systemu Windows. Śledź [ten blog]((https://blogs.msdn.microsoft.com/windows_hardware_certification/2013/12/03/microsoft-uefi-ca-signing-policy-updates/), aby dowiedzieć się więcej na temat polityki podpisywania i aktualizacji UEFI CA.
2.4.2 Programy rozruchowe
Certyfikat podpisywania sterowników UEFI firmy Microsoft może służyć do podpisywania innych systemów operacyjnych. Na przykład program ładujący system Linux Fedora będzie podpisany.
To rozwiązanie nie wymaga dodania więcej certyfikatów do bazy danych kluczy. Oprócz bycia opłacalnym, można go stosować w każdej dystrybucji Linuksa. To rozwiązanie działałoby w przypadku dowolnego sprzętu, który obsługuje system Windows, więc jest przydatny dla szerokiego zakresu sprzętu.
UEFI-CA można pobrać tutaj: https://go.microsoft.com/fwlink/p/?LinkID=321194. Poniższe linki zawierają więcej informacji na temat podpisywania i przesyłania w systemie Windows HCK UEFI:
3. Podsumowanie i zasoby
W tej sekcji zamierzasz podsumować powyższe sekcje i przedstawić podejście krok po kroku:
Zaprojektuj bezpieczny urząd certyfikacji (CA) lub zidentyfikuj partnera do bezpiecznego generowania i przechowywania kluczy
Jeśli nie używasz rozwiązania innej firmy:
Zainstaluj i skonfiguruj oprogramowanie HSM na serwerze HSM. Aby uzyskać instrukcje dotyczące instalacji, zapoznaj się z instrukcjami dotyczącymi dokumentacji modułu HSM. Serwer zostanie połączony z autonomicznym lub sieciowym modułem HSM.
Aby uzyskać informacje o konfiguracji modułu HSM, zobacz sekcję 2.2.1, 2.3 i dodatek C.
Większość modułów HSM oferuje zgodność ze standardem FIPS 140-2 na poziomie 2 i 3. Skonfiguruj moduł HSM do zgodności z poziomem 2 lub poziomem 3. Zgodność na poziomie 3 ma bardziej rygorystyczne wymagania dotyczące uwierzytelniania i dostępu do klucza, dlatego jest bezpieczniejsza. Zalecany jest poziom 3.
Skonfiguruj moduł HSM pod kątem wysokiej dostępności, tworzenia kopii zapasowych i uwierzytelniania. Zapoznaj się z instrukcjami referencyjnymi modułu HSM.
Postępuj zgodnie z wytycznymi dostawcy modułu HSM dotyczącymi konfigurowania modułu HSM pod kątem wysokiej dostępności i tworzenia kopii zapasowych.
Ponadto sieciowe moduły HSM zwykle mają wiele portów sieciowych do segregowania ruchu, umożliwiając serwerowi komunikację z sieciowymi modułami HSM w sieci oddzielonej od zwykłej sieci produkcyjnej.
Po zidentyfikowaniu członków zespołu będących częścią zespołu ds. zabezpieczeń i przypisaniu im tokenów. Należy skonfigurować sprzęt HSM na potrzeby uwierzytelniania k-of-m.
Klucze bezpiecznego rozruchu i przedgenerowanie certyfikatów. Zobacz sekcje od 1.3 do 1.5
Użyj interfejsów API modułu HSM, aby wstępnie wygenerować (generować z wyprzedzeniem) klucz PK i klucz aktualizacji oprogramowania układowego oraz certyfikaty.
Wymagane — PK (zalecane 1 na model), Firmware Update key (zalecane 1 na model), Microsoft KEK, Db, Dbx UWAGA: Microsoft KEK, db i dbx nie muszą być generowane przez OEM i są wymienione dla kompletności. Opcjonalnie — KEK firmy OEM/innej firmy, db, dbx i inne klucze, które mogą być wprowadzone do bazy danych OEM.
Zastosuj obraz systemu Windows do komputera.
Zainstaluj bazę danych firmy Microsoft i bazę danych dbx. Zobacz Sekcję 1.3.6 i dodatek B – API bezpiecznego rozruchu.
Zainstaluj Windows UEFI CA 2023 w bazie danych.
Zainstaluj pusty dbx, jeśli firma Microsoft go nie udostępnia. System Windows automatycznie zaktualizuje dbX do najnowszej wersji DBX za pośrednictwem usługi Windows Update podczas pierwszego ponownego rozruchu.
Uwaga / Notatka
Użyj poleceń cmdlet programu PowerShell, które są częścią testów HCK systemu Windows lub używają metod dostarczonych przez dostawcę systemu BIOS.
Zainstaluj Microsoft KEK. Zobacz sekcję 1.3.3.
Instalowanie klucza KEK firmy Microsoft w bazie danych UEFI KEK
Ostrzeżenie
Użyj poleceń cmdlet programu PowerShell, które są częścią testów HCK systemu Windows lub używają metod dostarczonych przez dostawcę systemu BIOS.
Opcjonalny krok — składniki bezpiecznego rozruchu producenta OEM/podmiotu trzeciego. Zobacz sekcję 1.3.4 i 1.4.
Zidentyfikuj, czy potrzebujesz utworzyć klucz KEK, bazę danych db i dbx dla OEM lub innej firmy.
Podpisz bazę danych producenta OEM/innej firmy i bazę danych dbx przy użyciu klucza KEK (wygenerowanego wcześniej) przy użyciu interfejsu API modułu HSM.
Zainstaluj oprogramowanie OEM/innej firmy KEK, db i dbx.
Podpisywanie sterowników UEFI — zobacz sekcję 2.4.
Jeśli chcesz obsługiwać karty rozszerzeń lub inne sterowniki/aplikacje/bootloadery UEFI, zainstaluj Microsoft UEFI CA 2023 i Microsoft Corporation UEFI CA 2011 w bazie danych UEFI.
Klucz aktualizacji oprogramowania układowego bezpiecznego rozruchu — zobacz sekcję 1.3.5.
Tylko komputery z systemem Innym niż Windows RT: zainstaluj klucz publiczny aktualizacji bezpiecznego oprogramowania układowego lub jego skrót, aby zaoszczędzić miejsce.
Tylko na układach SoC może być konieczne zrobienie czegoś innego, na przykład zapisanie zabezpieczonego klucza aktualizacji oprogramowania układowego: publicznego lub jego skrótu.
Włączanie bezpiecznego rozruchu. Zobacz Dodatek B — bezpieczne interfejsy API rozruchu.
Zainstaluj PKpub OEM/ODM (preferowany certyfikat, ale klucz jest w porządku) w kluczu PK UEFI.
Zarejestruj klucz PK przy użyciu interfejsu API bezpiecznego rozruchu. Komputer powinien być teraz włączony na potrzeby bezpiecznego rozruchu.
Uwaga / Notatka
Jeśli zainstalujesz klucz PK na końcu, klucz MS KEK, db, dbx nie muszą być podpisane — nie jest wymagana informacja SignerInfo. Jest to skrót.
Testowanie bezpiecznego rozruchu: wykonaj wszystkie zastrzeżone testy i testy HCK systemu Windows zgodnie z instrukcjami. Zobacz Dodatek B — bezpieczne interfejsy API rozruchu.
Platforma wysyłkowa: PKpriv prawdopodobnie nigdy nie będzie używany ponownie, zachowaj bezpieczeństwo.
pl-PL: Obsługa: przyszłe aktualizacje oprogramowania układowego są bezpiecznie podpisane przy użyciu prywatnego klucza do bezpiecznej aktualizacji oprogramowania układowego, co zapewnia usługa podpisywania.
3.1 Zasoby
Oficjalny dokument strategii zabezpieczeń — https://go.microsoft.com/fwlink/p/?linkid=321288
Nadsyłanie HCK systemu Windows —https://go.microsoft.com/fwlink/p/?linkid=321287
Dodatek A — lista kontrolna PKI bezpiecznego rozruchu dla produkcji
Poniżej znajduje się lista kontrolna wysokiego poziomu podsumowująca kroki wymagane do włączenia bezpiecznego rozruchu na komputerach spoza systemu Windows RT.
Konfigurowanie bezpiecznego rozruchu
Zdefiniuj strategię zabezpieczeń (zidentyfikuj zagrożenia, zdefiniuj strategię proaktywną i reaktywną) zgodnie z oficjalnym dokumentem w sekcji 4.
Zidentyfikuj zespół ds. zabezpieczeń zgodnie z białą księgą w sekcji 4.
Ustanów bezpieczny urząd certyfikacji lub zidentyfikuj partnera (zalecane rozwiązanie) w celu bezpiecznego generowania i przechowywania kluczy.
Zidentyfikuj zasady dotyczące częstotliwości ponownego generowania kluczy. Może to zależeć od tego, czy masz jakiekolwiek specjalne wymagania klienta, takie jak instytucje rządowe lub inne agencje.
Jeśli klucz bezpiecznego rozruchu zostanie naruszony, należy mieć plan awaryjny.
Określ liczbę kluczy PK i innych kluczy, które będą generowane zgodnie z sekcją 1.3.3 i 1.5.
Będzie to oparte na bazie klienta, rozwiązaniu magazynu kluczy i zabezpieczeniach komputerów.
Jeśli używasz zalecanego rozwiązania do zarządzania kluczami przez zewnętrznego dostawcę, możesz pominąć kroki 7–8.
Pozyskiwanie serwera i sprzętu do zarządzania kluczami. — sieć lub autonomiczny moduł HSM zgodnie z sekcją 2.2.1. Zastanów się, czy potrzebujesz jednego lub kilku modułów HSM w celu zapewnienia wysokiej dostępności i strategii tworzenia kopii zapasowej klucza.
Zidentyfikuj co najmniej 3–4 członków zespołu, którzy będą mieli token uwierzytelniania na potrzeby uwierzytelniania w module HSM.
Użyj modułu HSM lub innej firmy, aby wstępnie wygenerować klucze i certyfikaty związane z bezpiecznym rozruchem. Klucze będą zależeć od typu komputera: SoC, Windows RT lub innej niż Windows RT. Aby uzyskać więcej informacji, zobacz sekcje od 1.3 do 1.5.
Załaduj firmware odpowiednimi kluczami.
Zarejestruj klucz platformy bezpiecznego rozruchu, aby włączyć bezpieczny rozruch. Aby uzyskać więcej informacji, zobacz Dodatek B.
Wykonaj wszystkie zastrzeżone testy i testy bezpiecznego rozruchu HCK zgodnie z instrukcjami. Aby uzyskać więcej informacji, zobacz Dodatek B.
Wysyłka komputera. PKpriv prawdopodobnie nigdy nie będzie używany ponownie, zachowaj bezpieczeństwo.
Obsługa (aktualizowanie oprogramowania układowego)
Może być konieczne zaktualizowanie oprogramowania układowego z kilku powodów, takich jak aktualizowanie składnika UEFI lub naprawianie naruszenia bezpieczeństwa klucza bezpiecznego rozruchu lub okresowe ponowne tworzenie kluczy bezpiecznego rozruchu.
Aby uzyskać więcej informacji, zobacz sekcję 1.3.5 i sekcję 1.3.6.
Dodatek B — interfejsy API bezpiecznego rozruchu
API Bezpiecznego Rozruchu
Następujące interfejsy API są powiązane z UEFI/Secure Boot:
GetFirmwareEnvironmentVariableEx: pobiera wartość określonej zmiennej środowiskowej oprogramowania układowego.
SetFirmwareEnvironmentVariableEx: ustawia wartość określonej zmiennej środowiskowej oprogramowania układowego.
GetFirmwareType: pobiera typ oprogramowania układowego.
Ustawianie klucza PK
Użyj polecenia cmdlet Set-SecureBootUEFI, aby włączyć bezpieczny rozruch. Po ustawieniu klucza PK, wymuszanie funkcji bezpiecznego rozruchu nie będzie aktywne aż do następnego ponownego uruchomienia. Przed ponownym uruchomieniem kod może wywołać metodę GetFirmwareEnvironmentVariableEx() lub polecenie cmdlet programu PowerShell: Get-SecureBootUEFI w celu potwierdzenia zawartości baz danych bezpiecznego rozruchu.
Weryfikacja
Aby sprawdzić stan zmiennej bezpiecznego rozruchu, możesz użyć Msinfo32.exe lub poleceń cmdlet programu PowerShell. Brak interfejsu WMI. Można również przetestować, wstawiając niepoprawnie podpisany rozruchowy dysk USB (na przykład z testu ręcznego logowania bezpiecznego rozruchu systemu Windows HCK) i sprawdzić, czy nie można go uruchomić.
Polecenia cmdlet programu PowerShell bezpiecznego rozruchu
Confirm-SecureBootUEFI: czy bezpieczny rozruch UEFI jest "WŁĄCZONY", prawda czy fałsz?
SetupMode == 0 && SecureBoot == 1
Set-SecureBootUEFI: ustawianie lub dołączanie uwierzytelnionych zmiennych interfejsu UEFI SecureBoot
Get-SecureBootUEFI: Uzyskiwanie uwierzytelnionych wartości zmiennych UEFI SecureBoot
Format-SecureBootUEFI: tworzy serializacji EFI_SIGNATURE_LISTs i EFI_VARIABLE_AUTHENTICATION_2
Windows HCK i instrukcje bezpiecznego rozruchu
Poniższe kroki dotyczą testów systemowych oraz testów komputerów z niestandardowymi sterownikami.
Wyłącz zabezpieczenia bezpiecznego rozruchu.
Wprowadź konfigurację systemu BIOS i wyłącz bezpieczny rozruch.
Zainstaluj oprogramowanie klienckie HCK.
Uruchom wszystkie testy HCK systemu Windows, z wyjątkiem następujących:
- Testy modułu TPM BitLocker oraz haseł odzyskiwania przy użyciu protokołu PCR[7]
- Testy modułu TPM oraz haseł odzyskiwania BitLocker dla komputerów ARM z Bezpiecznym rozruchem
- Test logo bezpiecznego rozruchu
- Test ręcznego logo Bezpiecznego Rozruchu
Wprowadź konfigurację systemu BIOS, włącz bezpieczny rozruch i przywróć bezpieczny rozruch do konfiguracji domyślnej.
Uruchom następujące testy funkcji BitLocker i bezpiecznego rozruchu:
- Testy modułu TPM BitLocker oraz haseł odzyskiwania przy użyciu protokołu PCR[7]
- Testy modułu TPM oraz haseł odzyskiwania BitLocker dla komputerów ARM z Bezpiecznym rozruchem
- Test logo bezpiecznego rozruchu (zautomatyzowany)
Wprowadź konfigurację systemu BIOS i wyczyść konfigurację bezpiecznego rozruchu. Spowoduje to przywrócenie komputera do trybu konfiguracji przez usunięcie klucza PK i innych kluczy.
Uwaga / Notatka
Obsługa czyszczenia jest wymagana dla komputerów x86/x64.
Uruchom test ręczny logo bezpiecznego rozruchu.
Uwaga / Notatka
Bezpieczny rozruch wymaga sterowników podpisanych przez Windows HCK lub VeriSign na komputerach innych niż te z systemem Windows RT.
Zautomatyzowany test logo Bezpiecznego Rozruchu Windows HCK
Ten test sprawdzi poprawną konfigurację bezpiecznego rozruchu. Obejmuje to:
- Bezpieczny rozruch jest włączony.
- Podany PK nie jest znanym, testowym PK.
- Klucz KEK zawiera produkcyjny klucz KEK firmy Microsoft.
- baza danych zawiera produkcyjny urząd certyfikacji systemu Windows.
- dbx obecny.
- Wiele zmiennych 1kB jest tworzonych/usuwanych.
- Zmienna o wielkości 32 kB jest tworzona/usuwana.
Układ folderu testowego dla ręcznego testu Secure Boot w Windows HCK
Układ folderu testowego Windows HCK Secure Boot Manual Logo został opisany poniżej:
"\Test"folder ma następujące elementy:- Test produkcji i obsługi
- Programowe włączanie bezpiecznego rozruchu w konfiguracji testowej
- Testy obsługi
- Dołączanie certyfikatu do bazy danych, weryfikacja funkcji
- Dołączanie skrótu do dbx, funkcja verify
- Dołączanie certyfikatu do dbx, weryfikacja funkcji
- Dodaj ponad 600 skrótów do dbx, zweryfikuj rozmiar
- Programowa zmiana klucza głównego
"\Generate"Folder zawiera skrypty, które pokazują następujące elementy:Jak zostały utworzone certyfikaty testowe
Dołączone są certyfikaty testowe i klucze prywatne
Jak zostały utworzone wszystkie testy
Przekształcanie certyfikatów i skrótów w podpisane pakiety
Możesz uruchomić to samodzielnie, zastąpić własne certyfikaty
"\certs"Folder zawiera wszystkie certyfikaty potrzebne do rozruchu systemu Windows:Uwaga / Notatka
Nie używaj metodologii używanej w programie
"ManualTests\generate\TestCerts"do generowania kluczy i certyfikatów. Jest to przeznaczone tylko dla celów testowych HCK systemu Windows. Używa kluczy przechowywanych na dysku, które są bardzo niezabezpieczone i niezalecane. Nie jest to przeznaczone do użytku w środowisku produkcyjnym.
"ManualTests\example\OutOfBox"Folder zawiera skrypty, których można użyć do instalacji bezpiecznego rozruchu na komputerach produkcyjnych.Pokazuje to,
"ManualTests\generate\tests\subcreate_outofbox_example.ps1"jak te przykłady zostały wygenerowane i zawierają sekcje "TODO", gdy partner może zastąpić swój klucz główny i inne metadane.
Windows HCK UEFI podpisanie i złożenie
Poniższe linki zawierają więcej informacji:
Dodatek C — mapowania kontroli certyfikatów urzędu certyfikacji mostu federalnego
Podstawowy
Ten poziom zapewnia najniższy stopień zapewnienia tożsamości osoby. Jedną z podstawowych funkcji tego poziomu jest zapewnienie integralności danych podpisywanych informacji. Ten poziom jest istotny dla środowisk, w których ryzyko złośliwego działania jest uważane za niskie. Nie jest odpowiednia dla transakcji wymagających uwierzytelniania i jest ogólnie niewystarczająca w przypadku transakcji wymagających poufności, ale może być używana w przypadku tych ostatnich, w których certyfikaty o wyższym poziomie zapewnienia są niedostępne.
Podstawowa
Ten poziom zapewnia podstawowy poziom bezpieczeństwa w środowiskach, w których istnieją zagrożenia i konsekwencje naruszenia danych, ale nie są uważane za istotne. Może to obejmować dostęp do informacji prywatnych, w których prawdopodobieństwo złośliwego dostępu nie jest wysokie. Zakłada się, że na tym poziomie zabezpieczeń użytkownicy prawdopodobnie nie będą złośliwi.
Średni
Ten poziom jest istotny dla środowisk, w których ryzyko i konsekwencje naruszenia bezpieczeństwa danych są umiarkowane. Może to obejmować transakcje o znacznej wartości pieniężnej lub ryzyko oszustwa lub związane z dostępem do informacji prywatnych, w przypadku których prawdopodobieństwo złośliwego dostępu jest znaczne.
Wysoki
Ten poziom jest odpowiedni do użycia, gdy zagrożenia dla danych są wysokie lub konsekwencje awarii usług zabezpieczeń są wysokie. Może to obejmować bardzo wysokie wartości transakcji lub wysoki poziom ryzyka oszustwa.
Tematy pokrewne
Generowanie i podpisywanie klucza bezpiecznego rozruchu przy użyciu modułu HSM (przykład)