Secure Boot – ochrona procesu uruchamiania systemu
Secure Boot to mechanizm bezpieczeństwa oparty na UEFI, którego zadaniem jest sprawdzenie, czy elementy uruchamiane podczas startu komputera pochodzą z zaufanego źródła i nie zostały nieautoryzowanie zmodyfikowane.
Najprostszy schemat:
UEFI
|
v
Secure Boot
|
v
Sprawdzenie podpisu
|
+------> Trusted ------> Uruchom
|
+------> Untrusted ----> Zablokuj
Jego głównym celem jest ochrona łańcucha startowego (boot chain) przed uruchomieniem nieautoryzowanego kodu jeszcze zanim wystartuje Windows.
Dlaczego Secure Boot jest potrzebny?
Załóżmy, że komputer ma:
Windows
|
v
Bootloader
|
v
Kernel
Atakujący może próbować zmodyfikować element uruchamiany przed systemem operacyjnym.
To szczególnie niebezpieczne, ponieważ:
Windows jeszcze nie działa
|
v
Antywirus nie może normalnie chronić systemu
Przykładem zagrożenia jest bootkit.
Bootkit może próbować przejąć kontrolę nad procesem uruchamiania systemu:
Firmware
|
v
Malicious Bootloader
|
v
Windows
Użytkownik może uruchomić całkowicie normalny Windows, podczas gdy złośliwy kod został załadowany wcześniej.
Secure Boot ma przeciąć ten łańcuch.
Chain of Trust
Najważniejszą koncepcją Secure Boot jest:
Chain of Trust – łańcuch zaufania.
W uproszczeniu:
UEFI Firmware
|
v
Trusted Bootloader
|
v
Trusted Components
|
v
Windows Kernel
|
v
Windows
Każdy kolejny element musi spełnić wymagania integralności i zaufania.
Jeżeli element nie jest zaufany:
UEFI
|
v
Unknown Bootloader
|
X
BLOCK
Secure Boot nie szyfruje dysku
To bardzo ważne.
Secure Boot:
Integralność + autentyczność boot chain
nie:
Szyfrowanie danych
Do ochrony danych na dysku służy np. BitLocker.
Można więc mieć:
Secure Boot
+
BitLocker
i otrzymać dwie różne warstwy ochrony.
Secure Boot + BitLocker
To bardzo dobre połączenie.
PC
|
Secure Boot
|
v
Trusted Boot
|
v
BitLocker
|
v
Encrypted Disk
|
v
Windows
Secure Boot chroni łańcuch uruchamiania, a BitLocker chroni dane na dysku.
Jak działa Secure Boot?
Podczas startu firmware UEFI sprawdza podpisy elementów, które mają zostać uruchomione.
W uproszczeniu:
UEFI
|
+-- Czy bootloader jest zaufany?
|
+-- Czy podpis jest prawidłowy?
|
+-- Czy certyfikat znajduje się w bazie zaufania?
|
v
ALLOW / DENY
Jeśli wszystko się zgadza:
Bootloader
|
v
Windows Boot Manager
|
v
Windows
Klucze Secure Boot
Secure Boot wykorzystuje kilka baz danych i kluczy.
Najważniejsze pojęcia to:
- PK – Platform Key
- KEK – Key Exchange Key
- db – allowed signatures/database
- dbx – forbidden signatures/database
Schemat:
Secure Boot
|
+-------------+-------------+
| | |
PK KEK db
| | |
Platform Updates Allowed
Trust Code
|
dbx
|
Forbidden
Nie trzeba jednak traktować ich jako czterech równorzędnych „kluczy do uruchamiania”. Każdy pełni inną rolę w modelu zaufania i aktualizacji baz.
Platform Key – PK
PK (Platform Key) reprezentuje najwyższy poziom zaufania platformy w standardowym modelu Secure Boot.
Można uprościć:
PK
|
v
Platform Owner
PK służy m.in. do ustanowienia zaufania dla KEK.
KEK
Key Exchange Key służy do autoryzowania aktualizacji baz związanych z Secure Boot.
Czyli:
KEK
|
v
Authorized Update
|
+-- db
+-- dbx
db – Allowed Database
db zawiera zaufane certyfikaty, klucze lub hashe pozwalające na uruchamianie odpowiedniego kodu.
Application / Bootloader
|
v
db ?
|
+---+---+
| |
YES NO
| |
ALLOW Check policy
dbx – Forbidden Database
dbx to lista elementów, których uruchamianie powinno zostać zablokowane.
Może zawierać m.in. odwołane lub podatne komponenty.
Bootloader
|
v
dbx?
|
YES
|
v
BLOCK
To jest szczególnie ważne, gdy odkryta zostanie poważna luka w określonym bootloaderze.
Dlaczego dbx jest tak ważne?
Wyobraźmy sobie:
Trusted Bootloader v1
który był poprawnie podpisany, ale później odkryto w nim krytyczną lukę.
Sam fakt:
"ma prawidłowy podpis"
nie wystarcza.
Można zaktualizować bazę dbx, aby taki komponent nie był już akceptowany.
Bootloader v1
|
v
dbx match
|
X
BLOCK
Secure Boot nie oznacza „każdy podpisany kod jest bezpieczny”
To bardzo ważne.
Podpis cyfrowy odpowiada na pytanie:
Czy kod pochodzi od zaufanego podmiotu i podpis jest prawidłowy?
Nie odpowiada automatycznie:
Czy kod jest wolny od wszystkich podatności?
Dlatego mechanizmy takie jak:
Secure Boot
+
HVCI
+
WDAC
+
Defender
powinny być traktowane jako warstwowy system bezpieczeństwa.
Secure Boot i Windows Boot Manager
Typowy start Windows wygląda w uproszczeniu:
UEFI
|
v
Windows Boot Manager
|
v
Windows Loader
|
v
Windows Kernel
|
v
Windows
Secure Boot kontroluje przede wszystkim zaufanie do elementów boot chain, a kolejne mechanizmy Windows kontynuują ochronę integralności podczas startu systemu.
Secure Boot i Trusted Boot
Warto rozróżnić:
Secure Boot
UEFI
↓
Czy można uruchomić ten komponent?
od szerszego procesu Trusted Boot, który obejmuje dalsze elementy uruchamiania Windows.
Można myśleć o tym tak:
Secure Boot
↓
Trusted Boot
↓
Windows Kernel
↓
ELAM / Security Components
↓
Windows
Secure Boot i TPM
Secure Boot często występuje razem z TPM 2.0, ale są to różne technologie.
Secure Boot
Chroni:
Boot Chain
TPM
Zapewnia sprzętowe możliwości przechowywania kluczy i wykonywania operacji kryptograficznych oraz może uczestniczyć w pomiarze stanu platformy.
Schemat:
UEFI
|
Secure Boot
|
v
Trusted Boot
|
+--------+
| |
TPM Windows
Secure Boot + TPM + BitLocker
To jeden z najważniejszych zestawów bezpieczeństwa współczesnego Windows:
UEFI
|
Secure Boot
|
v
Trusted Boot
|
TPM
|
v
BitLocker
|
v
Windows
Każda technologia ma inne zadanie:
| Technologia | Główne zadanie |
|---|---|
| Secure Boot | Ochrona boot chain |
| TPM 2.0 | Sprzętowe zaufanie/klucze/pomiary |
| BitLocker | Szyfrowanie danych |
| HVCI | Ochrona integralności kodu kernela |
| WDAC | Kontrola uruchamiania kodu |
| Defender | Detekcja malware |
Secure Boot a bootkit
To jeden z najważniejszych scenariuszy.
Bez odpowiednich mechanizmów:
Attacker
|
v
Modify Bootloader
|
v
Malicious Code
|
v
Windows
Z Secure Boot:
Attacker
|
v
Modified Bootloader
|
v
Signature Check
|
X
BLOCK
To właśnie dlatego Secure Boot jest tak ważny w ochronie przed atakami na poziomie pre-OS.
Secure Boot a aktualizacje Windows
Windows i firmware mogą aktualizować elementy związane z łańcuchem zaufania.
Ważne jest, aby aktualizować:
Windows
+
UEFI firmware
+
Secure Boot databases
Nieaktualne bazy dbx mogą oznaczać, że system nie ma najnowszych informacji o komponentach, które powinny zostać zablokowane.

Secure Boot i Linux
Secure Boot nie jest technologią wyłącznie dla Windows.
Można uruchamiać również systemy Linux w środowisku z włączonym Secure Boot, jeśli ich ścieżka bootowania spełnia odpowiednie wymagania dotyczące zaufania i podpisów.
Typowy schemat może wyglądać tak:
UEFI
|
v
Signed Bootloader
|
v
Linux Kernel
|
v
Linux
W ekosystemie Linux szczególną rolę może odgrywać shim, który pomaga obsługiwać zaufany proces uruchamiania na platformach UEFI Secure Boot.
Secure Boot nie chroni przed wszystkim
To bardzo ważne.
Secure Boot nie zatrzyma automatycznie:
❌ malware działającego w Windows
❌ phishingu
❌ kradzieży haseł
❌ exploitów aplikacji
❌ ransomware uruchomionego już w systemie
❌ ataków sieciowych
Jego głównym zadaniem jest ochrona procesu uruchamiania platformy.
Gdzie Secure Boot znajduje się w modelu bezpieczeństwa?
Możemy przedstawić cały łańcuch:
Hardware
|
v
UEFI
|
Secure Boot
|
v
Trusted Boot
|
v
TPM
|
v
HVCI
|
v
WDAC
|
v
Smart App Control
|
v
Defender
|
v
Application
To bardzo dobrze pokazuje różnicę pomiędzy technologiami, które omawialiśmy przed chwilą.
Secure Boot vs Legacy BIOS
Secure Boot jest związany z UEFI, a nie klasycznym BIOS-em.
Uproszczenie:
Legacy BIOS
|
X
Secure Boot
natomiast:
UEFI
|
+-- Secure Boot
+-- GPT
+-- Modern Boot Architecture
Współczesne instalacje Windows 11 standardowo korzystają z UEFI i Secure Boot.
Jak sprawdzić Secure Boot w Windows?
Możesz użyć:
Win + R
i wpisać:
msinfo32
W oknie Informacje o systemie znajdziesz pozycję:
Stan funkcji Bezpieczny rozruch
Typowe wartości:
Włączone
lub:
Wyłączone
Można również sprawdzić stan z PowerShell.
Co się stanie po wyłączeniu Secure Boot?
Windows nadal może działać, ale tracisz ważną warstwę ochrony boot chain.
Schemat:
Secure Boot ON
|
Trusted Boot
|
Higher protection
vs.
Secure Boot OFF
|
Less protection of boot chain
Dlatego wyłączanie Secure Boot tylko po to, aby uruchomić starsze lub niepodpisane komponenty, powinno być przemyślane.
Secure Boot w Windows 11
Secure Boot jest jednym z elementów współczesnej architektury bezpieczeństwa Windows 11 i jest powiązany z wymaganiami sprzętowymi oraz mechanizmami takimi jak TPM 2.0.
W praktyce:
Modern PC
|
UEFI
|
TPM 2.0
|
Secure Boot
|
Windows 11
To nie przypadek, że Microsoft tak mocno związał nowoczesne wymagania Windows z tym zestawem technologii.
Najważniejsze do zapamiętania
SECURE BOOT
|
v
UEFI
|
Signature Check
|
+-----------+-----------+
| |
Trusted Untrusted
| |
v v
ALLOW BLOCK
|
v
Windows Boot Manager
|
v
Windows
Secure Boot chroni komputer przede wszystkim przed uruchomieniem nieautoryzowanego kodu na początku procesu startowego.
A jeśli połączymy go z tematami, które właśnie przerabiamy:
Secure Boot
↓
TPM 2.0
↓
BitLocker
↓
HVCI
↓
WDAC
↓
Smart App Control
↓
Defender / EDR
otrzymujemy już całkiem kompletny obraz warstwowej architektury bezpieczeństwa współczesnego Windows 11.






