Nasza strona używa cookies. Dowiedz się więcej o celu ich używania i zmianie ustawień w przeglądarce. Korzystając ze strony, wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki. Rozumiem

Jak chińscy hakerzy mogli zainfekować sprzęt Apple i Amazona

Adam Kukołowicz CTO / Bulldogjob
Wyjaśniamy, jak w dobie dzisiejszych technologii można wprowadzić sprzętowego backdoora i dokonać ataku hakerskiego na firmy takie jak Apple czy Amazon. Tłumaczymy możliwy scenariusz krok po kroku.
Jak chińscy hakerzy mogli zainfekować sprzęt Apple i Amazona

Tydzień temu Bloomberg Businessweek opublikował artykuł The Big Hack: How China Used a Tiny Chip to Infiltrate U.S. Companies, który wywołał niemałe zamieszanie. Anonimowe źródła, na które powołują się reporterzy, twierdzą, że największe amerykańskie firmy - takie jak Apple czy AWS - zostały zinfiltrowane przez hakerów za pomocą ataku sprzętowego.

Artykuł Businessweek: TL;DR

Magazyn donosi, że Chińska Armia zdołała umieścić w sprzęcie produkowanym przez Supermicro - największego na świecie producenta serwerowych płyt głównych - mikrochip wielkości zatemperowanej końcówki ołówka, który pozwalał atakującym na zdalny dostęp do zainfekowanych serwerów. Niezwykły w tej historii jest właśnie fakt dokonania ataku sprzętowego, który dla wielu jest dużym zaskoczeniem.

Jedną z głównych zaatakowanych firm był Elemental - firma produkująca sprzęt i oprogramowanie do procesowania i streamingu wideo. Rozwiązania Elementala były na tyle przełomowe, że korzystała z nich nawet amerykańska armia, np. do kodowania wideo z dronów. Firmę finalnie kupił Amazon. Drugim poszkodowanym miało być Apple, które używało płyt Supermicro w serwerowniach App Store oraz Siri. Ofiarami ataku miało być w sumie nawet 30 amerykańskich firm, a wszystko rozgrywało się w 2015 i 2016 roku.

Wszyscy zdecydowanie zaprzeczają tym doniesieniom, a Bloomberg podtrzymuje swoje stanowisko. Powołuje się przy tym na anonimowych informatorów z Apple i AWS, jak również pracowników agencji amerykańskich takich jak NSA. W tym tygodniu Apple zapewniło Kongres, że nie doszło do naruszenia ich łańcucha dostaw. Departament Bezpieczeństwa Wewnętrznego USA również zaprzecza, że doszło do opisanego incydentu (chociaż reporterzy Bloomberga sugerują, że to FBI prowadziło śledztwo w tej sprawie).

Nie wiemy w tym momencie, kto mówi prawdę. Mamy jednak pewne smaczki - jak to, że Apple zerwało współpracę z Supermicro w 2016 ze względu na bliżej nieokreślony wówczas incydent bezpieczeństwa. Podobnie postąpił Amazon. Bloomberg oczywiście i tutaj ma wytłumaczenie. Reporterzy twierdzą, że Apple wykryło złośliwe modyfikacje w firmwarze Supermicro. Obstają jednak przy tym, że w tym samym czasie firma wykryła również modyfikację sprzętu.

Jak Chińczycy mieli dokonać ataku?

Artykuł Businessweek nie jest zbyt dokładny jeżeli chodzi o kwestie techniczne:

A Chinese military unit designed and manufactured microchips as small as a sharpened pencil tip. Some of the chips were built to look like signal conditioning couplers, and they incorporated memory, networking capability, and sufficient processing power for an attack.

Wersja, by coś wielkości końcówki ołówka obsługiwało sieć i w ogóle miało swoją jednostkę obliczeniową, jest mało prawdopodobna. Szczerze mówiąc nie wiem, czy z obecną technologią stworzenie takiego układu byłoby możliwe. Z pewnością byłoby to znacznie droższe niż przy użyciu prostszych metod. Nieco więcej wiemy o celu ataku. Bloomberg twierdzi, że miał być to układ BMC.

BMC - czyli co?

BMC to skrót od Baseboard Management Controller. To w zasadzie mikrokomputer osadzony na płycie głównej. Może mieć swój własny procesor, pamięć, sieć i system operacyjny (zwykle jakiś mikro-Linux). Większość serwerowych płyt głównych wyprodukowanych przez ostatnie 20 lat ma taki układ. Nie spotyka się go w rozwiązaniach klasy PC czy konsumenckich (więc nie bójcie się, że Chińczycy włamią się wam na lapka przez BMC). Jego zadaniem jest monitorowanie i nadzorowanie pracy serwera. Co ciekawe, pracuje również, gdy serwer jest wyłączony - dopiero wyciągnięcie wtyczki zasilania go wyłącza.

BMC pracuje jako część IPMI (Intelligent Platform Management Interface) - czyli zbioru interfejsów do zdalnego zarządzania serwerami. Dzięki zaimplementowaniu tej specyfikacji administratorzy mają do dyspozycji masę przydatnych narzędzi do zarządzania dużymi instalacjami. Nawet w przypadku poważnej awarii systemu mogą spróbować zrestartować komputer czy nawet dowiedzieć się, co się stało, bez konieczności wizyty w serwerowni. IPMI pozwala na totalną kontrolę komputera. Specyfikacja standardu przewiduje przerwanie najwyższego rzędu - System Management Interruption (SMI) - w wyniku którego komputer przechodzi w System Management Mode, a obsługujący go program z BMC zyskuje pełny dostęp do pamięci, I/O oraz zrzutu stanu procesora. Standard nie daje wytycznych, jak powinna wyglądać implementacja. Przypuszczam więc, że całe zabezpieczenie przed dostępem do wszystkich danych na komputerze to odpowiednio ustawiona flaga w pamięci BMC.

Z czasem wiele osób zauważyło, że układ BMC to łakomy kąsek dla hakerów - z bardzo dużą powierzchnią ataku. Oprogramowanie BMC nie jest zbyt często aktualizowane, a układ ma dostęp do sieci. Może mieć swoje własne IP i zapewniać dostęp po TCP, UDP, SSH czy zdalnej konsoli KVM. Ze względu na to cały system powinien funkcjonować w osobnej sieci lokalnej, służącej tylko do zarządzania IPMI (co zaleca m.in. HP). Supermicro natomiast zaleca zaledwie odpowiednie skonfigurowanie firewalla. Cała odpowiedzialność w takim wypadku spoczywa na administratorze systemu, przez co zdarzało się w przeszłości, że urządzenia IPMI dostawały publiczne IP i były dostępne z zewnątrz. Sytuacja taka jest o tyle poważna, że niektórzy producenci ustawiali domyślne dane do logowania na… ADMIN/ADMIN (tak, zgadliście, tym producentem jest Supermicro). Są jeszcze inne ciekawostki jak to, że login i hasło do urządzenia IPMI muszą być przechowywane w plaintexcie w pojedynczym pliku o znanej lokalizacji.

Jak przejąć kontrolę nad BMC przy pomocy implantu?

BMC jako cel ataku wydaje się bardzo prawdopodobny. Głównie ze względu na stosunkowo małe skomplikowanie i olbrzymie korzyści z przejęcia nad nim kontroli.

Jedna z grafik w artykule Bloomberga przedstawia faktyczny produkt Supermicro (prawdopodobnie model B1DRi) z zaznaczonym implantem w miejscu pomiędzy BMC, a pamięcią flash, z której się bootuje. Między tymi dwoma układami poprowadzona jest linia SPI (Serial Peripheral Interface), która służy do przesyłu danych. Całość jest dobrze widoczna w poniższym tweecie:


Trzeba przyznać, że nie wiemy, na ile grafiki w artykule są zgodne z rzeczywistością. Zdjęcie rzekomego implantu przedstawia układ do kondycjonowania sygnału (w tym wypadku sprzęgacz) w wersji montowanej powierzchniowo - co jednak zgadza się z tekstem Bloomberga. Oczywiście możliwe jest, że hakerzy wybrali właśnie taką obudowę. Jednak nie jest ona szczególnie często spotykana na płytach głównych poza sekcjami radiowymi (np. WiFi). Poza tym, to najczęściej układy o rozmiarach 1mm x 0.5mm lub nieco większe - 1.6mm x 0.8mm, więc to naprawdę trudny element do wykorzystania.

Skupmy się jednak na moment na tym, jak atak mógł zostać przeprowadzony. Większość hipotez mówi o zastąpieniu części lub całości firmware’u przez dane z implantu. Wtedy sam implant byłby szeregową pamięcią flash. W teorii taka podmiana nie powinna się w ogóle udać, bo BMC nie powinno pozwolić na załadowanie niepodpisanego programu. Oznaczałoby to, że atakujący mieli możliwość podpisania software’u. W praktyce nie dalej jak miesiąc temu Supermicro naprawiło bug, który pozwalał na zainstalowanie i odpalenie na BMC niepodpisanego firmware’u. Podobny problem raptem parę dni temu potwierdził Dell na serwerach PowerEdge - 13 generacji i wcześniejszych.  🤦

Niektórzy sugerują użycie pinu testowego/debugowego i wysłanie za jego pomocą jakiejś komendy. Fakt jest jednak taki, że w momencie, gdy ktoś uzyska dostęp na poziomie SPI do jednostki BMC, to ma naprawdę sporo wektorów ataku. W końcu SPI jest traktowane jako zaufana szyna danych.

Nie ma mowy o komunikacji sieciowej z poziomu implantu czy wykonywaniu na nim programów, jak sugerowali dziennikarze Businessweek. Tę część załatwia infrastruktura BMC, która jest dostępna dla zmodyfikowanego programu.

Możliwy, ale karkołomny atak

Atak przy pomocy takiego urządzenia jest jak najbardziej możliwy. Ale taki plan może nie wypalić na każdym z etapów. Aby całe przedsięwzięcie się udało, każdy krok musiałby powieść się perfekcyjnie:

  1. Opracowanie i zainstalowanie chipu (zakładam, że to względnie proste na terenie, który się kontroluje)
  2. Przejście towaru przez pełen łańcuch dostaw
  3. Pozytywne przejście inspekcji u klienta
  4. Udana próba komunikacji z centralą
  5. Długofalowe ukrycie ruchu do centrali


Tu mam pytanie - czemu nie zrobić zwyczajnej podmiany software’u zapisanego na fabrycznej pamięci flash? 🤔 Czyżby przy odbiorze security team sprawdzał sumy kontrolne firmware’u, których nie miał w zwyczaju sprawdzać BMC? Być może, gdy serwer trafia do infrastruktury krytycznej, tego rodzaju testy są przeprowadzane. W przeciwnym wypadku szczerze wątpię, by ktokolwiek fatygował się, by to sprawdzać.

Krytycznym momentem będzie też próba komunikacji z centralą. O ile sieć będzie odpowiednio skonfigurowana, to może być końcem misternego planu. Bez komunikacji wirus tego typu może okazać się mało wartościowy. Można oczywiście domniemywać, że implant miał w sobie program zdolny atakować system operacyjny hosta lub wykorzystywać różne podatności instalacji serwerowych - co mogłoby pomóc wydostać się nawet z odrębnej sieci używanej tylko do zarządzania.

Czy taki atak opłaca się bardziej niż kierowany atak sieciowy, albo opracowanie wirusa/robaka/trojana/spyware’u?

Z pewnością wersja Bloomberga to coś o wiele bardziej spektakularnego, bo historia jest jak ze szpiegowskiego filmu. Ataku sprzętowego raczej nikt się nie spodziewał - co mogłoby przemawiać na rzecz takiego rozwiązania. Mimo to, na tym etapie nie widzę jasnej korzyści z dokładania implantu na płycie głównej. Zaraz obok zamontowana jest fabryczna pamięć flash i kilka innych układów, w których można ukryć złośliwy program.

Jeżeli chodzi o rewelacje Bloomberga, sporo wątpliwości dokłada jedyna osoba wymieniona w artykule z nazwiska  - Joe Fitzpatrick. To specjalista od hardware’u, który sam hobbystycznie wytwarzał implanty, by demonstrować możliwości takich urządzeń. Wypowiedział się na temat artykułu w podcaście Risky Business. Twierdzi, że znalazło się tam zaskakująco dużo z tego, co tłumaczył autorom w luźnych konwersacjach, najczęściej w kontekście czystej teorii. Przyznaje, że użycie implantu jest z jego punktu widzenia atakiem najcięższym i najmniej wydajnym, jaki można przeprowadzić.

Niezależnie od tego, eksperci od bezpieczeństwa zaczną się teraz dokładniej przyglądać hardware'owi i systemowi BMC/IPMI. To chyba najwyższa pora - szczególnie, że to nie koniec doniesień. Już po zakończeniu pracy nad tym artykułem Bloomberg napisał o złośliwych implantach we wtyczkach Ethernet, które miały zostać wykryte w serwerowni jednego z amerykańskich telekomów. Tu znowu pojawiają się pewne wątpliwości, ale zbadam, jakby takie rozwiązanie miało technicznie działać - stay tuned!

Zobacz więcej na Bulldogjob

Masz coś do powiedzenia?

Podziel się tym z 80 tysiącami naszych czytelników

Dowiedz się więcej
Rocket dog