Trojany sprzętowe – realistyczny scenariusz ataku

Grandalf

Bardzo aktywny
Członek Załogi
Moderator
Dołączył
26 Maj 2015
Posty
19209
Reakcje/Polubienia
55907
Konie trojańskie mogą działać jako aplikacja w systemie operacyjnym. Mogą też być schowane na poziomie systemu lub nawet firmware’u wbudowanego w sprzęt. A co powiecie na konia trojańskiego na poziomie krzemu?

Modele ataku za pomocą użycia trojanów w układach scalonych są ściśle związane z łańcuchem dostawców i wykonawców w procesie produkcji krzemu. Obecnie w mikroelektronice stosuje się tzw. foundry model (z ang. model odlewni) polegający na oddzieleniu produkcji chipów (krzemu) od projektowania układów scalonych. Prace te wykonywane są przez osobne firmy bądź jednostki biznesowe wewnątrz tej samej organizacji. Model ten bierze nazwę od analogicznego procesu w przemyśle samochodowym (i ciężkim), gdzie projektowanie pojazdu (maszyny) jest wykonywane przez inne firmy i instytucje niż huty stali i odlewnie. Czasami jednak bardzo duży koncern samochodowy może pozwolić sobie na zakup huty. Analogią w świecie elektroniki będzie np. Intel, który zarówno projektuje, jak i produkuje układy scalone.

Model odlewni prowadzi do podziału firm produkujących elektronikę na takie, które mają możliwości produkcji krzemu (np. TSMC, Globalfoundires, Samsung), i takie, które wykonanie krzemu muszą zlecać podwykonawcom (np. Qualcomm, Broadcom, Nvidia, Apple, AMD). O ile te firmy, które nie produkują krzemu, są w większości dobrze rozpoznawalne, to te, które produkują, są w większości nieznane. Jest to analogiczne do sytuacji na rynku samochodów, gdzie rozpoznajemy marki pojazdów, ale nie huty stali bądź odlewnie, gdzie części zostały fizycznie wykonane.

W mikroelektronice prowadzi to do wyszczególnienia następujących podmiotów w procesie produkcyjnym:

  1. Dostawca IP (ang. 3PIP, 3rd party IP provider) – firma produkująca konkretne elementy układu, np. sterowniki pamięci, szyny danych, sieci na chipie (ang. network-on-chip), interfejsy etc. Analogią softwarową jest dostawca bibliotek np. silnika graficznego, API bądź kompresji.

  2. Integrator/deweloper systemu (ang. SoC designer) – firma integrująca elementy w jeden system, często posiada również własną produkcję komponentów IP.

  3. Silicon foundry (z ang. odlewnia krzemu) – firma odpowiedzialna za proces produkcji krzemu.
modele-ataku-580x336.jpg

Na tej bazie można wyszczególnić siedem modeli ataku, przyjmując jako kryterium zaufanie do poszczególnych podmiotów biorących udział w produkcji:

6jRHjtR.png

Opis poszczególnych modeli ataku:
  1. Niezaufany dostawca – w większości systemów komponenty pochodzą od różnych dostawców, np. interfejsy USB, interfejsy sieciowe bądź pamięci i procesory. Jeśli nie mamy kontroli nad ich procesem projektowania, to dostajemy produkt, którego zasad działania nie znamy (typu closed source). W konsekwencji wiemy, co robi, ale nie jak.

  2. Niezaufany integrator – wprowadzenie trojana na poziomie syntezy układów scalonych i / bądź poprzez integracje i łączenie elementów.

  3. Niezaufane foundry — większość firm produkujących elektronikę nie ma technologi wykonania krzemu tzn. zleca to innym firmom. Prowadzi to do utraty kontroli nad końcowym etapem produkcji, czyli trawieniem wafli krzemowych (zmiana masek, nieprawidłowo działające tranzystory). Więcej na ten temat przeczytacie
    Zaloguj lub Zarejestruj się aby zobaczyć!
    .

  4. Produkt dostępny komercyjnie – tutaj jako klient mamy dostęp tylko do gotowego produktu. Wprowadzenie trojana może nastąpić na każdym etapie produkcji a jego wykrycie jest kosztowne i trudne. Więcej na ten temat w mojej prezentacji z
    Zaloguj lub Zarejestruj się aby zobaczyć!
    .

  5. Niezaufane biuro projektowe – firma posiada kontrolę nad procesem produkcji krzemu, jednak modyfikacja może nastąpić w procesie projektowania komponentów bądź integracji systemu.

  6. Biuro projektowe bez produkcji krzemu – integrator nie ma kontroli nad częścią komponentów projektowanego systemu, jak i procesem produkcji krzemu. Ta sytuacja dotyczy większości firm działających na rynku.

  7. Niezaufany dostawca używający zaufanych komponentów – dostawca komponentów (np. bibliotek HDL) może stracić kontrolę nad własnym produktem na etapie integracji bądź produkcji krzemu. Sytuacja trudna, bo by udowodnić swoją niewinność musi ujawnić źródła produktu / komponentu.
Przykładowy atak
Opiszmy zatem zagrożenie na teoretycznym przykładzie ataku inspirowanego ostatnimi doniesieniami prasowymi, np. lukami w CClenearze czy płytami głównymi DELLa. Po pierwsze, ze względu na specyfikę musimy uwzględnić wysoki stopień wyrafinowania atakującego, rozumiany jako doświadczenie techniczne i posiadane zasoby. Załóżmy zatem, że plan operacji jest przygotowany przy współudziale/współpracy producenta podzespołów elektronicznych z Dalekiego Wschodu. Atakujący ma profesjonalny zespół inżynierów i zasoby finansowe pozwalające na rozłożenie całego przedsięwzięcia w czasie – nawet na kilka lat. Pierwszym krokiem będzie wprowadzenie zainfekowanego sprzętu na rynek. Duże firmy, np. Huawei, mogą od razu wbudować go w swój produkt – pierwszy etap. To jednak wiąże się z dużym ryzykiem utraty zaufania klientów w przypadku wykrycia. Dodatkowo raz zmodyfikowanych produktów nie sposób wycofać z rynku. Dlatego atakujący decyduje się na alternatywne rozwiązanie: wprowadzenie trojana w module dostarczonym przez podwykonawcę. Może się to odbyć przy jego współpracy na pierwszym bądź drugim etapie produkcji (logiczny design albo synteza obwodów elektrycznych), bądź też bez jego wiedzy lub zgody na drugim i trzecim etapie (tworzenie masek do produkcji krzemu, trawienie chipa). Przykładem takiego ataku jest historia związana z
Zaloguj lub Zarejestruj się aby zobaczyć!
która ostrzegała użytkowników, że w niektórych produktach (płytach głównych) występuje trojan sprzętowy najprawdopodobniej wprowadzony przez podwykonawcę. By dodatkowo zabezpieczyć się na wypadek wykrycia, atakujący projektuje funkcjonalność tak, aby można ją było uznać za błąd projektowy. Słynnym przykładem jest
Zaloguj lub Zarejestruj się aby zobaczyć!
, które według producenta miały służyć łataniu (patchowaniu) działającego procesora. Okazało się jednak, że umożliwiają atakującemu wprowadzenie tylnej furtki (backdoora) w procesie aktualizacji i ominięcie systemu ochrony sprzętowej rodząc wiele spekulacji i kontrowersji. Oczywiście AMD uznało sprawę za błąd projektowy.

Następnie gotowy produkt jest rozprowadzany na rynku. Atakujący na tym etapie nie aktywuje trojana, tylko czeka i pozwala użytkownikom cieszyć się podstawową funkcjonalnością układu. Po pewnym, czasie np. od pół roku do dwóch lat następuje nasycenie rynku. Produkt pojawia się w naturalny sposób (w wyniku zakupu, napraw gwarancyjnych, podmiany czy czasowej wymiany sprzętu) w wybranych obiektach np. bankach, fabrykach, instytucjach rządowych.

Wtedy można przystąpić do właściwego ataku. Istnieje wiele sposobów aktywacji i komunikacji z trojanami: przez tylne furtki w protokole, przez manipulacje protokołem, atak bocznym kanałem czy w końcu przez wprowadzenie błędu. Tylne furtki w protokole to jedna z popularniejszych metod, która polega na wbudowaniu sterowania trojanem w już istniejącą komunikację używając znaków wodnych bądź technik stegano tzn. wybrane i znane tylko atakującym fragmenty transmisji służą do wydawania poleceń złośliwemu układowi bądź odbioru danych.

Nasz atakujący wybiera zatem pierwszy sposób. Aktywacja i wyprowadzanie danych może nastąpić jako element procesu instalacji / aktualizacji sterowników. Połączenie z serwerami producenta odbywa się wtedy za wiedzą i zgodą użytkownika. Warto wziąć pod uwagę i bardziej wysublimowane formy ataku. Możliwe jest zakupienie praw do produktu firmy trzeciej niepowiązanej bezpośrednio z atakującym. Świetnym przykładem jest niedawny skandal z aplikacją CCleaner . Znany i lubiany program CCleaner przez prawie miesiąc ( od 15 sierpnia, do 12 września kiedy kolejna aktualizacja usunęła złośliwy kod) infekował miliony komputerów swoich użytkowników.
Zaloguj lub Zarejestruj się aby zobaczyć!
, którzy jako pierwsi publicznie opisali atak, opublikowali raport na temat celów ataku wymieniając
Zaloguj lub Zarejestruj się aby zobaczyć!
w Polsce.

Wykrycie ataku będącego kombinacją sprzętowo-programową byłoby jeszcze trudniejsze niż w przypadku CCleanera. Po pierwsze, jak opisaliśmy wcześniej, całość funkcjonalności służącej ominięciu zabezpieczeń systemu jest wykonana w sprzęcie. Jak pokazują
Zaloguj lub Zarejestruj się aby zobaczyć!
uzyskane przez badaczy zabezpieczeń sprzętowych, np. backdoorów w procesorach, warstwa oprogramowania jest praktycznie bezbronna. Większość mechanizmów zabezpieczających
Zaloguj lub Zarejestruj się aby zobaczyć!
opiera się na założeniu, że sprzęt, na którym pracują, zachowuje się według zasad ściśle określonych w specyfikacji (np. pierścienie ochrony pracy procesora).

W rezultacie atakujący musi jedynie zamaskować komunikację z trojanem dokonywaną w celu infiltracji albo eksfiltracji. Techniki kryptograficzne np. stegano czy znaki wodne dowodzą, że można wykonać to nie wzbudzając podejrzeń – nie znając protokołu komunikacyjnego jest niezwykle trudno wykryć przebieg i cel połączenia. W konsekwencji atakujący może odczytać interesujące go wartości i prowadzić sterowanie np. za pomocą danych diagnostycznych wysłanych za wiedzą i zgodą użytkownika.

Prawdziwe historie
Dobrym przykładem są chińskie firmy Huawei i ZTE, które po fali krytyki oskarżającej o stosowanie trojanów sprzętowych i softwarowych w produktach telekomunikacyjnych [
Zaloguj lub Zarejestruj się aby zobaczyć!
], [
Zaloguj lub Zarejestruj się aby zobaczyć!
], [
Zaloguj lub Zarejestruj się aby zobaczyć!
] znalazła się na celowniku Kongresu USA. W 2012 Kongres zażądał wykluczenia firmy z przetargów publicznych na terenie kraju [
Zaloguj lub Zarejestruj się aby zobaczyć!
], [
Zaloguj lub Zarejestruj się aby zobaczyć!
]. Wymowne nagłówki amerykańskiej prasy NYT „
Zaloguj lub Zarejestruj się aby zobaczyć!
” czy niemieckiej telewizji publicznej Arte „
Zaloguj lub Zarejestruj się aby zobaczyć!
” najlepiej oddają sytuację.
źródło:
Zaloguj lub Zarejestruj się aby zobaczyć!
 
Do góry