Co to jest TPM i BitLocker

Przemyslaw Przemek
4 min readDec 14, 2021

--

Moduł TPM (Trusted Platform Module) jest używany w celu zwiększenia bezpieczeństwa komputera. Jest on używany przez usługi, takie jak szyfrowanie dysków funkcją BitLocker, funkcja Windows Hello i inne, do bezpiecznego tworzenia i przechowywania kluczy kryptograficznych oraz potwierdzania, że system operacyjny i oprogramowanie układowe na urządzeniu są tym, czym powinny być, i nie zostały naruszone.

Zazwyczaj jest to osobny mikroukład na płycie głównej, chociaż standard TPM 2.0 umożliwia producentom, takim jak Intel lub AMD, wbudowanie możliwości modułu TPM w mikroukłady, zamiast wymagać oddzielnego mikroukładu.

TPM BIOS — jak włączyć?

Nowsze komputery nie wymagają montażu dodatkowego modułu na płycie głównej, bo technologia została już zintegrowana w oprogramowaniu procesora — odpowiednią funkcję do włączenia TPM znajdziecie w oprogramowaniu UEFI (BIOS) płyty głównej.

Windows 11 a TPM

Wraz z pojawieniem się Windowsa 11 , funkcja TMP musi być być na stale włączona

W przeciwnym wypadku pojawi się błąd TPM, a system się nie zainstaluje.

Windows 11 wymaga aktywnej funkcji TPM — bez niej instalator wyświetli błąd

Warto jednak zaznaczyć, że nie musi być to najnowsza wersja TPM 2.0 — zgodnie z dokumentacją techniczną Microsoftu może być to TPM w wersji 1.2, który jest obecny również w starszych komputerach (także w formie AMD fTPM lub Intel PPT).

Chodź oczywiście i to da się obejść, wystarczy przejść na stronę winclub.pl . Jest to forum dotyczące Windowsa. Można znależć tam poradniki jak przerobić oryginalne iso 11 , aby zainstalowała się na niewspieranym sprzęcie bez modułu tmp . A na dowód przedstawiam screen z laptopa, na którym zainstalowana została 11 , który nie wspiera tmp.

Jak działa BitLocker

BitLocker szyfruje przy pomocy algorytmu AES (128 lub 256 bitów) każdy sektor partycji. Szyfrowanie i odszyfrowanie odbywa się w najniższej możliwej warstwie, przez co mechanizm jest praktycznie niewidzialny dla systemu i aplikacji. Niezależnie od AES, do szyfrowania wykorzystywany jest dyfuzor, pozwalający na lepszą dyfuzję zaszyfrowanych danych. Algorytm dyfuzora został opracowany przez firmę Microsoft i jest powszechnie dostępny, jednak, aby nie zmuszać użytkowników do stosowania niecertyfikowanych algorytmów kryptograficznych, istnieje możliwość jego wyłączenia. Razem z algorytmem dyfuzora, opublikowany został formalny dowód, wykazujący, że połączenie AES i dyfuzora daje ochronę nie słabszą niż sam AES. Algorytmy kryptograficzne używane w mechanizmach BitLocker posiadają certyfikację FIPS.

Jeżeli szyfrowana jest partycja systemowa, ważnym wymogiem dla działania mechanizmu BitLocker jest istnienie na dysku twardym niezaszyfrowanej partycji startowej o rozmiarze rzędu kilkuset MB. Znajdują się na niej niezaszyfrowane programy pozwalające na odczytanie kluczy szyfrujących i start całego mechanizmu.

Do szyfrowania partycji systemowej wykorzystywany jest klucz generowany przez TPM, klucze wprowadzane z klawiatury lub klucze z pamięci USB. Możliwe jest połączenie metod wprowadzania kluczy tak w sposób wymagający równoczesnego użycia kilku z nich jak i dający wybór, którego klucza użyć.

Inne partycje nie mogą być chronione przez TPM, jednak, jeżeli partycja systemowa jest zaszyfrowana, klucz można zapisać w rejestrze i automatycznie go używać przy każdym uruchomieniu systemu.

Uwierzytelnienie

Dane umożliwiające dostęp do danych mogą pochodzić z:

  • TPM — tylko dla partycji systemowej
  • pliku (na przykład na nośniku USB)
  • wprowadzonego z klawiatury kodu, składającego się z 48 cyfr
  • Rejestru — tylko dla partycji innych niż systemowa i pod warunkiem zaszyfrowania partycji systemowej
  • hasła wprowadzanego z klawiatury — dla partycji niesystemowych lub dla partycji systemowej (tylko Windows 10) w przypadku braku TPM (musi być ustawiona odpowiednia zasada w gpedit.msc).

W przypadku dostępu do partycji innej niż systemowa i obsługi przez linię poleceń, można użyć dowolnego pliku zawierającego klucz. W przypadku i startu systemu, klucz musi znajdować się w głównym katalogu nośnika USB. Jeden nośnik USB zawierać może klucze dla praktycznie dowolnej liczby partycji. W takiej sytuacji, właściwy klucz wybierany jest automatycznie na podstawie nazwy pliku identycznej z unikalnym identyfikatorem partycji.

Choć BitLocker znacząco zyskuje dzięki użyciu modułu TPM, jego istnienie w żaden sposób nie jest wymagane. Bez TPM zaszyfrować można tak partycję systemową jak i inne partycje. Wadą braku TPM jest konieczność wprowadzania klucza podczas startu systemu. TPM robi to automatycznie w sposób niezauważalny dla użytkownika.

Składający się z 48 cyfr kod, wprowadzany podczas startu systemu wprowadza się za pomocą klawiszy numerycznych lub klawiszy funkcyjnych [F1] dla 1, [F2] dla 2 itd., gdzie [F10] oznacza zero. Wynika to z faktu, że niektóre klawiatury używają nietypowych kodów dla cyfr, podczas gdy klawisze funkcyjne zawsze obsługiwane są tak samo.

Konieczność wprowadzenia kodu pojawić się może w sytuacji, kiedy TPM nie może wygenerować klucza automatycznie. Wynikać to może na przykład ze zmian w sprzęcie lub oprogramowaniu. W takiej sytuacji, po użyciu kodu odzyskiwania należy ponownie wygenerować klucz dla TPM. Przy ponownym uruchomieniu klucz taki zostanie użyty automatycznie.

W systemie Windows 7 wprowadzona została obsługa mechanizmów BitLocker dla nośników wymiennych, w tym pamięci USB Flash, nazywana BitLocker to Go

Z poziomu GUI w przypadku dostępności modułu TPM nie da się zaszyfrować partycji systemowej inną metodą niż przechowywanie klucza w TPM, da się jednak użyć innej metody (np. hasła) szyfrując partycję systemową wydając polecenie z PowerShella (przykładowe polecenie znajduje się poniżej).

Enable-BitLocker -MountPoint "C:" -UsedSpaceOnly -PasswordProtector

Użycie innej metody zabezpieczenia partycji systemowej niż przechowywanie klucza w TPM wymaga ustawienie zasady w gpedit.msc zezwalającej na użycie funkcji BitLocker bez zgodnego modułu TPM

( Konfiguracja komputera > Szablony administracyjne > Składniki systemu Windows > Szyfrowanie dysków funkcją BitLocker > Dyski z systemem operacyjnym > Wymagaj dodatkowego uwierzytelnienia przy uruchamianiu) wybrać opcję Włączone i zaznaczyć opcję Zezwalaj na używanie funkcji BitLocker bez zgodnego modułu TPM.

Originally published at https://hacker-tips.com on December 14, 2021.

--

--