Bezzębne Intel Management Engine: ME_cleaner uwalnia komputer od mechanizmu zdalnej kontroli

Bezzębne Intel Management Engine: ME_cleaner uwalnia komputer od mechanizmu zdalnej kontroli14.01.2017 21:45

Od wprowadzenia na rynek ponad 10 lat temu I/O Controller Huba 7,silnik Intel Management Engine (ME), wbudowany w płyty główne dlaprocesorów zgodnych z technologiami Intel vPro, budzi niepokójobrońców prywatności. Wykorzystując koprocesor z bezpośrednimdostępem do interfejsu sieciowego, pozwalaon na sprzętowe zarządzanie komputerem, aktualizację firmware,śledzenie ruchu sieciowego, czytanie plików na dysku, podglądaniezawartości ekranu – a wszystko to poza systemem operacyjnym,sterowane niewolnym, niekontrolowanym przez użytkownika binarnymblobem Intela. Nie wszystko jednak stracone: na GitHubie zadebiutowałpożyteczny projekt, dzięki któremu będzie można zneutralizowaćIntel ME.

W starszych wersjach Management Engine, sprzed 2009 roku, możnabyło mechanizm ten wyłączyć, ustawiając kilka bitów w pamięciflash kontrolera ICH. Następnie firmware sterujące ME mogło zostaćcałkowicie wymazane – i coś takiego na starszych systemach robiąwolne zamienniki, takie jak libreboot. W kolejnych wersjachwprowadzono jednak mechanizm odpowiedzialny za inicjalizację sprzętui zarządzanie energią. Wyszukuje on podpisanego manifestu firmwareME, a jeśli go nie znajdzie, to wyłącza komputer po 30 minutach.

Zrobić z tym cokolwiek wydawało się praktycznie niemożliwe –weryfikacja podpisu sprawiała, że jedyną siłą we wszechświecie,która mogłaby zmienić firmware ME był Intel. Ostatnim gwożdziemdo trumny był wprowadzony w 2013 roku wraz z procesorami Haswellmechanizm Intel Boot Guard. Pozwalał on producentom na wygenerowaniepary kryptograficznych kluczy, z których klucz publiczny byłwgrywany na CPU. Procesor sprawdzał następnie, czy firmwarerozruchowe jest podpisane kluczem producenta, i jeśli nie było, toodmawiał dalszej pracy. Właściwie jedynym sposobem na uniknięcieBoot Guarda było samodzielne zmontowanie sobie peceta.

Na pomoc ze strony Intela w tej sprawie nie było co liczyć.Chipzilla przedstawiała przecież swój mechanizm zdalnegozarządzania jako zaletę, a nieogromne zagrożenie, czemu miałaby je neutralizować? Otwarcie kodufirmware ME nie wchodziło w grę, pełno tu było własnościowychtechnologii firm trzecich, licencjonowanych jedynie przez Intela.Miliardy użytkowników platform Intela były skazane na mogącegodowolnie szpiegować ich binarnego bloba. Na tym tle starania Rosji iChin mające na celu stworzenie własnej platformy sprzętowej stająsię całkiem zrozumiałe.

Hakerski zestaw z komputerkiem BeagleBone, który posłużył do badań nad Intel Management Engine
Hakerski zestaw z komputerkiem BeagleBone, który posłużył do badań nad Intel Management Engine

Zespół hakerów z grupy h4denedzer0 w zeszłym rokuzaprezentowałjednak coś, co było światełkiem w tunelu – metodęneutralizacji Management Engine na platformach Sandy Bridge i Ivy.Wykorzystując modularną architekturę ME, poszukiwano sposobówzablokowania ładowania modułów bez alarmowania intelowegowyłącznika. Przełom nastąpił we wrześniu, kiedy to Todkryto, żeskasowanie pierwszej 4-kilobajtowej strony firmware ME nie wyłączyłojego Thinkpada x230, bez problemu mógł na nim uruchomić Linuksa,hiperwizor Xen i na nim Qubes OS-a. Potem udało się ustalić, żemożna usunąć wszystkie partycje firmware ME za wyjątkiem tej,która zawiera kernel czasu rzeczywistego – i Thinkpad pozostawałfunkcjonalny.

Tabela kompatybilności ME_cleanera – robicie to wszystko na własną odpowiedzialność
Tabela kompatybilności ME_cleanera – robicie to wszystko na własną odpowiedzialność

W listopadzie włoscy badacze odkryli zaś, że platforma SandyBridge jest w stanie przyjąć tak spreparowane firmware Intel MEzawierające tylko kernel, nawet bez poprawnej tabeli partycji.Finalnym owocem tego odkrycia jest napisany w Pythonie skryptME_Cleaner. Potrafi on dosłownie „wyrwać zęby” intelowejManagement Engine, praktycznie uniemożliwiając jej interakcje zsystemem. Co najważniejsze, w swojej obecnej postaci działa nietylko z opensource’owym firmware, takim jak Libreboot/Coreboot, alemożna go zastosować też na fabrycznych firmware z urządzeniami,które nie mają Boot Guarda.

ME_Cleaner został z powodzeniem przetestowany na wielu różnychpłytach głównych dla platform od starego Nehalema po nowe Skylake.Z tabelki obrazująca jego skuteczność można sądzić, że już naplatformie Sandy Bridge można całkowicie usunąć wszystkiepartycje oraz wszystkie skompresowane moduły, pozostawiając jedynieniezbędny do niewyłączenia komputera kernel Intel ManagementEngine.

Wszystkie niezbędnej informacje na ten temat, jak i sam skrypt,znajdziecie na stronieprojektu na GitHubie. Skrypt działa automatycznie, skanująctablicę partycji firmware, usuwając zbędne wpisy, flagi, moduły ipoprawiając sumę kontrolną. Po jego użyciu należy komputerfizycznie wyłączyć – i włączyć, z nadzieją, że wszystkopójdzie dobrze. Autor newsa zaryzykował i zneutralizował dziśManagement Engine 9.0 na swoim komputerze (platforma Haswell). Poszłowszystko dobrze, linuksowy kernel załadował się bez żadnychbłędów – niniejsze słowa pisane są już z uwolnionej odbinarnego bloba Intela maszyny. Pamiętajcie jednak, że wszystkietakie operacje na swoich komputerach robicie na własnąodpowiedzialność.

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.