Producenci oprogramowania antywirusowego zgodnie wymieniają koparki kryptowalut jako jeden z najszybciej zdobywających popularność rodzajów szkodliwego oprogramowania. Nic dziwnego, wystarczy uruchomić taki skrypt na stronie lub lokalnie na komputerze, by otrzymywać kryptowalutę bezpośrednio – nie są już konieczne włamania i kradzieże. Nie znaczy to jednak, że jesteśmy w stosunku do koparek bezbronni.
Koparki krytpowalut – przyszłość spieniężania ruchu?
Aby skutecznie chronić się przed skryptami kopiącymi kryptowaluty, musimy je najpierw rozróżnić na skrypty osadzane na stronach internetowych oraz lokalne koparki kryptowalut. W przypadku tych pierwszych cały proceder może okazać się prostszy dla atakującego, ale także łatwiejszy do ukrócenia przez ofiarę. Warto także zaznaczyć, że administrator strony kopiącej kryptowaluty wcale nie musi być beneficjentem, może w ogóle nie być świadomy działania skryptu. Serwisy internetowe rzadko się dziś buduje na w 100% autorskich rozwiązaniach, zaś w dostępnych w Internecie komponentach (szczególnie darmowych) nietrudno przeoczyć koparkę kryptowalut.
Korzystanie z koparek kryptowalut na stronach internetowych stało się nowym sposobem na spieniężanie ruchu. Nie brakuje serwisów, które dają użytkownikom wybór pomiędzy wyświetlaniem reklam a koparkami. Coraz więcej firm zaczyna także oferować swoim klientom dobrowolną instalację koparki z obietnicą, że będzie ona uruchamiana tylko wtedy, gdy komputer znajdzie się w trybie czuwania. Zapewne prędzej czy później branża przejdzie nad takimi praktykami do porządku dziennego i... nie ma w tym nic złego. To, przed czym warto się bronić, to uruchamianie koparek bez wiedzy i wbrew woli użytkownika.
Koparka w przeglądarce
Jak wspomnieliśmy, z internetowymi skryptami osadzanymi na stronach sprawa jest dość prosta – wystarczy opuścić stronę, by skrypty przestały działać. Skąd jednak wiadomo, czy dana strona wykorzystuje skrypty lub nie? Do identyfikacji przydatny będzie wbudowany w przeglądarkę Chrome menedżer zadań, dostępny w menu Więcej narzędzi lub za pomocą skrótu klawiszowego Shift + Esc. Otrzymujemy wówczas czytelną listę kart-procesów, rozszerzeń, a nawet ramek osadzonych w serwisach. Wystarczy zatem uruchomić podejrzaną witrynę w jednej karcie i bezpieczną stronę w drugiej, a następnie prześledzić, jak obciążają CPU, GPU i ile generują ruchu. Na podstawie różnic można potwierdzić lub porzucić swoje podejrzenia. Warto także zajrzeć do narzędzi deweloperskich (Ctrl + Shit + I) i kategorii Sieć – tam wyszczególnione są wszystkie połączenia otwarte przez wyświetlaną aktualnie witrynę.
Ochronę przed najpopularniejszymi koparkami oferują często same przeglądarki, na przykład wspomniany Chrome i programy bazujące na silniku javascriptowym V8. O tym, czy przeglądarka jest chroniona można przekonać się dzięki udostępnionemu przez Operę narzędziu Cryptojacking Test – jest to po prostu skrypt, który próbuję rozpocząć obciążanie zasobów i powiadamia „ofiarę”, czy proces ten się udał. Ochronę oferują także rozszerzenia blokujące reklamy oraz wyspecjalizowane rozszerzenie NoCoin. Mają one tę zaletę, że w momencie pojawienia się nowego skryptu internauci sami dodają go do bazy, zapewniając tym samym ochronę milionom innych użytkowników.
Koparka działająca lokalnie
W przypadku natywnego oprogramowania kopiącego lokalnie sprawa jest nieco trudniejsza, gdyż jego twórcy robią naprawdę wiele, by możliwie jak skuteczniej zamaskować zwiększone obciążenie zasobów. Trudniej jednak także zainfekować potencjalną ofiarę, gdyż instalatory koparek są standardowo rozpoznawane przez proaktywne oprogramowanie antywirusowe i blokowane. Jeśli jednak jakimś sprytnym socjotechnicznym sposobem udało się przeprowadzić instalację, to koparkę można wyśledzić – przez analizę obciążenia zasobów oraz (choć jest to mniej skuteczne) przez analizę ruchu sieciowego.
Do testów będzie nam zatem potrzebny menedżer zadań – najlepiej bardziej rozbudowany niż ten systemowy w Windowsie, np. Process Explorer. Warto skorzystać z niego po ponownym uruchomieniu systemu i obserwować, czy na komputerze działają jakiekolwiek procesy inne niż usługi systemowe i ewentualnie programy z autostartu. Generowane przez nie obciążenie nie powinno przekraczać 20-30%. Jeśli jest inaczej, warto odnaleźć odpowiedzialny za ten stan rzeczy proces.
Z analityką ruchu sieciowego jest trudniej – najczęściej koparki wykorzystują protokół getwork, ale może to być także SSH czy Tor. Najskuteczniejszym, ale też dość wymagającym sposobem na walkę na tym polu będzie postawienie sprzętowej zapory (np. na Raspberry Pi) i inspekcja pakietów pod kątem wykorzystania np. getwork. Można także do tego wykorzystać oprogramowanie w rodzaju opensource’owego nDPI i szukać nietypowych wzorców oraz dużego ruchu tam, gdzie go być nie powinno. Najlepszym i najprostszym sposobem na lokalną koparkę będzie jednak zwykłe skanowanie oprogramowaniem antywirusowym. Ręczna inspekcja raczej nie będzie skuteczniejsza niż proaktywna ochrona, jaką zawdzięczamy telemetrii i ciągłej aktualizacji definicji.
Podsumowanie
Można oczekiwać, że w ciągu nadchodzących lat koparki kryptowalut wyrosną na największe zagrożenie, niezależnie od tego, czy mamy do czynienia ze szkodnikami pecetowymi czy ze smartfonowymi. Co ważne, pojawiają się już także pierwsze koparki kierowane na serwerowe systemy linuksowe – wyobraźmy sobie, jak zwolni Internet, gdy zainfekowane na duża skalę zostaną maszyny, na których działa Apache czy nginx. Dlatego tak ważne jest, by skutecznie chronić się już teraz i – o ile to jeszcze możliwe – gasić epidemię w zarodku.