Co kryje się za tajemniczym chińskim trojanem sprzętowym? Jak sprawdzić, czy mój komputer, moja firma czy instytucja są zagrożone takim atakiem? Czy raport Bloomberga to tylko blef bez technicznej treści? Odpowiedzi na te pytania w artykule.
W przedostatnim akapicie tekstu znajdziecie wyjaśnienie konkretnych kroków, które trzeba podjąć, by przeanalizować zawartość własnego komputera.
Jeszcze rok temu trojany sprzętowe pozostawały w sferze spekulacji i akademickich dyskusji, a zagrożenie traktowane było raczej jako kolejna teoria spiskowa niż realne niebezpieczeństwo. Rok 2018 być może okaże się w tej kwestii przełomowym. Jeszcze rynek i użytkownicy nie ochłonęli po lukach Spectre i Meltdown w procesorach Intela, a już Bloomberg donosi o nowej aferze, przy której poprzednie kłopoty Intela wydają się tylko chwilową i nic nie znaczącą zadyszką tej firmy.
O co chodzi
Dokładny opis raportu był już zamieszczony na naszym serwisie, jednak dla tych, którzy go jeszcze nie czytali, poniżej skrót najważniejszych informacji. Według amerykańskiego magazynu biznesowego Bloomberg Businessweek firmy Apple i Amazon już w 2015 roku odkryły maleńkie chipy szpiegujące na swoich płytach głównych w serwerach, głównie dla usług “w chmurze”. Chipy te zostały wprowadzone bezpośrednio do płyt w chińskich fabrykach amerykańsko-tajwańskiego producenta Supermicro i ich celem – według informatorów Bloomberga – było stworzenie backdoorów w serwerach. W raporcie stwierdzono, że zainfekowane serwery zostały sprzedane amerykańskim agencjom rządowym (m.in. CIA i Departamentowi Obrony) i wykonawcom oraz co najmniej 30 klientom komercyjnym, w tym Apple’owi i Amazonowi. Według doniesień złośliwe układy scalone zostały odkryte przez Amazona w trakcie inwentaryzacji Elemental Technologies – klienta Supermicro, którego Amazon kupił w 2015 roku. Kontrowersje wiążą się z brakiem jednoznacznych dowodów (np. analizy złośliwego układu czy adresów IP bądź protokołu sterującego). Amerykańskie agencje wywiadowcze wciąż badają tę sprawę. Apple, Amazon, Supermicro i zaangażowane rządy kategorycznie zaprzeczają wszystkiemu, ale Bloomberg jest bardzo pewny swojej racji i powołuje się na 17 anonimowych źródeł w rządzie USA i producentów sprzętu.
Czym są implanty sprzętowe?
Media szybko “ochrzciły” ten typ ataku mianem implantu sprzętowego. Dlaczego? Dodanie trojana (backdoora) sprzętowego może odbyć się na każdym etapie procesu wytwarzania chipu. Z raportu Bloomberga wynika, że mamy do czynienia ze scenariuszem, w którym zaufany dostawca (tajwańsko-amerykańska firma Supermicro) dostarcza produkt, a integrator/deweloper systemu (ang. SoC designer) wprowadza trojana w procesie integracji komponentów na płycie. W miarę prostym (jednak nie do końca precyzyjnym) porównaniem software’owym byłby atak za pomocą wstrzyknięcia kodu (ang. code injection) w procesie linkowania bibliotek podczas kompilacji. W tym kontekście firma Supermicro tworzy płytę główną z komponentów IP innych dostawców i ktoś modyfikuje (dodaje) w procesie produkcyjnym dodatkowy układ scalony. W rezultacie zostaje wprowadzone ciało obce i stąd nazwa “implant”. Warto zauważyć, że nie jest jasne, czy chodzi o komponent IP od dostawcy czy końcowy produkt (całą płytę główną). Dlatego nawet zidentyfikowanie fabryki bądź (fizycznie) podwykonawcy i miejsca, gdzie układ został dodany, będzie nastręczało wielu problemów . W kontynuacji artykułu opublikowanej 9 października cytowany przez Bloomberga ekspert twierdzi że:
“Supermicro jest ofiarą tak jak wszyscy inni i niepokój powinien budzić fakt, że w łańcuchu dostaw w Chinach istnieje niezliczona ilość punktów, w których manipulacje mogą być wprowadzane, a wywnioskowanie ich położenia może być w wielu przypadkach niemożliwe.”
Jest to skutkiem wąskich specjalizacji podwykonawców i optymalizacji kosztów produkcji kosztem bezpieczeństwa fizycznego produktu – klient traci fizyczną kontrolę nad procesem produkcji.
Nawet bez dokładnej analizy chipu, o którym pisze Bloomberg, warto zwrócić uwagę na bardzo wysoki koszt takiego ataku w ujęciu teoretycznym. Implementacja trojanów sprzętowych to zadanie wymagające przede wszystkim zdolności produkcyjnych w zakresie wytwarzania układów scalonych, tzn. odpowiednio przeszkolonego personelu i narzędzi, a więc generujące wysokie koszty. W tym kontekście wprowadzenie układu scalonego na płyty główne to tylko ostatni etap implementacji takiego układu. Wcześniej niezbędna była analiza wsteczna całej płyty, by ustalić zakres pracy układu, a także jego umiejscowienie. Biorąc pod uwagę bardzo małe wymiary fizyczne złośliwego układu, nie większy niż rezystor mieszczący się na końcówce ołówka, sam proces projektowania i produkcji takiego układu scalonego też musiał być skomplikowany. Tutaj są możliwe dwa warianty. W pierwszym chip mimo małych rozmiarów jest dość skomplikowany, może np. obsługiwać cały stos protokołu komunikacyjnego. Takie podejście ułatwiałoby znacznie atak, jednak wymagałoby produkcji układu w niskim procesie litograficznym – czyli wysokie koszty. Alternatywą byłby prosty układ zoptymalizowany do konkretnego celu, pobierania danych z konkretnego protokołu. Takie podejście ogranicza znacznie elastyczność ataku. Ponadto pojawia się problem eksfiltracji danych – w jaki sposób taki prosty układ komunikuje się ze światem zewnętrznym. Podejście rozproszone, w którym trojan składa się z kilku niezależnych układów (np. jeden na płycie głównej, inny w karcie sieciowej) byłoby możliwym rozwiązaniem. Taki scenariusz oznacza jednak, że droga do analizy i poznania całości ataku jest jeszcze daleka. Trzeba bowiem przeanalizować wszystkie komponenty IP od wszystkich dostawców pod kątem nieuprawnionych modyfikacji, nie wspominając o kwestiach prawnych i patentowych.
Kontrowersje techniczne
Grafika poniżej przedstawia wskazany przez Bloomberga fragment płyty, w którym został umiejscowiony implant. Układ ASPEED (1) jest kontrolerem głównym płyty (BMC, z ang. Board Management Controller). BMC to dodatkowy procesor w systemie, który ma za zadanie „zarządzać” interfejsem pomiędzy oprogramowaniem kontrolującym serwer a sprzętem platformy. BMC zbiera informacje z różnych czujników wbudowanych w system komputerowy na temat takich parametrów jak temperatura, prędkość wentylatora chłodzącego, stan zasilania, stan systemu operacyjnego (OS) itp. BMC może wysyłać alerty do administratora systemu przez sieć, jeśli którykolwiek z parametrów nie mieści się w ustawionych wcześniej granicach, wskazując potencjalną awarię systemu.
Znając praktyki producentów sprzętów, możemy założyć, że układ ASPEED to stary mikrokontroler z przestarzałym jądrem Linuksa, które ma udokumentowane luki. Oprogramowanie (firmware) jest przechowywane na prostym 8- lub 16-pinowym scalaku. W tym konkretnym przypadku będzie to układ 2 lub 3 ze wskazaniem na 3. Chip z numerem 2 to najprawdopodobniej BIOS. Tutaj można dodać tzw. pakiet startowy (ang. bootkit), który ładuje kod podczas uruchamiania platformy sprzętowej i konfiguruje go tak, by działał po uruchomieniu systemu operacyjnego. Miejsce numer 4 to pusty slot na dodatkowy układ. Tutaj jego położenie w bliskości 2 wskazuje na możliwość użycia tańszego 8-pinowego BIOS-u, choć jest wiele innych wariantów. Wreszcie 5 to piny testowe, które mogą być użyte albo do debugowania do kontrolera BMC, albo do monitorowania interfejsu pomiędzy BMC i głównym CPU, albo do obu tych czynności.
W tym kontekście optymalnym celem byłoby zainfekowanie BMC, który nie dość, że umożliwia dzięki swej złożoności przeniesienie operacji na wyższy poziom abstrakcji, to jeszcze posiada możliwość wysyłania danych diagnostycznych na zewnątrz. Tutaj pojawia się jednak pytanie: dlaczego dokonywać ataku za pomocą układu scalonego? Modyfikacja oprogramowania większości BMC jest bardzo prosta (jak wspominałem, to często stary kernel Linuksa), a dobrze zaimplementowany atak w firmware może być tak samo niewykrywalny i nie tak kosztowny w projektowaniu i implementacji jak chip. Może jednak Supermicro albo ich klienci przeprowadzają dokładny proces weryfikacji firmware’u?
Wychodząc poza modyfikacje firmware’u, drugim dogodnym celem ataku byłaby szyna systemowa I2C/SMBUS. Prostota protokołu magistrali I2C powoduje, że mikrokontrolery obsługujące I2C kosztują grosze i są dostępne w różnych obudowach. Przy okazji warto wspomnieć, że niekoniecznie trzeba użyć obudowy dwurzędowej (DIP, SDIP, DPAK). Przy odrobinie wysiłku można wykorzystać inne komponenty w tym samym celu. Szczególnie interesujące wydają się kondensatory, które nie dość, że są rozsiane po całej płycie (co ułatwia pozycjonowanie trojana), to jeszcze mają duże metalowe cylindry, w których mieszczą się swobodnie inne komponenty. W takim scenariuszu kontrola wizualna i rentgenowska byłaby niewystarczająca do wykrycia zagrożenia.
Czy realne jest wyprodukowanie tak małego układu? Wielu komentatorów całej sprawy opisuje na bazie raportu Bloomberga w pełni sprawny samodzielny “komputer” o wielkości główki ołówka. Taki układ jest raczej nierealny i opisy tego typu mogą być kierowane głównie do “nietechnicznych” czytelników. Jednak układy scalone są coraz mniejsze, a ich możliwości produkcyjne w Chinach, również w ceramicznych (tzw. „porcelanowych”) obudowach, coraz tańsze i przez to dostępne dla każdego – nie tylko dla klientów instytucjonalnych. Ceramiczne obudowy układów scalonych wyglądają bardzo zbliżenie do tańszych z plastiku (epoxy) i występują tak w wersjach dwurzędowych jak i montowanych powierzchniowo. Współcześnie są stosowane do lepszego zabezpieczenia układu, np. przed promieniowaniem, i zmniejszenia wagi i rozmiarów elementu. Dlatego atakujący mógłby zastosować ceramikę by lepiej ukryć komponent a także utrudnić jego wykrycie i ewentualnie wymusić kosztowną inspekcję fizyczną. Podsumowując, układ wielkości główki ołówka podsłuchujący cały system i wysyłający dane jest raczej nierealny. Jednak układ o tej samej wielkości lewarujący mechanizmy bezpieczeństwa systemu i ułatwiający dostęp jest jak najbardziej w zasięgu możliwości wielu średnich firm, nie mówiąc o klientach państwowych i koncernach.
Możliwe scenariusze ataku
Jest wiele możliwości modyfikacji płyty głównej wymienionej w raporcie Bloomberga. Poniżej prezentacja najczęściej dyskutowanych wektorów ataku, oparta na zestawieniu Joe FitzPatricka.
- Modyfikacja pamięci flash BMC (układ ASPEED) celem dodania backdoora będącego dostępnym po uruchomieniu systemu operacyjnego (np. dodatkowy kod wykonany w odpowiednim momencie przez CPU).
- Podobna modyfikacja BIOS-u (backdoor w BIOS-ie).
- Dodanie dodatkowego kontrolera monitorującego/przechwytującego dane z sensorów i modyfikującego ich zawartość tak, by wpłynąć na działanie BMC i/lub wykonać złośliwy kod w innej części systemu.
- Wstrzyknięcie kodu do kontrolera BMC za pomocą złączy testowych.
Wielu komentatorów, np. Trammell Hudson, Hector Martin, wskazuje miejsce numer 4 z grafiki jako dogodne do dokonania ostatniego ataku. Nie tylko można wykorzystać wolne złącza (pady), ale by implant wyglądał bardziej dyskretnie, można poprowadź cienkie przewody do punktów testowych. Wyglądałoby to bardziej na „przeróbki fabryczne” w procesie poprodukcyjnym (czyli potocznie – łatanie na szybko bugów) niż „złośliwy implant”. Alternatywą byłoby dolutowanie układu wprost pod/obok pinów kontrolera, miejsce numer 5.
Czy jest się czego bać? Czy mam trojana?
Te pytania przychodzą na myśl wielu z nas po zapoznaniu się z materiałem Bloomberga. Mimo że sytuacja wydaje się groźna, prawie na pewno nie jest tak źle, jak przedstawiają to żądne sensacji media. Poniżej kilka uwag, o których warto pamiętać, czytając kolejne doniesienia w sprawie.
Prawdopodobieństwo, że to akurat my jako prywatni użytkownicy w Polsce jesteśmy celem ataku, jest dość nikłe. Tak jak opisywałem na początku tego artykułu, ataki tego typu nie dość, że drogie, to są obarczone bardzo dużym ryzykiem prawnym i utraty zaufania klientów w przypadku wykrycia. Dodatkowo raz zmodyfikowanych produktów nie sposób wycofać z rynku. Dlatego amortyzacja takiego wysiłku instytucjonalnego niezbędnego do przeprowadzenia operacji może być dokonana jedynie poprzez atak na cel o odpowiednim statusie, np. dane dużych korporacji, banków czy systemy wojskowe. Nawet jeśli wszystkie przesłanki okażą się prawdziwe, a niebezpieczny układ jest zainstalowany na każdej płycie głównej od danego producenta, to prawdopodobieństwo, że to my jesteśmy jego celem, jest małe.
W przypadku osób prywatnych (za wyjątkiem osób publicznych bądź pracujących dla wymienionych wcześniej instytucji i organizacji) ataki za pomocą oprogramowania są zazwyczaj tak samo skuteczne, a ich koszty (w tym czas potrzebny na przeprowadzenie) nieporównywalnie niższe.
Co ma robić moja firma czy instytucja?
Po pierwsze zachować spokój i cierpliwie poczekać na wyniki analizy. Wciąż nie ma jednoznacznych dowodów na nielegalne zastosowanie układu. Nieznane są ani dokładne cele infiltracji, ani sposoby eksfiltracji danych, np. sygnatury, adresy IP, maski, komendy zdalne. Raport Bloomberga przedstawia szereg poszlak, które rzeczywiście mogą wskazywać na anomalie w projektowaniu i wykonaniu tych płyt głównych, jednak nie przedstawia konkretnych dowodów, które pozwoliłyby na jednoznaczną konkluzję.
Bez posiadania tych danych niezbędna jest analiza całego układu, która jest niezwykle kosztowna i skomplikowana. Pierwszą barierą są kwestie techniczne, zaczynając od dużej liczby komponentów do przeanalizowania. Współcześnie produkowane płyty główne do zastosowań serwerowych mają co najmniej kilka (10^1) komponentów programowalnych, które z reguły są bardzo złożone, np. sterownik bądź mikrokontroler, kilkanaście (10^2) aktywnych komponentów logicznych i kilkaset (10^3) komponentów pasywnych. Każdy z nich wymaga analizy. Trzeba zatem zrobić pełną inwentaryzację wszystkich komponentów. Następnie wynik inwentaryzacji należy porównać ze szczegółową dokumentacją. Oczywiście taka szczegółowa dokumentacja może być “niewygodna” dla producenta, bo ujawnia w sposób bezpośredni bądź pośredni sposób wykonania produktu. W tym kontekście duży odbiorca ma łatwiej, bo może wymuszać (lewarować) pewne zachowania, będąc klientem ilościowym bądź instytucjonalnym, np. specjalny organ służb bądź instytut nieposiadający własnej produkcji.
Jeśli analiza wstępna wskazuje na anomalie (np. nieznane moduły, dodatki lub przewody, interfejsy naprawcze), trzeba zmiany skonsultować z dostawcą bądź poddać je wyczerpującej analizie fizycznej. O takiej analizie pisałem już w poprzednim wpisie. Najpierw przeprowadza się fuzzing komponentu (o ile to możliwe) w działającym systemie (tzw. “na żywo”). Następnie część się wyjmuje w celu fuzzingu w pełnym spektrum sygnałowym (wejść i wyjść), a także by pobrać i przeanalizować oprogramowanie (firmware), jeśli komponent takie posiada. Wyniki porównuje się do tych ze znanej i sprawnej (identycznej) części, tzw. złoty wzorzec. Oczywiście, jeśli taka część jest dostępna.
Następnie bada się promieniowaniem rentgenowskim cały układ. W idealnym wypadku celem badania jest zidentyfikowanie wszystkich różnic pomiędzy płytą a schematami układu (o ile producent nam je dostarczył). Celem jest zidentyfikowanie wszystkich komponentów IP, które nie wyglądają dokładnie tak, jak powinny, i przeprowadzanie dokładnej analizy na każdym z nich. Najłatwiej zacząć od komponentów na szynach (magistralach) szeregowych o niskiej prędkości, a następnie komponentów nieoznakowanych, by potem zająć się większymi i aktywnymi układami. Następnie musimy przejść całą drogę w dół do elementów pasywnych.
Narzędzia do rewersu i analizy oprogramowania są stosunkowo łatwo dostępne, a niezbędne prace można przeprowadzić na zwykłej stacji roboczej. Zazwyczaj wymaga disassemblera wspieranego przez narzędzia do wstecznej analizy kodu, np. IDAPro czy radare. W przypadku układów scalonych jest to proces zdecydowanie bardziej skomplikowany. Po pierwsze obudowy elementów trzeba usunąć, by móc fizycznie zobaczyć układ. Proste metody mechaniczne, np. szlifowanie, mogą uszkodzić chip. Nawet mała rysa w przypadku technologii wykonania poniżej 90nm może zdecydowanie utrudnić bądź wręcz uniemożliwić analizę wsteczną. W profesjonalnych laboratoriach stosuje się zatem silnie żrące kwasy rozpuszczające wszystko oprócz krzemu (warto zauważyć, że chip powinien być wciąż sprawny, by móc obserwować jego pracę w czasie rzeczywistym – inaczej sprawdzenie zawartości pamięci, rejestrów i wykonania równoległego jest niemożliwe). Ich użycie wymaga jednak odpowiedniej infrastruktury, np. odpowiednich nawiewów, narzędzi (pipety, odczynniki), a co ważniejsze odpowiednio przeszkolonego i doświadczonego personelu. Fizyczny dostęp do powierzchni układu to dopiero pierwszy krok. W następnym, do wykonania analizy, niezbędne są silne mikroskopy. Już sama wielkość układu jest barierą nie do przeskoczenia dla wielu hobbystów ze względu na wymagane powiększenie i jakość obrazu. Dodatkowo wiele układów produkowanych jest w technologii 3D, tzw. wielowarstwowej. W tym wypadku trzeba przekroić bądź wypalić warstwę, by zobaczyć ukryte fragmenty, do czego niezbędne są precyzyjne lasery.
Następną kwestią utrudniającą inżynierię wsteczną jest współbieżność pracy większości obwodów, tzn. elementy procesora, takie jak stopnie potoku czy rejestry, pracują równolegle ze sobą w czasie. Z teorii programowania wiadomo, że debug aplikacji wielowątkowej jest czasochłonny i kosztowny. Proces ten wymaga nie tylko znajomości wartości sygnałów stymulujących pracę układu, ale także ich przebiegu w czasie i współzależności. Te same problemy w sposób bezpośredni odnoszą się do obwodów elektronicznych. Dodatkowo w przypadku większości układów na końcowy design układu elektronicznego mają też wpływ czynniki ekonomiczne, takie jak cena pamięci czy podzespołów, które dynamicznie zmieniają się w czasie (atak, bez względu na to jak silny, też podlega tym prawom). Jak wiadomo z rewersu starszych generacji procesorów, budowa wielu elementów układu nie musi być oczywista i prosta do zrozumienia z przyczyn czysto praktycznych, np. optymalizacja względem zużycia energii i wydajności. Na koniec pozostają jeszcze błędy projektowe, które powodują, że układ ma anomalie, które nie muszą być trojanem. Dodatkowo rewers i sprawdzenie układu – oprócz tego, że jest czasochłonne i kosztowne, często wiąże się z jego fizycznym zniszczeniem. To powoduje, że testy przeprowadza się na małym procencie układów i wiąże z ryzykiem przepuszczenia “trefnych” egzemplarzy.
Podsumowanie
Wielu komentatorów wskazuje, że koszty takiej analizy płyt Supermicro w USA będą liczone w milionach dolarów. Być może dlatego Bloomberg przedstawił raport bez analizy komponentów? Trzeba przyznać, że bez względu na wyniki analizy tezy raportu są realistyczne, a poszlaki wskazują na “rozsądne” i wykonalne umiejscowienie układu. Innymi słowy, atak tego typu jest technicznie wykonalny, ale z wnioskami trzeba poczekać – w szczególności gdy zainteresowane strony zaprzeczają, np. Apple, Amazon, Supermicro i agencje rządowe.
Warto zauważyć, że USA posiada silny przemysł elektroniczny i wiele instytucji w tym kraju może pochwalić się odpowiednim zapleczem finansowym, a także doświadczonym personelem i odpowiednio wyekwipowanymi laboratoriami, które mogłyby przeprowadzić tego typu analizę. W przypadku Polski, a także wielu podmiotów z innych części świata, takie zadanie wydaje się zdecydowanie trudniejsze, a na pewno bardziej kosztowne.
Dlatego rozsądniejszym wydaje się poczekanie na wyniki analizy z USA i zastanowienie, jak uniknąć tego typu ataków w przyszłości, czyli strategii firmy w odniesieniu do bezpieczeństwa sprzętowego. W jaki sposób kupujemy sprzęt dla naszej instytucji? Jak go testujemy? Może potrzebne są rozwiązania instytucjonalne, gdyż testy są bardzo kosztowne?
W całej sprawie wciąż jest wiele niejasności, jednak jedno jest pewne – trojany sprzętowe z teorii spisku stają się powoli kolejną domeną ataku, którą duże firmy i instytucje muszą traktować poważnie.
Adam Kostrzewa: Od ośmiu lat zajmuję się badaniami naukowymi i doradztwem przemysłowym w zakresie elektroniki motoryzacyjnej, a w szczególności systemów wbudowanych pracujących w czasie rzeczywistym do zastosowań mogących mieć krytyczne znaczenie dla bezpieczeństwa użytkowników. W wolnym czasie jestem entuzjastą bezpieczeństwa danych. Szczególnie interesujące są dla mnie sprzętowe aspekty implementacji obwodów elektrycznych i produkcji krzemu. Metody i narzędzia używane do tych zadań nie są aż tak dostępne i dokładnie przetestowane jak oprogramowanie, dlatego też stanowią interesującą dziedzinę do badań i eksperymentów.
Blog: adamkostrzewa.github.io
Twitter: twitter.com/systemWbudowany
Komentarze
Wielkość „trojana” nie jest problemem mikrokontrolery od dawna są miniaturowe a większą część ich obudowy to pustą przestrzeń wymagana do podłączenia faktycznego układu do nóżek układu. To co zastanawia w tym wypadku to nietypowa 3 pionowa obudowa. Albo układ korzysta z interfejsu 1-wire(wykorzystywany choćby do kontroli prędkości wiatraków) panie czy da się nim coś zdziałać na płycie głównej. Albo jakaś niestandardowa pasożytniczą wersje i2c (nigdy nie słyszałem). Albo też po prostu tylko czegoś nasłuchuje.
Ogólnie temat chińskiej pomysłowości generalnie oddaje historia esp8266 małego chińskiego modułu wifi w którym to na przestrzeni 2 lat odkrywano coraz to nowe możliwości, a moduł z głupiego pseudomodemu sterowanego komendami AT urósł do niezłego kombajny prawie wszystko mającego (z punktu widzenia mikrokontrolera) ta więc „mają rozmach sk@#$” jeżeli chodzi o Chińczyków.
Polemizowałbym jedynie w kwestii, czy w tak małym chipie szpiegowskim można zmieścić tyle funkcji. Jest to jak najbardziej możliwe, kosztowne – ale możliwe. Zwykli producenci/odbiorcy końcowi mogą mieć z tym problem, ale i tak tego typu rozwiązania są już dostępne (5mln tranzystorów na 5mm2? No problem: http://www.emmicroelectronic.com/press-release/swatch-group-creates-worlds-smallest-bluetooth-chip. Trochę większy 4x4mm mikrokontroler https://www.nxp.com/products/processors-and-microcontrollers/additional-processors-and-mcus/8-16-bit-mcus/8-bit-s08-mcus/8-bit-ultra-high-voltage-motor-control-su-mcus:S08SU?&tid=vanS08SU). Ale gdyby ktoś planował szpiegowanie Apple, to koszty produkcji dedykowanego chipu są nieistotne :-)
„…Szczególnie interesujące wydają się kondensatory, które nie dość, że są rozsiane po całym chipie …” Tu chyba chodzi raczej o rozsianie kondensatorów po całej płycie, nie chipie.
„…odpowiednim zapleczem finansowe, a także doświadczonym…” – literóweczka
dzięki poprawione :)
„Szczególnie interesujące wydają się kondensatory […] rozsiane po całej płycie (co ułatwia pozycjonowanie trojana), […] mają duże metalowe cylindry, w których mieszczą się swobodnie inne komponenty.”
Z kondensatora wychodzą (najczęściej) 2 nóżki, czyli ukryty w jego cylindrze scalak musiałby być z nim połączony. To oznacza, że ten „układ” (scalak + kondensator) miałby na wyjściu 2 piny/połączenia? Nie za mało o co najmniej jeszcze kilka jak na tak skomplikowany półprzewodnik? Chyba że cylinder ma służyć tylko jako osłona a spod jego podstawy wychodzą liczniejsze połączenia dla ukrytego w nim scalaka?
.
„W takim scenariuszu kontrola wizualna i rentgenowska byłaby niewystarczająca do wykrycia zagrożenia.”
Wizualna – nieuzbrojonym okiem, zgodzę się że niewystarczająca.
Ale promienie X chyba sobie poradzą z cylindrem kondensatora lub inną „maskującą” obudową?
@DużyPies dzięki za komentarz i pełna zgoda, ukrycie układu w kondensatorze wymagałoby wysiłku i pewnej „innowacyjności”. tak jak napisałeś prawdopodobnie cylinder służyłby jako osłona do ukrycia większej ilości wyjść (można też kombinować z wyjśćiem szeregowym, bądź fizyczną produkcją łącząca wiele wyjść tak by wiele pinów wyglądało podczas inspekcji jako jeden bądź anomalia czy usterka)
„Ale promienie X chyba sobie poradzą z cylindrem kondensatora lub inną „maskującą” obudową?” zależy z czego jest zrobiony cylinder, jakim sprzętem testujemy płytę, i czy chcemy ją użyć po teście czy zniszczyć podczas (atakujący może optymalizować atak względem wielu czynników na raz)
„można też kombinować z wyjśćiem szeregowym”
Można by też pomyśleć o jakieś formie muliplexowania. To znacznie lepsze, bo 2 niewzbudzające podejrzeń nóżki „kondensatora” przepychają znacznie więcej niż zgromadzony weń ładunek…
miało być „multiplexowania”, sorry za literówkę
Ale juz taki shielded SMD power inductor, który jest dość często na płytach PCB, moze mieć dwie ale też cztery nóżki. Jest w obudowie ferrytowej, a w środdku jest masa drutu w izolacj, która moze chronić wraz z ferrytem przed skanowaniem. Dla dwóch nózek mamy spoko I2C; dla czterech SPI. Normalne fajne magistrale komunikacyjne.
Zobacz ten lub dowolny inny film tego gościa, a zmienisz zdanie o niewinnych kondensatorach:
https://youtu.be/PD7DzTIFJdU?t=188
Nie wszystko co wygląda jak kondensator, ma w środku tylko kondensator :D
Amerykanie sami wywolali te wojne, wiec teraz na wlasne zyczenie dostaja po du…ie. Ich glupota jest fenomenalna. Przypomina mi to wspomnienia pewnego goscia z KGB. Wspominal o tym, jak po pewnej akcji w USA, cale biuro po prostu, cytuje „plakalo ze smiechu” nad glupota rzadu USA. Oczywiscie, mozna w to nie wierzyc, ale w swietle tego co USA robi – czyli przeniesienie strategicznej produkcji do wrogiego kraju – uwazam, ze ta historyjka jest prawda.
Miejsc, w których można zainstalować sprzętowego backdoora na płycie głównej są tysiące. Nie mówiąc o tym iż w trakcie procesu wytwarzania wielowarstwowego laminatu można taki chip wprasować w strukturę laminatu, schować go pod infekowanym układem czy cokolwiek innego. Nie mówiąc o tym iż obecne rozmiary mikroelektroniki są tak małe, a w 95% rozmiar układu to jest jego obudowa – to kwestia czasu kiedy ktoś wpadnie na pomysł zainfekowania produkcji linii układowych i wypuści serię układów zainfekowanych sprzętowym backdoorem wrzuconym w obudowę układu. Oczywiście każdy dysponuje sprzętem do prześwietlania rentgenowskiego więc łatwo to wykryć (śmiech przez łzy).
„można taki chip wprasować w strukturę laminatu”
Też o tym pomyślałem. Płyta główna jest wykonana z dość grubego wielowarstwowego laminatu, gdzie spokojnie można upchać małego scalaka lub inny półprzewodnik.
.
Chinole są ekspansywnym krajem. Amerykanie nie do końca chyba zdają sobie sprawę jak bardzo niebezpieczny jest to kraj/naród. Zrobią wszystko żeby zostać światową potęgą na miarę USA lub Rosji. Kopiują i kradną wszystko co może ich gospodarczo i militarnie wzmocnić. Sprzętowe backdoory, były tylko kwestią czasu. Jestem ciekaw ile takich „dodatków” pojawi się przy okazji IoT masowo produkowanego w Chinach, którego na razie nie da się w pełni skontrolować, bo jego ilość jest i będzie nie do okiełznania.
.
Dla ciekawych, poczytajcie jak Chińczycy uzależniają („pomagają”) od siebie Afrykanów. Dalekosiężne skutki tej „pomocy” będą naprawdę ciekawe.
Parę dni temu spotkałem kolegę który jeździ po świecie, był w Azji, Afryce. Opowiadał mi jak Chinole pompują gigantyczne pieniądze w Afrykę. Chińczyków można już dziś uważać za jedno z największych zagrożeń dla naszej Zachodniej Cywilizacji, także dla Polski.
„Zachodniej Cywilizacji, także dla Polski.” – tzw. zachodnia cywilizacja to stek bzdur. Nie wiem jak mozna te glupoty powtazrac. To jezykowy potworek majacy przypodobac sie roznym gluptakom, aby idnetyfikowaly sie z interesem USA. Ba, aby stawialy intreses „zachodniej cywilizacji Wujka Sama” ponad wlasny.
https://pl.wikipedia.org/wiki/Cywilizacja_%C5%82aci%C5%84ska
Ach, krzyż pański mam z tymi trollami na forum.
Nie dosyć że niedouczone, to jeszcze pyskate :D
Z technicznego punktu widzenie umieszczenie „nieautoryzowanego” chipa jest możliwe (choć drogie). Tylko jeszcze kilka problemów: dla współczesnych taktowań szyn danych – chip podsłuchujący musiał by mieć możliwość przetworzenia tych danych – czyli (pomijając wszystko inne) produkował by sporo ciepła. Innym (bardzo trudnym do obejścia…) problemem jest komunikacja. Próba połączenia nowego serwera z czymkolwiek na zewnątrz – jest łatwa do wykrycia. Pomijam już, że typową praktyką jest umieszczanie interfejsu zarządzającego w oddzielnym segmencie sieci, gdzie dostęp z/do zewnątrz jest odcięty (stąd pomysł modyfikowania chipa/firmware BMC byłby nieskuteczny).
P.S. Bardzo dobry artykuł.
A co, jeśli okaże się, że odkryto scalaki made in US? Tylko były tak tajne, że żadna instytucja o nich nie wiedziała (oprócz zainteresowanej, np. NSA)? A teraz się wydało?
Żeby taki implant zainstalować musiałby zostać zmieniony laminat pcb. Ścieżki musiałyby być inaczej poprowadzone, doprowadzone do układu. Musiałyby też się pojawić dodatkowe punkty lutownicze pod układ. Nikt nie zostawia miejsca gotowego na wlutowanie układu-szpiega.
Drugie to zmiana oprogramowania maszyn do automatycznego montowania elementów.
Trzecie to zmiana oprogramowania do automatycznego testowania płytek. Dodatkowy układ zmienia parametry obwodu i płytki nie przechodzą testu.
Jest masa jeszcze innych rzeczy, które musiałyby zostać zmienione.
Zatem zmiana musiałaby nastąpić już na etapie przygotowywania plików do produkcji.
Podstawowym błędem jest zlecanie montażu i wykonania laminatu pcb jednej firmie. Założę się, że tego się nie robi, bo taka firma mogłaby sobie spokojnie kopiować urządzenie. Mając pliki laminatu, zestaw elementów i software do wgrania ma wszystko, co potrzebne. Gotowy produkt w częściach.
Jeśli jedna firma wykonuje laminat, a druga montaż to nie ma mowy na zmianę laminatu przez tą firmę, która montuje. Chyba że się umówią.
BTW. To co jest pokazane na palcu to filtr RC zintegrowany w jednej obudowie. To nie jest ten układ.
EWIDENTNIE producent sam dołożył ten układ. Tak, jak wszyscy inni producenci dokładają swoje rozwiązania do szpiegowania.
Wystarczy podmienić za jakiś rezystor zachowując parametry rezystancji.
Rezystor? Jaki znasz układ logiczny, który ma 2 wyprowadzenia?
Cze,
Scalak z nr 3 to bios, a z nr 2 to bmc bios dla ast2400. Obydwie pamięci podłączone są do ast2400!
Bez urazy, ale naprawiając elektronikę i posługując się schematami widać by było od razu co jest nie tak z płytą. Każda płyta posiada swój „datasheet”, który pomaga w naprawie, więc dziwie się, że na tak widocznym miejscu umieszczone by były te pluskwy. Przecież to bajka dla dzisiejszej młodzieży humanistycznej nie znającej ani grama elektroniki bo głównie zajmuje im czas zabawa z arduino i innych gotowcami zamiast rozwijać elementarną wiedzę i poznawać bloki funkcjonalne układów.
Ta modyfikacja działa w ten sposób że układ EMULUJE stację dysków elastycznych. Stacja taka jest pierwszym urządzeniem bootującym, bez względu na ustawienia w BIOS. Służy to np. naprawie BIOS przez wgranie nowej wersji w przypadku gdy BIOS uległ całkowitemu uszkodzeniu. Tago typu „trojan” siedzi w komputerach już od 20 lat, nie raz obserwowałem jego działanie. Potrafi np. w notebookach wyłączyć podświetlenie matrycy aby nie wyświetlał się POST, potrafi wyłączyć MONITOR LCD/CRT za pomocą sygnału podawanego na odpowiedni PIN VGA czy sygnał DVI/HDMI. Działą to na bardzo niskim poziomie, sprzętowym. Spotkałem się z taką sytuacją iż po tego typu starcie (tylko raz na jakiś czas w celu modyfikacji usług itp.) próba uruchomienia wirtualnego systemu kończyła się komunikatem: NIE MOGĘ URUCHOMIĆ WIRTUALIZACJI W SYSTEMIE WIRTUALIZOWANYM. Dziwi mnie że tysiące informatyków spogląda w swoje systemy i mało kto to widzi. Być może wynika to z faktu że mało który „komputerowiec” jest zarazem elektronikiem i hackerem.
Mieszasz fakty. Ten „trojan” to bootblock, czyli cześć BIOSu nienadpisywalna podczas typowej aktualizacji. Po to, by w przypadku problemów (np. wgranie złej aktualizacji) można go było reanimować. Bootblock miał bardzo ograniczone możliwości, ale pozwalał odpalić BIOS w „trybie awaryjnym”, czyli obsługa karty graficznej i stacji dyskietek co pozwalało naprawić szkody. Skąd wziąłeś te informacje o emulacji i wyłączaniu monitorów? Coś ściemą mi pachnie, prak typowego ekranu POST od razu wydaje się podejrzany i zwróci uwagę.
Przypomniał mi się mój pierwszy PC i486 DX z połowy lat ’90. Tam był podobny patent w BIOSie, który jeśli nie przeszedł POSTa po aktualizacji, to można było go zreanimować z karty VGA na złączu ISA. ISA… wiem, to informatyczna archeologia, mam jeszcze w domu kontroler SCSI na tym złączu :)
To działa również we współczesnych komputerach, BIOS się nie zmienia, jest tylko rozszerzany. Nadal domyślnym pierwszym dyskiem jest FD0
„Jeszcze rok temu trojany sprzętowe pozostawały w sferze spekulacji i akademickich dyskusji, a zagrożenie traktowane było raczej jako kolejna teoria spiskowa niż realne niebezpieczeństwo.”
Autora trochę poniosło. Tego typu implanty były robione „od zawsze”, a ostatnio jest wręcz wysyp. Na początek można zacząć wyszukiwanie od frazy np: usb keylogger
„Tego typu implanty były robione od zawsze” – powiedz to lemingom, ktore uparcie twierdza, ze skoro nie ma w TV to znaczy ze nie istnieje.
Widzę jeszcze jedna możliwość:
Wykorzystanie samej struktury uP. Tam może dużo się zmieścić, a niektóre mikrokontrolery mają potwornie dużo „powietrza” w swojej strukturze, bowiem np. produkuje się uP z 512kB RAMu, pół jest uszkodzone więc robi się z niego wersją z 256kB. W tym miejscu może być uszkodzona i odcięta pamięć. Może pamięć, może nie.
Natomiast w sprawie przeciwdziałania, jeżeli mamy duże środki warto zastanowić się nad otwartymi systemami typu POWER, kupić kilka z czego większość „prześwietlić” destruktywnie doszczętnie wraz z odlutowaniem wszystkich elementów płyty głównej, prześwietleniem samej płyty (wstawienie kości między warstwy laminatu jest możliwe, taka kość nie będzie długo pracować bo wilgoć, ale jest), wytrawienie układów i porównanie ich. Mamy tu łatwiej ze względu na to, że znamy większość kodów źródłowych.
Natomiast ja się boję czegoś innego: Że to mogą nie być chińskie backdoory, ale trzeba „spalić” je bowiem się wydały. Stąd jakieś takie dziwne reakcje w największych firmach amerykańskich. Jeżeli byłyby to backdoory amerykańskie, to nawet sniffer nie pomoże, bo sporo jest projektowane w USA. Szczególnie, że pamiętam do 2003-4 roku w sieciówkach trafa separacyjne były bardzo często „Made in USA” gdy nawinięcie drutu na koralik taniej wychodzi w Chinach.
Stąd takie pytanie: Czy istnieje projekt adaptera ethernetowego na elementach dyskretnych? Takie, żeby podłączyć to do minimalnego uC i monitorować pakiety osobnym urządzeniem (z uP tak słabym, że odpornym na hipotetyczny atak „wavepacket”) oprogramowanym np. w C?
W którym to było roku gdy jakiś typek wygwizdał większość praktyk amerykańskiej NSA? M.in. przechwytywanie sprzętu w trakcie transportu i dorzucanie fizycznego prezentu w identycznej postaci. By docelowo zmodyfikowany trafił do klienta. Jak się nazywał ten typ co teraz się ukrywa u ruskich? Snowden? Wcale bym się nie zdziwił, gdyby to była prawda i inside job. Skoro dało się dokładać sprzętowe backdoory w spedycji już kilka lat temu, to dlaczego nie pójść o krok dalej i dokładać w produkcji?
Ciekawy artykuł, ale pozostał mi po nim niedosyt. Omówiliście zagadnienie umieszczenie chipa na płycie, ale nie ma nic o tym jak miałby on się komunikować ze światem zewnętrzym i co wysyłać. Również to „jak wysyłać” jest ciekawe. Oraz czy tylko wysyłać, czy również coś odbierać (polecenia? update’y?).
Żeby taka komunikacja była dobrze zabezpieczona to miasiałaby być szyfrowana? Da radę umieścić funkcje zarządzania kluczami i szyfrowania symetrycznego i zsuymetrycznego w tak małym chipie, czy miałby on „jakoś” zmuszać inne komponenty (CPU?) do robienia tej roboty za niego?
I w końcu dostęp to stosu IP i TCP? Miałby umieć wstrzyknąć swoją komunikację do OS czy karty sieciowej, żeby ona dla niego komunikowała się ze światem?
Trochę dużo (funkcji, pobieranego prądu i wydzielanego ciepła) jak na tak mały chip.
Możecie się do tego ustosunkować, bo ten artykuł zaledwie muska powierzchnię problemu.
(Ciekawe czy ktoś interesuje się „starymi” artykułami sprzed tygodnia :-)