Linux zainstalowany na twardym dysku – firmware pomieści też malware

Linux zainstalowany na twardym dysku – firmware pomieści też malware19.03.2017 11:59

Linuksa można zainstalować dziś niemal wszędzie, widzieliśmyjuż ten system działający na PlayStation 4, Wielkim ZderzaczuHadronów i dojarkach do krów. Czy jednak można zainstalowaćLinuksa na twardym dysku? To podstępne pytanie znalazło ciekawąodpowiedź dzięki pracy Jeroena Domburga, autora blogaSpritesmods.com. Tak, to możliwe. Linux może działać też natwardym dysku, przy okazji ujawniając nowe, poważnecyberzagrożenie, o którym wcześniej nikt chyba nie myślał. Niejest to nowa praca, ale na tyle nas zaciekawiła, że postanowiliśmyją Wam przybliżyć.

Zastanówmy się, czym jest twardy dysk. Wirujące talerze, nadnimi głowica przeprowadzająca operacje zapisu i odczytu, od stronylogicznej to wszystko podzielone na sektory o rosnącej numeracji,tworzące logiczne bloki adresowe. Nad tym wszystkim abstrakcjasystemu plików. Sterowanie wydawałoby się jest proste. W środkujakiś mikrokontroler, który obsługuje ruch i zachowanie głowicy,rozpędzanie dysków, komunikację z komputerem,

Tak może i było kiedyś. Dzisiaj twarde dyski robią jednakznacznie więcej, oferują zarządzanie uszkodzonymi blokami,raportowanie SMART, niekiedy obsługują szyfrowanie, a i samwykorzystywany dziś interfejs SATA taki prosty nie jest. JeroenDomburg postanowił przyjrzeć się temu aspektowi elektronikisterującej twardego dysku bliżej. Czy można ją zhakować?

Jeszcze jak. Na płytce z czipami znajdziemy naprawdę niezłąmoc obliczeniową. W analizowanym przez badacza dysku Western Digitalznalazła się kość pamięci DRAM (czego można się spodziewać –to przecież cache twardego dysku, niekiedy całe 64 MB),mikrokontroler zajmujący się sterowaniem motoru dysku, kośćpamięci flash NAND z firmware, oraz co najciekawsze – sam układkontrolera. Co w nim jest?

Dłubanie w krzemie

Od producentów tego się nie dowiecie. Robione przez Marvella, STi kilka innych firm układy praktycznie pozbawione są jakiejkolwiekdokumentacji, nikt się raczej nie powinien nimi interesować,prawda? A jednak… ktoś się zainteresował i odkrył rozkładpinów złącza JTAG, dającego bezpośredni dostęp do kontrolera.To był obiecujący początek – w ten sposób można modyfikowaćpamięć, ustawiać breakpointy, resetować i restartować. Wystarczypłytka interfejsu do JTAG-a, a potem pozostaje tylko uruchomić nakomputerze OpenOCD – otwartydebugger, który radzi sobie z mnóstwem różnych czipów.

Podłączenie tego do kontrolera dysku twardego ujawniło jegociekawą zawartość. W środku są aż trzy rdzenie ARM, w tym dwamocne (Feroceons/arm9) i jeden taki sobie mikrokontrolerowy,Cortex-A9. Pierwszy mocny rdzeń obsługuje fizyczny odczyt i zapis ztalerzy dysku, drugi zaś interfejs SATA, cache oraz translacjęadresów LBA na CHS.

Potem już sporo dłubaniny cierpliwego hobbysty, który odtworzyłmapę pamięci kontrolera i zdisassemblował firmware, przy okazjiodkrywając coś zaskakującego. O ile w normalnych operacjachrdzenie ARM nie wpływają oczywiście na dane sczytywane izapisywane na dysk, to jednak można przechwycić operacje dyskowe,zanim trafią do interfejsu SATA – i zrobić z nimi wszystko.Pierwszy udany hack pokazał, że to całkowicie możliwe, ponadpisaniu własnego kodu sterującego drugim z rdzeni Feroceons, napoczątku każdego odczytywanego z dysku sektora pojawiała sięliczba podana do bufora, liczba której fizycznie na dysku nie było!

[1/2]
[2/2]

Kontrola i złośliwość

Co najważniejsze, te wszystkie zmiany można utrwalić. Dostaniesię do kości pamięci flash z firmware było łatwiejsze, niż dokontrolera. Kod co prawda był skompresowany nieznanym algorytmem,ale badacz dopisał po prostu swoje polecenia (tworząc poręcznenarzędzie do zapisu i odczytu), modyfikując adres, od któregofirmware było wywoływane. Coś takiego zresztą oferują częstoproducenci, tj. narzędzia do aktualizacji firmware urządzenia, sąteż ich opensource’owe odpowiedniki.

Na tym etapie nie było już trudno zrobić najbardziej złośliwąrzecz na świecie. Chwila fizycznego dostępu do komputera pozwalasflashować firmware dysku twardego. Nawet jeśli administratorodkryje, że ktoś uzyskał nieupoważniony dostęp i w imiębezpieczeństwa wyzeruje dysk, instalując na nim system na nowo, nicmu to nie pomoże. Zmodyfikowane firmware czeka na sygnał, a gdysygnał (np. określony ciąg danych zaszyty w pliku) zostaniezapisany na dysku, to nagle malware odczyta sobie zawartość pliku zhasłami (/etc/shadow) i na bieżąco zmodyfikuje jego zawartość,tak by pojawiły się tam wartości wcześniej przygotowane przeznapastnika. Potem tylko zdalny login i root już jest – w końcukontroler dopilnował, by hasło zostało porównane ze zmodyfikowanąwartością.

Linux ante portas

Proste malware jest proste, ale potencjał kontrolera twardegodysku jest znacznie większy. Domburg zdołał zainstalować na nimcałego Linuksa. Działa to w minimalnym stopniu, obsługuje jedynieport szeregowy, nie działa nic z przestrzeni użytkownika (kontrolernie ma jednostki zarządzania pamięcią, więc trzeba specjalnie muprzygotować taką przestrzeń) – ale sztuka jest: kernel i systeminicjalizacji zostały podzielone na paczki o rozmiarach jednegosektora – odczytanie pliku wypełnia cache dysku, podaniemagicznego ciągu znaków zmusza zmodyfikowane firmware doprzeszukania bufora, złączenia obrazu kernela i uruchomienia go.

To oczywiście tylko ciekawostka, ale badacz wskazał zarazeminne, bardziej praktyczne, obronne zastosowanie. Odpowiedniozmodyfikowane firmware twardego dysku mogłoby rozpoznawać sposóbdostępu do jego zawartości – czy jest raczej losowy, tak jak wwypadku normalnego działania systemu operacyjnego, czy teżsekwencyjny, jak robiłoby to narzędzie do klonowania dysków. Takidysk mógłby wszystkim narzędziom wykorzystywanym w informatyceśledczej zwracać same śmieci, a przy tym normalnie by pracował.

Zainteresowani Czytelnicy zapytają się pewnie teraz, a co zdyskami półprzewodnikowymi (SSD)? No cóż, tam dopiero jestmożliwa impreza: wiele takich pamięci masowych ma dziśczterordzeniowe kontrolery ARM, taktowane zegarami 800 MHz i więcej,z buforami 256 MB i więcej. Faktem jest, że ich producenci szyfrujądziś swoje firmware… ale wydaje się, że w rękachdoświadczonych, dysponujących dużymi zasobami napastników niejest to problem.

Historia ta zarazem pokazuje, jak bardzo konieczne jest dlaelementarnego bezpieczeństwa całodyskowe szyfrowanie, i to nie zapomocą funkcji kryptograficznych wbudowanych w kontroler, ale napoziomie systemu operacyjnego, za pomocą narzędzi takich jak np.VeraCrypt.Tylko w ten sposób możemy zabezpieczyć się przed malware tkwiącymw firmware.

Artykuł pana Domburga znajdziecie na bloguSpritesmods.com, gdzie opisano też hakowanie wielu innychciekawych urządzeń.

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.