Guido C. schrieb:
Ein Beispiel, aktuell ist mir nicht klar, wie ich mir anzeigen lassen
kann welcher PK (Platform Key), KEK (Key Exchange Key) oder MOK (Machine
Owner Key) auf einem System vorhanden ist.
Ich verwende dafür efi-readvar aus dem efitools Paket.
Auch der Zusammenhang bzw.
die Abhängigkeiten zwischen diesen Schlüsseln ist mir nicht ganz
verständlich.
PK, KEK, DB.
Um den PK key zu ändern braucht man den PK key. Um was an den KEK keys zu ändern, brauchst du den PK key. Um was an den DB keys zu ändern einen KEK key. (Ob man mit einem KEK key KEK keys verändern kann weiss ich nicht.). Mit den DB keys signiert man die EFI files, welche man mit der EFI Firmware beim Boot startet.
Ob die EFI Firmware da auch die MOK keys akzeptiert, weiss ich nicht. Jedenfalls können Bootloader wie z.B. grub mit denen umgehen und diese modifizieren. Beim Laden des Kernel durch Grub gehen also sowohl Keys im DB als auch im MOK.
Dann gibt es noch dbx, das ist alles, was blockiert wird. Alte schon signierte Bootloader Binaries z.B.
Guido C. schrieb:
"Typischerweise ist der Besitzer des PK der "Platform-Owner"." Hier
stellt sich mir die Frage, wer ist der "Platform-Owner"? Der Hersteller
das Mainboards oder ich als Anwender.
Normalerweise der Hersteller. Die wenigsten fassen abgesehen vom MOK da irgendwas an. Eventuell machen es auch noch manche Firmen bei ihren Systemen.
Bei meinem PC hab ich aber, bei PK, KEK und DB, ein eigenes Zertifikat rein getan. Ist ja schliesslich auch mein PC ;3
In KEK und DB hab ich noch eins von HP gelassen. Ich weiss ja nicht, ob irgendwelche EFI Firmware Anwendungen oder Firmware Updates dieses benötigen. (Und ja, die Firmware Updates gehen noch). MS Zertifikate hab ich raus genommen, aber daran denken, grub ist in der Regel damit signiert, muss man dann auch selbst signieren.
Was ich nicht weiss, ist, wo die Zertifikate, mit denen Linux Distributoren ihre Kernels signieren, abgelegt sind.