Skuteczne hackowanie BitLocker – podstawowe zabezpieczenie może nie wystarczyć

avlab.pl 9 miesięcy temu
Zdjęcie: bitlocker


Szyfrowanie całego dysku, wybranych partycji lub folderów z plikami powinno leżeć u podstaw kultury bezpieczeństwa. W systemie Windows najpopularniejszą metodą szyfrowania jest zainstalowanie systemu VeraCrypt zgodnie z naszym poradnikiem albo używanie wbudowanej funkcji BitLocker, który jest dostępny w systemach z gałęzi Pro, Education lub Enterprise. Szyfrowanie sprawia, iż dane są zabezpieczone przed nieautoryzowanym dostępem, choćby w przypadku utraty urządzenia (laptopa, pendrive), na którym przechowuje się poufne pliki. Aby odzyskać do nich dostęp zwykle należy wprowadzić hasło, PIN, skonfigurowany klucz USB albo certyfikat. BitLocker najczęściej używany jest w środowiskach biznesowych, rzadziej na komputerach domowych. Zapewnia dosyć duże bezpieczeństwo danych, chociaż czasami udaje się obejść jego zabezpieczenia.

Słaby punkt BitLockera

BitLocker to przede wszystkim pewnego rodzaju „most” pośredniczący w wymianie informacji pomiędzy zalutowanym w płycie głównej modułem TPM (Trusted Platform Module w wersji 1.2 lub nowszy 2.0) a systemem operacyjnym z dodatkową warstwą ustawień i konfiguracji dla firm. Aby móc aktywować BitLocker w Windows zwykle należy dodatkowo włączyć w BIOS komputera moduł TPM. Dzięki temu będzie możliwe korzystanie z szybszego „szyfrowania sprzętowego” w Windows. Alternatywnie to samo można zrobić dla systemu MacOS i Linux i wykorzystać inny rodzaj wbudowanego systemu do szyfrowania sprzętowego.

Na powyższym wideo przedstawiono metodę wyodrębnienia klucza szyfrującego wygenerowanego początkowo przez TPM podczas pierwszej konfiguracji BitLocker.

Słabość odkryto w magistrali LPC (Low Pin Count) używanej przez CPU (procesor) do komunikowania się z modułem TPM podczas wymiany informacji – LPC nie jest szyfrowane (clear text!)…

Jeżeli nie jest szyfrowane, to „wystarczyło” znaleźć metodę na „wpięcie” się pomiędzy CPU a TPM – przy starcie systemu, gdy wpisujesz hasło odblokowujące. Mówiąc inaczej – trzeba „sniffować” LPC. O, w tym momencie:

Autor nagrania napisał i udostępnił kod do wykorzystania w snifferze TPM. Nie musiał znać hasła do BitLockera, bo nieszyfrowany klucz został przechwycony z modułu TPM i na jego podstawie automatycznie uzyskano dostęp do danych.

Jak przebiega atak wyodrębniania hasła/klucza BitLocker?

Krok 1: Wpięcie się „snifferem TPM” i uzyskanie klucza. Tutaj autor ataku zaznacza, iż o ile „większość chipów TPM jest bezpieczna sama w sobie, to komunikacja pomiędzy nimi już nie jest”.

Krok 2: W zasadzie to już wszystko, bo w 42 sekundy (sam atak trwał 20s + 22s na otwarcie pokrywy laptopa) udało się wyodrębnić klucz i potem użyć go w systemie Linux – zamontowanie zaszyfrowanego dysku z Windows i zastosowanie klucza:

Przeglądanie plików Windows jest teraz możliwe bez żadnego problemu:

Czy atak jest możliwy do wykorzystania w prawdziwym scenariuszu?

Tak.

Ile punktów w skali zagrożenia może mieć ten atak?

To zależy od danych, które są na nich przechowywane i od indywidualnej oceny ryzyka.

Najbardziej „zagrożone” są firmy, które udostępniają laptopy pracownikom poza miejscem pracy, chociaż tak naprawdę realnym zagrożeniem jest sama kradzież. Dobra polityka bezpieczeństwa powinna obejmować postępowanie na wypadek kradzieży sprzętu IT.

Powagę zagrożenia podkreśla fakt, iż urządzenie nie musi być podpięte do sieci. Rozkręcenie lub siłowe otwarcie laptopa nie jest żadnym problemem.

Kto ponosi odpowiedzialność za możliwość ataku?

Czy Microsoft ponosi całą winę za BitLocker? Nie do końca, bo w całym cyklu powstawania tej luki za brak szyfrowania lub innego rodzaju zabezpieczenia odpowiadają Intel, AMD, inni producenci CPU, producenci modułów TPM i Microsoft. Brak zastosowania szyfrowania w magistrali LPC doprowadziło do ujawnienia luki, która może być załatana dopiero w nowszych podzespołach. W zasadzie to nie wiadomo kiedy to nastąpi.

Czy jest jakiś sposób, aby zabezpieczyć klucze w TPM przed sniffowaniem?

Autor ataku twierdzi, iż tak i wskazuje na tak zwaną funkcję „Pre-Boot BitLocker PIN”, którą można aktywować w ustawieniach grupy:

Czy to pierwszy atak na BitLocker?

Zdecydowanie nie i na pewno nie ostatni. Już w poprzednich latach badacze zaprezentowali różne sposoby ominięcia zabezpieczeń BitLockera, wyodrębnienia kluczy (publikacja 1, publikacja 2).

Idź do oryginalnego materiału