Gdy antywirus nie daje rady

Ochrona antywirusowa jest standardem zabezpieczeń. W zderzeniu z nowymi rodzajami zagrożeń okazuje się jednak mało skuteczna. Czy to oznacza koniec antywirusów w znanej nam postaci?

Każdy może być celem

W ciągu ostatnich kilku lat obserwowaliśmy bardzo głośne i zaawansowane ataki na infrastrukturę IT, nie tylko na obszarze Bliskiego Wschodu. Celem ataków były także firmy, o których wiadomo, że są wysoce zaawansowane w zagadnieniach ściśle informatycznych - Google oraz RSA. Według specjalistów, podobne ataki, ale przeprowadzane za pomocą znacznie tańszego oprogramowania, są rutynowo obserwowane podczas monitorowania aktywności sieciowej.

Wykryty w maju 2012 r. wirus Flame udowodnił, że tradycyjna ochrona antywirusowa charakteryzuje się znikomą skutecznością przeciw atakom wykraczającym poza możliwości niewielkiej grupy hakerskiej. Za większością ataków stoją dzisiaj podziemni zawodowcy, cyberprzestępcy, którzy mogą dysponować na tyle dużymi budżetami, by opracować skuteczne i trudne do wykrycia złośliwe oprogramowanie. Jeśli jest to wirus tworzony do celów militarnych czy szpiegowskich, można mieć pewność, że nie zostanie wykryty przez narzędzia antywirusowe ani inne metody ochrony dostępne w typowych stacjach roboczych.

Wirus Flame unaocznił to w całej rozciągłości. Był aktywny przez co najmniej dwa lata, zbierając dokumenty, nagrywając dźwięki, połączenia Skype'a, rejestrując wciskane klawisze i ruch sieciowy oraz zapisując zrzuty ekranu. W ciągu tego okresu alarmu nie podniosła żadna z firm zajmujących się bezpieczeństwem oprogramowania, wliczając w to producentów antywirusów. Mikko Hypponen, założyciel i szef działu badawczego firmy F-Secure, mówi: "Flame był wpadką całego przemysłu narzędzi antywirusowych. Naprawdę powinniśmy byli działać znacznie lepiej. Niestety, nie daliśmy rady, w naszej własnej grze byliśmy kimś z niższej ligi". Flame to tylko przykład. Warto wspomnieć o wirusie Stuxnet, który miał sparaliżować instalacje nuklearne w Iranie.

Nieznany kod, nieznane zagrożenie

Początkowo niemal wszystkie antywirusy bazowały na porównaniu fragmentów kodu ze znanymi sygnaturami. Pierwsze wirusy charakteryzowały się niewielką zmiennością, ale bardzo szybko ich twórcy nauczyli się omijać narzędzia antywirusowe. W tym czasie odbywała się jeszcze statyczna, comiesięczna dystrybucja aktualizacji za pomocą dyskietek. W Polsce liderem był program MkS_vir. Epoka skończyła się razem z rozwojem internetu, ale model dopasowania do wzorców, czyli sygnatur, nadal jest obecny w wielu programach antywirusowych. Ma on jedną wadę: wobec poważnych zagrożeń jest nieskuteczny.

Podstawowy problem polega na tym, że cyberprzestępca tworzący złośliwy kod może bardzo szybko sprawdzić jego wykrywalność przez najważniejsze z programów na rynku. Dzięki prostym zmianom kodu przed kompilacją może uniknąć wykrycia. Tymczasem do utworzenia próbki złośliwego kodu dostawcy narzędzi antywirusowych muszą zgromadzić od kilku do kilkunastu różnych próbek tego samego kodu, a przy takim modelu rozwoju wirusów dotrze do nich tylko jedna. Precyzyjne ataki kierowane organizuje się tak, by żaden z producentów antywirusów nie otrzymał próbki kodu.

Sztuczna inteligencja i analiza behawioralna

Aby uzupełnić niedostatek oprogramowania bazującego na statycznych sygnaturach, opracowano analizę pobieranego kodu. Zamiast koncentrować się na wzorcach binarnych, producenci przyjrzeli się aktywności złośliwego oprogramowania.

Umożliwiło to sklasyfikowanie czynności wykonywanych przez wirusy, takich jak: tworzenie plików w pewnych miejscach, modyfikacja niektórych kluczy rejestru Windows, otwieranie połączeń sieciowych czy poszukiwanie innych komputerów w otoczeniu sieciowym. Metoda była popularna, ale szybko twórcy wirusów zaczęli ją obchodzić, stosując stopniowe pobieranie składników i tworzenie wynikowego kodu. Obecnie podstawową techniką zarażania stacji roboczych jest metoda drive-by.

Ocena reputacji stron i plików

Jedną z najskuteczniejszych metod w zwalczaniu masowych infekcji jest korelacja zdarzeń i linków przez dostawcę oprogramowania antywirusowego. Dzięki efektowi skali na masowe infekcje za pomocą tego samego kodu można reagować o wiele szybciej niż dotąd. Nowością jest podejście, które zakłada kojarzenie nie tylko plików, ale i linków wskazujących, skąd dane pliki pochodzą.

Jako jedna z niewielu metoda ta umożliwia wsteczną klasyfikację nieznanego oprogramowania jako złośliwego, jeśli uda się wykryć odwołanie do serwerów, o których wiadomo, że hostują konie trojańskie lub inne złośliwe oprogramowanie. Jeśli cyberprzestępca skorzysta ze znanych serwerów, każdego wirusa uda się w ten sposób prawidłowo oznaczyć. Przy profilowanych atakach spoza głównego strumienia zagrożeń metoda zawiedzie. Intruz skorzysta z serwera o dobrej reputacji, umieści tam nieznany kod, a mechanizm drive-by będzie przeprowadzony tak, by nie powodować alarmu.

Luki w aplikacjach

Poszukiwanie podatności w systemach operacyjnych i aplikacjach było od dawna ulubionym zajęciem specjalistów do spraw bezpieczeństwa. Podatności w systemach operacyjnych i aplikacjach statystycznie muszą występować, gdyż dzisiejsze oprogramowanie jest skomplikowane. Jeśli włamywacz ma potrzebne informacje, może przełamać wiele zabezpieczeń. Nie ochroni przed tym oprogramowanie antywirusowe, gdyż nie do tego zostało stworzone. Kod eksploita jest nieznany nie tylko producentom antywirusów, ale także producentowi systemu operacyjnego, a zatem nie można mówić o przygotowaniu pod jego kątem sygnatur. Ochronę przy połączeniach sieciowych może zapewnić urządzenie IPS analizujące ruch sieciowy.

Obce sterowniki

Gdy w antywirusach wprowadzono narzędzia sprawdzające spójność instalacji Windows, włamywacze opracowali kolejną technologię ukrywania wirusów - wprowadzali je jako sterowniki do urządzeń. Aby sterownik załadować w Windows XP, wystarczyło wprowadzić drobne zmiany w konfiguracji systemu. Od Windows Vista 64 bit zadanie to stało się o wiele trudniejsze. Włamywacze opracowali narzędzia, które umożliwiły ładowanie obcych obiektów do jądra systemu, dzięki czemu antywirus nie miał już przewagi nad wirusem, wynikającej z pracy na wyższym poziomie uprawnień. Niekiedy do załadowania obcego kodu wykorzystywano błędy w istniejących sterownikach, a nawet w oprogramowaniu antywirusowym. Wirus obecny w jądrze systemu jest o wiele trudniejszy do usunięcia - wobec tak dopracowanego ataku antywirus jest najczęściej bezradny. Najnowsze zabezpieczenia Windows 8 i na sprzęcie być może zmniejszą ryzyko ataków tą drogą.

System pod pełną kontrolą

Wprowadzenie obowiązku cyfrowego podpisywania sterowników początkowo utrudniło infekcję na poziomie jądra systemu, ale włamywacze poradzili sobie także z tym zabezpieczeniem. Opracowany przez nich program, nazywany bootkitem, przejmuje kontrolę nad systemem Windows na wczesnym etapie startu systemu, uruchamiając go w kontrolowanym przez siebie środowisku. Mając kontrolę nad startem systemu, można wprowadzić w nim dowolne zmiany, nawet wyłączenie obowiązku podpisywania sterowników. Jeśli system jest uruchomiony pod kontrolą bootkita, antywirus jest bezradny - może zostać ominięty lub wyłączony.

Zagrożenie dla bezpieczeństwa Windows było na tyle poważne, że Microsoft zdecydował się na rozwój technologii zaufanego startu, podczas którego jeszcze przed uruchomieniem systemu operacyjnego sprawdzane są podpisy cyfrowe najważniejszych składników odpowiedzialnych za najwcześniejsze etapy startu. Narzędzia antywirusowe są bezradne, jeśli wirus został uruchomiony jeszcze przed startem Windows i kontroluje proces uruchamiania systemu.

Integracja z systemem Windows

Początkowo wirusy niewiele ingerowały w system Windows, w miarę rozwoju złośliwego oprogramowania stało się ono coraz bardziej związane z mechanizmami systemu. Obecnie wirusy coraz rzadziej korzystają z prostych kluczy rejestru do automatycznego uruchamiania (HKLM [..] Run). Raczej integrują się jako jedna z usług systemowych lub rejestrują się jako składnik powłoki systemu. To skuteczna metoda - tak działają wirusy ransomware, żądające opłaty za odblokowanie systemu.

Gdy twórca wirusa podszedł profesjonalnie do jego konstrukcji, usunięcie wszystkich zmian przez narzędzia antywirusowe będzie niemożliwe. Nawet twórcy oprogramowania antywirusowego zalecają wtedy reinstalację systemu operacyjnego. Windows 8 może zaoferować opcję automatyzowanej reinstalacji, czyli odświeżenia systemu.

Czy budować linię Maginota

Według niektórych ekspertów, nadchodzi pora na zmianę podejścia do ochrony informacji w firmie. Nicolas Christin, badacz na Uniwersytecie Carnegie Mellon, mówi: "Nadal najważniejszym składnikiem systemu ochronnego jest oprogramowanie antywirusowe, ale nie będzie to jedyna broń. Musimy zmienić podejście i nie próbować budowy linii Maginota, którą będzie łatwo obejść". Nicolas Christin, razem z grupą badaczy i kilkoma niewielkimi firmami, pracuje nad nową strategią obrony, która sprawi, że ataki będą o wiele trudniejsze do przeprowadzenia, a firma będzie mogła czynnie odpowiedzieć na zagrożenie.

Dmitrij Alperowicz, główny technolog i współzałożyciel firmy CrowdStrike, uważa, że "branża bezpieczeństwa popełniła błąd, skupiając się na narzędziach, za których pomocą działają włamywacze. Eksploity są zmienne, więc należy skupić się na tym, co jest stałe - na ludziach i ich taktyce". Chociaż CrowdStrike nie podaje szczegółów opracowywanej technologii, wiadomo, że zaoferuje ona inteligentny system wczesnego ostrzegania, który będzie mógł wykryć nowe, nieznane ataki i wyśledzić ich pochodzenie. Alperowicz wyjaśnia: "chociaż napastnik może zmienić kod wirusa takiego jak Flame, by ponownie uniknąć wykrycia przez antywirusy, jego cel pozostaje ten sam - uzyskać dostęp do danych i ukraść je. Należy skoncentrować się na celu, nie na środkach i do tego wykorzystamy technologię Big Data". Prawdopodobnie oznacza to analizę danych związanych z wieloma śladami aktywności w systemach klienta, by wyśledzić, które ślady dotyczą infiltracji.

Nicolas Christin, który badał motywacje ekonomiczne i modele biznesowe cyberprzestępców, uważa, że podejście to ma sens. Jego zdaniem, "największym składnikiem kosztów ataku jest nakład na działalność człowieka. Odparcie ataku nie oznacza dziś neutralizacji porcji kodu napisanej przez samotnego geniusza, ale zneutralizowanie pracy sprawnie działającej grupy ludzi. Oprogramowanie do obrony może utrudnić zastosowanie standardowej taktyki, często stosowanej przez napastników. To utrudni im atak".

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200