Jeśli słyszałeś, że badacze ominęli funkcję Windows Hello w laptopach Dell, Lenovo i Surface, to wszystko, co musisz wiedzieć.
Kluczowe dania na wynos
- Naukowcom udało się ominąć funkcję Windows Hello na laptopach Dell, Lenovo i Microsoft, podkreślając luki w technologii skanowania odcisków palców.
- Czujniki linii papilarnych w tych laptopach wykorzystują technologię „Match on Chip” do przeprowadzania weryfikacji biometrycznej na ich własnych mikroprocesorach, ale nie zapobiega to samoistnie atakom polegającym na fałszowaniu.
- Celem protokołu Secure Device Protection Protocol (SDCP) firmy Microsoft jest usunięcie tych luk, ale badacze odkryli, że niektóre laptopy, w tym Lenovo ThinkPad T14s i Microsoft Surface Type Cover, w ogóle nie korzystały z SDCP, przez co były bardziej podatne na ataki.
Jeśli masz Laptop z Windowsem, to prawdopodobnie natknąłeś się na Windows Hello. Jest to login biometryczny, który na obsługiwanych laptopach umożliwia użytkownikom logowanie się za pomocą skanu twarzy, skanu tęczówki lub skanu odcisku palca. Jednak w przypadku użycia odcisku palca do przedostania się do laptopa należy zachować ostrożność: badacze z siedziby Blackwing ominęli funkcję Windows Hello na trzech różnych laptopach firm Dell, Lenovo i Microsoft.
Przemawiając na konferencji Microsoft BlueHat w Redmond w stanie Waszyngton, Jesse D'Aguanno i Timo Teräs zademonstrowano jak udało im się ominąć Windows Hello na Dell Inspiron 15, Lenovo ThinkPad T14s i Microsoft Surface Pro Type Cover z czytnikiem linii papilarnych (dla Surface Pro 8/X). Oznaczało to, że mogli uzyskać dostęp do konta użytkownika i jego danych tak, jakby był zwykłym użytkownikiem. Co więcej, czujniki zastosowane w tych trzech urządzeniach pochodzą odpowiednio od Goodix, Synaptics i ELAN, co oznacza, że te luki nie są ograniczone tylko do jednego producenta skanera linii papilarnych lub laptopa OEM.
Dopasuj chip, SDCP i to, jak producenci laptopów schrzanili
Przede wszystkim konieczne jest zrozumienie, w jaki sposób skanery linii papilarnych działają i współdziałają z systemem hosta. Wszystkie trzy skanery linii papilarnych wykorzystują technologię „Match on Chip” (MoC), co oznacza, że mają własny mikroprocesor i pamięć. Na tym chipie przeprowadzana jest cała weryfikacja odcisków palców, w tym porównywanie z bazą danych „wzorów odcisków palców”; dane biometryczne uzyskiwane przez czujnik odcisków palców. Dzięki temu nawet w przypadku naruszenia bezpieczeństwa komputera hosta (w tym przypadku samego laptopa) dane biometryczne nie będą zagrożone.
Kolejną zaletą MoC jest to, że uniemożliwia atakującemu złamanie fałszywego czujnika i wysłanie danych biometrycznych do systemu hosta. Nie uniemożliwia to jednak złośliwemu czujnikowi udawania legalnego, informując system, że użytkownik się uwierzytelnił. Nie może również zapobiec atakom polegającym na powtarzaniu, podczas których osoba atakująca przechwytuje prawidłową próbę logowania, a następnie „odtwarza” ją z powrotem do systemu hosta. Zaawansowane zabezpieczenia logowania w usłudze Windows Hello (ESS) wymagają użycia czujników MoC, ale już teraz widać wiele sposobów, w jakie kreatywni atakujący mogą próbować przedostać się do laptopa użytkownika. Właśnie dlatego Microsoft opracował SDCP, protokół bezpiecznej ochrony urządzeń.
SDCP ma następujące cele:
- Upewnij się, że urządzenie odcisków palców jest zaufane
- Upewnienie się, że urządzenie odcisków palców jest sprawne
- Ochrona danych wejściowych między urządzeniem odcisków palców a hostem
SDCP to doktryna mówiąca, że jeśli system akceptuje logowanie biometryczne, może to zrobić przy założeniu, że właściciel urządzenia był fizycznie obecny w momencie logowania. Funkcjonując w oparciu o łańcuch zaufania, ma na celu odpowiedzieć na następujące pytania dotyczące wykorzystywanego czujnika:
- Czy host może mieć pewność, że rozmawia z oryginalnym urządzeniem?
- Czy gospodarz może mieć pewność, że urządzenie nie zostało zhakowane ani zmodyfikowane?
- Czy dane pochodzące z urządzenia są chronione?
Właśnie dlatego SDCP tworzy kompleksowy kanał pomiędzy hostem a czujnikiem linii papilarnych. Wykorzystuje to funkcję Secure Boot, która zapewnia, że certyfikat specyficzny dla modelu i klucz prywatny służą jako łańcuch zaufania w celu sprawdzenia, czy cała komunikacja nie została zakłócona. Nadal można używać skompromitowanego oprogramowania sprzętowego, ale system będzie wiedział, że zostało naruszone i zmodyfikowane, a badacze zauważyli, że wszystkie testowane urządzenia podpisały również swoje oprogramowanie układowe, aby temu zapobiec manipulowanie.
Wszystko to brzmi dobrze, a SDCP jako koncepcja to świetna funkcja bezpieczeństwa, z której powinni korzystać producenci OEM. W rezultacie badacze byli zaskoczeni, gdy Lenovo ThinkPad T14s i Microsoft Surface Type Cover w ogóle nie korzystały z SDCP.
Cytując badaczy z siedziby Blackwing:
„Microsoft wykonał dobrą robotę, projektując SDCP, aby zapewnić bezpieczny kanał między hostem a urządzeniami biometrycznymi, ale niestety wydaje się, że producenci urządzeń błędnie rozumieją niektóre cele. Co więcej, SDCP obejmuje jedynie bardzo wąski zakres działania typowego urządzenia, podczas gdy większość urządzeń charakteryzuje się dużą powierzchnią ataku, która w ogóle nie jest objęta standardem SDCP.
W końcu odkryliśmy, że SDCP nie było nawet włączone na dwóch z trzech urządzeń, na które wybraliśmy cel”.
Atak na Dell, Lenovo i Surface
W przypadku Dell Inspiron 15 badacze odkryli, że można zarejestrować odcisk palca za pośrednictwem systemu Linux, co z kolei nie korzysta z SDCP. Choć okazuje się, że czujnik przechowuje dwie bazy danych odcisków palców zarówno dla systemu Linux, jak i Windows (co gwarantuje, że SDCP będzie używane tylko w systemie Windows, a użytkownik nie będzie mógł się zarejestrować Linux, aby zalogować się w systemie Windows) możliwe jest przechwycenie połączenia pomiędzy czujnikiem a hostem, aby poinformować czujnik, aby korzystał z bazy danych systemu Linux, pomimo uruchamiania komputera Okna.
Wszystko to było możliwe dzięki nieuwierzytelnionemu pakietowi, który sprawdzał uruchomiony system operacyjny i mógł zostać przejęty, aby zamiast tego wskazywał bazę danych Linuksa. Wymagało to użycia Raspberry Pi 4 do zarejestrowania użytkowników w bazie danych systemu Linux i ręcznego połączenia z czujnikiem, ale udało się zadziałało i pozwoliło badaczom zalogować się do systemu Windows przy użyciu dowolnego odcisku palca, zachowując jednocześnie SDCP nienaruszony.
Źródło: Siedziba Blackwing
W przypadku Lenovo ThinkPad T14s wymagało to inżynierii wstecznej niestandardowego stosu TLS zabezpieczającego komunikację między hostem a czujnikiem, całkowicie pomijając SDCP. Klucz użyty do zaszyfrowania tej komunikacji okazał się kombinacją produktu maszyny nazwę i numer seryjny oraz eksploatację po prostu z powodu „problemu inżynieryjnego”, jak ujęli to naukowcy To.
Gdy odcisk palca atakującego został wymuszony na liście ważnych identyfikatorów, możliwe było uruchomienie systemu Windows i użycie odcisku palca atakującego do zalogowania się do systemu.
Źródło: Siedziba Blackwing
Najgorszy i najbardziej rażący z trzech pochodzi z czujnika linii papilarnych firmy ELAN w Microsoft Surface Cover. Nie ma SDCP, komunikuje się przez USB w postaci zwykłego tekstu i nie podejmuje żadnych wysiłków w celu uwierzytelnienia użytkownika. Jedyna kontrola uwierzytelnienia, jaką przeprowadza, to sprawdzenie w systemie hosta, czy liczba odcisków palców zarejestrowanych na hoście odpowiada liczbie posiadanej przez czujnik. Nadal można to łatwo obejść, używając fałszywego czujnika, pytającego prawdziwego czujnika, ile zarejestrowanych jest odcisków palców.
Co możesz zrobić?
Jeśli posiadasz jeden z laptopów, których dotyczy problem, możesz mieć pewność, że taki atak jest bardzo mało prawdopodobny. Są to ataki wysoce wyspecjalizowane, wymagające dużego wysiłku ze strony atakującego, a także fizycznego dostępu do Twojego laptopa. Jeśli stanowi to problem, najlepszym rozwiązaniem jest przejście na bezpieczniejszy laptop lub przynajmniej całkowite wyłączenie funkcji Windows Hello.
Wyłączenie funkcji Windows Hello powinno wystarczyć, ponieważ będzie wymagało ręcznego logowania, a system w ogóle nie będzie oczekiwał zalogowania się za pomocą czujnika odcisków palców. Jeśli nadal nie ufasz swojemu laptopowi, to jednak kupno nowego może być dobrym pomysłem.