Niewykrywalne szkodniki ukryte w urządzeniach peryferyjnych przestały być takie niewykrywalne
O tym, że karty rozszerzeń czy płyty główne mogłyby być wektoremzłośliwego oprogramowania, wiadomo w teorii przynajmniej od kilkulat. Dopiero jednak w 2012 roku Jonathan Brossard zademonstrowałpodczas konferencji Black Hat szkodnika o nazwie Rakhasha,który potrafił zainfekować BIOS komputera, kopiując się z BIOS-ukarty sieciowej, by oddać napastnikowi pełną kontrolę nad komputeremofiary. Brossard nie ujawnił nigdy kodu Rakhashy, ale zasugerował, żepodobne metody znane są agencjom wywiadowczym z całego świata.Sytuacja dla ekspertów od bezpieczeństwa IT stała się więckłopotliwa: nie rozumiejąc do końca metody ataku, nie mogli opracowaćskutecznych metod obrony przed ukrytymi w sprzęcie szkodnikami.Wreszcie jednak sytuacja zaczęła się zmieniać. Dwóch badaczy zTechnische Universität Berlin, Patrick Stewin i Jurij Bystrowdokładnie opisali zarówno szkodnika ukrywającego się w firmware, jaki metody jego wykrywania.Zagrożenia nie można bagatelizować. Stewin w swoim artykulept. A Primitive for Revealing Stealthy Peripheral-Based Attacks onthe Computing Platform's Main Memory pisze: wykorzystującebezpośredni dostęp do pamięci (DMA) ataki wyprowadzane z urządzeńperyferyjnych są w stanie przejąć host bez korzystania z podatnościobecnych w systemie operacyjnym uruchamianym na hoście (…)stanowią więc najwyższego poziomu zagrożenie dla bezpieczeństwa ispójności systemów komputerowych. Niestety do tej pory żaden systemoperacyjny nie zawiera mechanizmów umożliwiających wykrycie atakówbazujących na DMA. Co gorsze, w przeszłości zademonstrowano też atakiprzeciwko jednostkom zarządzania pamięcią (MMU), wskutek czego im teżnie można zaufać.[img=malware]W swojej pracy Stewin opisuje szkodnikao nazwie DAGGER, który bierze na cel pamięć hosta właśnie przezdostęp po DMA zapewniany urządzeniom peryferyjnym, a następnieuruchamia w niej keyloggera. Systemy operacyjne i programyantywirusowe okazują się bezbronne. DAGGER zainfekował hostydziałające zarówno pod kontrolą Windows, jak i Linuksa, w wersjach32- i 64-bitowych, pomimo zabezpieczeń w postaci randomizacjiprzestrzeni adresowej pamięci. Co gorsza, oprogramowanie antywirusowenie było w stanie stwierdzić obecności DAGGER-a w pamięci, sam zaśszkodnik mógł funkcjonować już nie tylko jako keylogger – jegoulepszona wersja przyjmowała dostarczane przez Sieć rozkazy odnapastnika.Władze federalne Niemiec zdając sobiesprawę z wagi tego zagrożenia, opłaciły badania nad detektorami,pozwalającymi wykryć ataki wyprowadzane przez DMA – inajwyraźniej pieniądze te zostały dobrze wydane. Stewin przedstawił wswojej pracy sposób budowy takiego detektora, prezentując moduł dlajądra Linuksa o nazwie BARM (Bus Agent Runtime Monitor). Moduł tendowodzi, że procesor hosta może wykryć nieupoważniony dostęp dopamięci, wyprowadzony z urządzeń peryferyjnych, nawet wówczas jeślinie może uzyskać dostępu do izolowanego środowiska uruchomieniowegoatakującego urządzenia peryferyjnego. Staje się to możliwe dziękiporównywaniu obserwowanej aktywności na magistralach systemowych zaktywnością oczekiwaną przez system operacyjny i hiperwizor. W raziewykrycia istotnych odchyleń, BARN jest w stanie zgłosić atak przezDMA jak również określić, z którego urządzenia został onwyprowadzony.Metoda ta ma być znacznieskuteczniejsza, niż dotychczas proponowane sposoby na ograniczeniedostępu do pamięci, takie jak np.Intel Virtualization Technology forDirected I/O (VT-d), według Stewina podatne na ataki z zewnątrz,niestabilne i niewspierane przez wiele systemów operacyjnych (w tymWindows 7). Napastnik nie może bowiem uniknąć wywołania dodatkowejaktywności na magistralach przy uzyskiwaniu dostępu do pamięcisystemu – i aktywność ta ma być piętą achillesową wszystkichszkodników kryjących się w firmware urządzeń peryferyjnych. Cowięcej, takie wykorzystanie procesora do śledzenia dostępu do pamięcinie powinno generować odczuwalnego narzutu na pracę systemu.Na poniższym wideo możecie obejrzeć atak przeprowadzony za pomocąDAGGER-a. Miejmy nadzieję, że niebawem BARN stanie się standardowymmodułem dla jądra Linuksa, a w przyszłości analogiczne metodywykorzysta Microsoft dla zabezpieczenia Windows.[yt=http://www.youtube.com/watch?v=pPptnMxWiCU]
27.09.2013 11:44