Kaspersky: Ataki drive-by download – Sieć w oblężeniu

22 kwietnia 2009 0 przez Grzegorz Pietrzak

Ewolucja sposobów rozprzestrzeniania się wirusów
komputerowych i szkodliwego oprogramowania odzwierciedla ewolucję sposobów
przesyłania informacji. Na początku informacje były fizycznie przenoszone z
jednego komputera na inny przy użyciu różnych przenośnych nośników danych. We
wczesnych latach 80. ubiegłego wieku informacje „podróżowały” za pośrednictwem
kosztownych prywatnych sieci danych. W wyniku nacisków amerykańskiego
rządu na korporacyjnych dostawców, aby ujednolicili sposób wysyłania oraz
format informacji, nastąpił prawdziwy rozkwit Internetu. Firmy dowolnego
rozmiaru uzyskały możliwość przesyłania informacji poprzez tę „darmową” sieć,
najczęściej wykorzystując do tego celu wiadomości e-mail i załączniki do
takich wiadomości. W późnych latach 90. te nowe możliwości zaczęły
wykorzystywać wirusy, które atakowały zarówno firmy jak i osoby fizyczne na
całym świecie – szkodniki te wykorzystywały pocztę elektroniczną do rozmnażania
i rozprzestrzeniania się.

Sieć World Wide Web szybko przekształciła się w
nieocenioną platformę służącą do wymiany informacji, ułatwiającą globalny
handel i zwiększającą produktywność pracowników. Powoli ale konsekwentnie,
zaczęliśmy dostrzegać zalety podejścia polegającego na tym, że zamiast wysyłać
informacje do wszystkich, którym mogą się przydać, wysyłane jest tylko
powiadomienie zawierające odsyłacz pozwalający użytkownikom przeglądać
konkretne informacje za pośrednictwem Sieci. Dzisiaj wiele osób nadal uważa, że
używanie przeglądarki internetowej to to samo co oglądanie wystaw sklepowych
lub pójście do biblioteki w fizycznym świecie – bez wiedzy osoby
zainteresowanej nic się nie może stać. W rzeczywistości umyka im wiele rzeczy,
które dzieją się „za kulisami”, ponieważ są one dla nich niewidoczne. Jednak
większość użytkowników indywidualnych oraz ekspertów korporacyjnych (spoza
branży IT) byłaby zaskoczona intensywnością tej “zakulisowej” komunikacji,
zachodzącej podczas cichej interakcji przeglądarek internetowych z danymi
przechowywanymi na komputerach PC, aplikacjami oraz serwerami sieciowymi.

Niestety tę „złożoność” zaczęły wykorzystywać również
dobrze zorganizowane grupy zajmujące się rozprzestrzenianiem szkodliwego
oprogramowania, które obecnie dostarczają swoje wirusy, programy spyware,
trojany, boty, rootkity oraz fałszywe programy bezpieczeństwa głównie za
pośrednictwem Sieci. W branży antywirusowej tego rodzaju ukryte pobieranie
szkodliwych programów ze stron internetowych bez wiedzy użytkownika określa się
terminem drive-by download W artykule tym zbadamy, co w rzeczywistości ma
miejsce podczas ataku „drive-by”, jakie przynęty i technologię
wykorzystuje się do przeprowadzania takich ataków oraz w jaki sposób
wykorzystuje się te ataki do kradzieży danych osobowych oraz przejmowania
kontroli nad komputerami.

Zrozumieć eksplozję

Zanim przeprowadzimy bardziej szczegółowe badanie ataków drive-by
download, wyjaśnimy najpierw, w jaki sposób „eksplodował” ten rodzaj ataków w
ostatnich latach. W tym miejscu warto pamiętać, że ten sam szkodliwy program
(wirus, spyware, trojan, bot, rootkit oraz fałszywe oprogramowanie
bezpieczeństwa) może być, i często jest, rozprzestrzeniany na wiele różnych
sposobów – czasami za pośrednictwem poczty elektronicznej, czasami na skutek
odwiedzenia strony internetowej, czasami przy użyciu innych metod.

Rozprzestrzenianie szkodliwych programów za pośrednictwem
ataków „drive by” staje się coraz popularniejsze wśród cyberprzestępców,
ponieważ ten sposób infekcji jest bardziej ukradkowy i prowadzi do większej
ilości skutecznych ataków. Rysunek 1 przedstawia dane pochodzące od
ScanSafe, firmy śledzącej zagrożenia rozprzestrzeniające się za pośrednictwem
Sieci, i ilustruje, w jaki sposób w ciągu dekady, od 1996 roku, trend przesunął
się z poczty elektronicznej na Sieć oraz komunikatory internetowe.

Rys. 1. Ewolucja metod dostarczania szkodliwego
oprogramowania.

Według nowszych danych firmy ScanSafe, 74 procent
wszystkich szkodliwych programów zidentyfikowanych w trzecim kwartale 2008 roku
było wynikiem odwiedzenia zainfekowanych stron internetowych.

Teraz, gdy zwróciliśmy uwagę na coraz większą wagę tego
problemu, wyjaśnimy, w jaki sposób przeprowadzane są tego rodzaju ataki,
przedstawimy techniki wykorzystywane w celu zwabienia ofiar na zainfekowane
strony internetowe, zaawansowane zestawy exploitów oraz atakowane przez nie
aplikacje, skomplikowany labirynt przekierowań sieciowych oraz szkodliwe
funkcje wykorzystywane do przeprowadzania kradzieży tożsamości oraz ataków
polegających na przejmowaniu kontroli nad komputerami.

Ataki wykorzystujące przeglądarkę

Aby w pełni zrozumieć gwałtowny wzrost popularności
wykorzystywania przeglądarki internetowej jako narzędzia ataków, należy
przyjrzeć się historii największych ataków przeprowadzanych na komputery za
pośrednictwem Internetu. W „okresie robaków internetowych”, gdy w sieciach
korporacyjnych spustoszenie siały takie robaki jak Code Red, Blaster, Slammer
oraz Sasser, hakerzy wykorzystywali luki w systemie operacyjnym Windows przy
użyciu zdalnych exploitów. (O zdalnym exploicie mówimy wtedy, gdy szkodliwy
program znajduje się na serwerze podłączonym do sieci i wykorzystuje
legalny kod na komputerze użytkownika, jednak w celu wykorzystania luki w
zabezpieczeniach nie musi uzyskiwać dostępu do komputera użytkownika).
Zainfekowane pliki wykonywalne, takie jak Melissa, często dołączane były do
wiadomości e-mail lub przedostawały się do systemów za pośrednictwem
komunikatorów internetowych i aplikacji P2P.

Microsoft zareagował na ataki robaków w pozytywny sposób.
Firma dodała zaporę sieciową, która w systemie Windows XP SP2 jest domyślnie
włączona, oraz zaimplementowała kilka mechanizmów osłabiających ataki robaków.
Włączona funkcja automatycznych aktualizacji w systemie Windows pomagała
użytkownikom regularnie instalować łaty dla systemu operacyjnego. Zmądrzały
zarówno firmy, jak i użytkownicy, którzy zaczęli blokować załączniki i
przestali klikać nietypowe pliki wykonywalne. Oba te czynniki skłoniły
cyberprzestępców do zmiany taktyk: zaczęli atakować aplikacje innych
producentów oraz doskonalić sztukę socjotechniki.

Ewolucja ta przyczyniła się również do wyłonienia się
nowej techniki ukradkowych ataków określanych jako drive-by download. Opierają
się one na wykorzystywaniu przeglądarki jako mechanizmu, za pomocą którego
użytkownicy komputerów łączą z serwerami, na których umieszczono exploity.
W ataku „drive-by” szkodliwy program jest automatycznie pobierany na komputer
użytkownika bez jego wiedzy oraz zgody. Atak odbywa się w dwóch etapach.
Użytkownik odwiedza stronę internetową zawierającą szkodliwy kod, który
przekierowuje to połączenie na zainfekowany serwer należący do osoby trzeciej i
zawierający exploity. Rysunek 2, od Google Anti-Malware Team, pokazuje
podstawowy schemat ataku drive-by download. Exploity te mogą wykorzystywać luki
w zabezpieczeniach przeglądarki internetowej, niezałatane wtyczki do
przeglądarki, podatne na ataki formanty ActiveX oraz błędy w oprogramowaniu
innych producentów.

Rys. 2. Struktura ataku drive-by download.

Jak widać na rysunku, zanim zostanie pobrany exploit,
może nastąpić dowolna liczba przekierowań na różne strony internetowe.

Według danych Kaspersky Lab, jak również innych firm z
branży bezpieczeństwa, jesteśmy w środku epidemii ataków drive-by download.
Przez ostatnie dziesięć miesięcy grupa Google Anti-Malware Team odwiedziła
miliardy stron internetowych w poszukiwaniu aktywności szkodliwego
oprogramowania, znajdując ponad trzy miliony adresów URL, z których inicjowane
były ataki drive-by download.

„Jeszcze bardziej niepokojącym odkryciem było to, że
około 1,3 procent zapytań w wyszukiwarce Google zwróciło co najmniej jeden
adres URL oznaczony na stronie wyników jako zainfekowany” – wynika z badania
opublikowanego przez Google. Rysunek 3, pochodzący z badania, pokazuje
niepokojący wzrost odsetka wyszukiwań, których wyniki zawierały zainfekowane
strony.

Rys. 3. Wyniki wyszukiwania zawierające adresy
zainfekowanych stron.

W początkowym okresie przeprowadzania ataków drive-by
download cyberprzestępcy zwykle tworzyli zainfekowane strony internetowe i
wykorzystywali socjotechnikę w celu przyciągnięcia na nie użytkowników. Chociaż
nadal jest to główne źródło szkodliwej aktywności online, ostatnio hakerzy
częściej włamują się na legalne strony internetowe i ukradkiem
wykorzystują skrypt lub umieszczają kod przekierowujący, który niezauważenie
uruchamia ataki za pośrednictwem przeglądarki.

Anatomia ataku drive-by

Na początek pokażmy, w jaki sposób przeprowadzane są
ataki drive-by download na komputery użytkowników. Jako przykładu użyjemy
jednego z głośnych incydentów, którego ofiarą w 2007 roku padł znany portal
internetowy. W tygodniach poprzedzających finałową rozgrywkę o mistrzostwo
amerykańskiej zawodowej ligi hakerzy włamali się na stronę stadionu Miami’s
Dolphin Stadium, umieszczając na niej fragment kodu JavaScript (zobacz rysunek
4).

Rys. 4. Kod JavaScript użyty na stronie stadionu Miami’s
Dolphin Stadium.

Osoba posiadająca komputer z niezałatanym systemem
Windows, która odwiedziła tę stronę, została ukradkiem połączona ze zdalnym
użytkownikiem, który próbował wykorzystywać znane luki w zabezpieczeniach
opisane w biuletynach bezpieczeństwa firmy Microsoft (MS06-014 oraz MS07-004).
Jeżeli exploit okazał się skuteczny, na komputer instalował się niepostrzeżenie
trojan, który umożliwiał osobie atakującej pełny dostęp do atakowanego
komputera. Taki komputer mógł zostać następnie wykorzystany do kradzieży
poufnych informacji lub przeprowadzenia ataków DoS.

W tym samym roku hakerzy porwali posiadającą dużą
odwiedzalność stronę internetową Banku Indii. Hakerzy przeprowadzili
wyrafinowany atak wykorzystujący wielokrotne przekierowania, w wyniku których
użytkownicy systemu Windows wysyłani byli na serwer, na którym został
umieszczony plik robaka pocztowego, dwa rootkity, dwa trojany downloadery oraz
trzy backdoory. Atak na stronę Banku Indii łączył zaciemniane za pomocą
JavaScript, liczne przekierowania przy użyciu ramki iFrame oraz techniki
fast-flux. Rysunek 5 pokazuje zrzut
ekranu zhakowanej strony Banku Indii zawierającej szkodliwy skrypt
wykorzystywany do przeprowadzania ataku drive-by download.

Rys. 5. Szkodliwy skrypt na stronie banku Bank of India.

Opisane wyżej przykłady ataków pokazują skalę problemu,
jaki dotyka legalne strony internetowe. Śledząc zagrożenia wykorzystujące Sieć,
firma ScanSafe ustaliła, że do połowy 2008 roku większość szkodliwych programów
została wykryta na legalnych stronach. Raport firmy ScanSafe za trzeci kwartał
2008 roku zawiera kilka interesujących faktów:

  • W trzecim kwartale 2008 roku ilość szkodliwego
    oprogramowania wykorzystującego Sieć wzrosła o 338 procent w porównaniu z
    pierwszym kwartałem 2008 r. oraz o 553 procent w porównaniu z czwartym
    kwartałem
    2007 r.
  • Około 31 procent wszystkich zagrożeń we wrześniu
    2008 roku stanowiły zagrożenia zero-day (zagrożenie zero-day to takie, dla
    którego nie istnieje żadna łata).
  • Ryzyko ze strony backdoorów i trojanów kradnących
    hasła wzrosło we wrześniu 2008 roku o 267 procent w porównaniu ze
    styczniem 2008 roku.

Osoby atakujące wykorzystywały również „zatrute” serwery
reklamowe osób trzecich w celu przekierowywania użytkowników systemu Windows
na oszukańcze serwery, na których umieszczany był kod wykorzystywany do
przeprowadzania ataków drive-by download. Te zainfekowane reklamy (ang.
malvertisement) zwykle tworzone są we Flashu i wykorzystują niezałatane
aplikacje.

Zestawy exploitów

Zestawy szkodliwych exploitów stanowią motor ataków
drive-by download. Zestawy te to profesjonalnie tworzone komponenty
oprogramowania, które mogą być umieszczone na serwerze. Są sprzedawane na
stronach hakerskich i zawierają exploity dla luk w zabezpieczeniach różnych
popularnych aplikacji dla komputerów, takich jak QuickTime firmy Apple,
programamy Adobe Flash Player, Adobe Reader, RealPlayer firmy RealNetworks oraz
WinZip.

Wykorzystywane były również exploity dla konkretnych
przeglądarek, takich jak Internet Explorer, Firefox, Safari oraz Opera. Kilka
zestawów exploitów zwierało jedynie kod umożliwiający ataki wykorzystujące luki
w zabezpieczeniach Adobe PDF lub znane błędy w formantach ActiveX.

Złodzieje tożsamości oraz inni twórcy szkodliwego oprogramowania
kupują zestawy exploitów i umieszczają je na zainfekowanym serwerze. Następnie
w stronach internetowych osadzany jest kod przekierowujący ruch na ten serwer.
Użytkowników zachęca się do odwiedzenia takich stron za pomocą spamu
rozprzestrzenianego za pośrednictwem poczty elektronicznej lub forów.

Serwer zawierający zestaw exploitów może wykorzystywać
nagłówki żądania HTTP z odwiedzin strony za pomocą przeglądarki do
określenia typu oraz wersji przeglądarki odwiedzającego, jak również jego
systemu operacyjnego. Po zidentyfikowaniu systemu operacyjnego zestaw exploitów
może zdecydować, które exploity należy uruchomić.

W niektórych przypadkach wysyłanych jest jednocześnie
kilka exploitów, które próbują atakować maszynę poprzez luki w zabezpieczeniach
aplikacji innych producentów. Niektóre z bardziej wyrafinowanych zestawów
exploitów są utrzymywane i aktualizowane o nowe exploity co miesiąc.
Zestawy zawierają interfejs, w którym przechowywane są szczegółowe dane
dotyczące udanych ataków. Dane te obejmują takie informacje, jak wersje
wykorzystanych systemów operacyjnych, państwo, w jakim znajdował się cel ataku,
które z exploitów zostały wykorzystane oraz efektywność exploitów na podstawie
ruchu do zainfekowanej strony.

Poniższa tabela pokazuje różne exploity znajdujące się w
jednym zestawie exploitów przechwyconym podczas ataku polegającego na
przekierowywaniu z wykorzystaniem JavaScript. Przykład ten pokazuje nie tylko
popularność exploitów w oprogramowaniu firmy Microsoft, ale również jednoczesne
wykorzystywanie innych programów w celu potencjalnego zwiększenia wartości
zestawu exploitów dla cyberprzestępców.

 

Exploit

Microsoft Bulletin
(jeżeli istnieje)

MDAC remote code execution

MS06-014

ShockwaveFlash.ShockwaveFlash.9 exploit

 

WebViewFolderIcon setSlice() exploit

MS06-057

Msdds.dll exploit

MS05-052

Microsoft Works exploit

MS08-052

Creative Software AutoUpdate Engine exploit

 

Online Media Technologies NCTsoft NCTAudioFile2
ActiveX buffer overflow

 

Ourgame GLWorld GLIEDown2.dll exploit

 

DirectAnimation.PathControl buffer overflow

MS06-067

 

Niezałatana monokultura

Epidemia ataków drive-by download w dużej mierze
spowodowana jest tym, że użytkownicy nie łatają systemów Windows. Z nielicznymi
wyjątkami krążące obecnie exploity wykorzystują znane luki w zabezpieczeniach
oprogramowania – takie, dla których dostępne są łaty. Z różnych powodów użytkownicy
końcowi nie spieszą się z instalowaniem niezbędnych poprawek dla
oprogramowania.

Mechanizm Automatycznych Aktualizacji Microsoftu oferuje
użytkownikom końcowym wygodny sposób łatania luk w zabezpieczeniach systemu
operacyjnego. Niestety nie można powiedzieć tego samego o aplikacjach innych
producentów. Secunia, firma zajmująca się wyszukiwaniem luk w zabezpieczeniach
oprogramowania, szacuje, że około jedna trzecia wszystkich aplikacji
zainstalowanych na komputerach jest podatna na znane ataki (wykorzystujące
luki, które zostały już załatane).

Przyglądając się istniejącym zestawom exploitów, możemy
dostrzec kilka starych luk w zabezpieczeniach, takich jak MS06-014 oraz
MS05-052, które istnieją jeszcze wiele lat po tym, jak udostępniono dla nich
łaty. (Trzeci i czwarty znak wskazuje rok publikacji biutetynu). Pakiety
exploitów wykorzystujących wyłącznie błędy w programie Adobe PDF Reader okazały
się niezwykle skuteczne mimo usprawnień procesu reagowania przez firmę Adobe na
kwestie związane z bezpieczeństwem. Innym popularnym celem exploitów jest
program Flash Player, który – zainstalowany na komputerach podłączonych do
Internetu – w niemal 100% pada ofiarą ataków, podobnie jak RealPlayer firmy
RealNetworks.

Wnioski: Jak uniknąć ataków

Na koniec warto zauważyć, że większość współczesnych
przeglądarek internetowych, takich jak Internet Explorer, Firefox oraz Opera,
zawiera mechanizmy blokujące szkodliwe programy, zapewniające systemy wczesnego
ostrzegania, które alarmują użytkowników w momencie, gdy próbują odwiedzić
zainfekowaną stronę internetową. Chociaż mechanizmy te cechują się niezłą
skutecznością, opierają się na czarnej liście, w związku z tym nie zapewniają
100% ochrony osobom surfującym po Internecie.

Najpraktyczniejsze podejście do ochrony przed atakami
drive-by download polega na zwróceniu szczególnej uwagi na zarządzanie łatami.
W szczególności użytkownicy powinni:

  • Wykorzystywać rozwiązanie do zarządzania łatami,
    które pomaga znaleźć – i naprawić – wszystkie pochodzące od innych
    producentów aplikacje zainstalowane na komputerach. Secunia oferuje dwa
    takie narzędzia – Personal Software Inspector oraz Network Security
    Inspector. Mogą one pomóc zidentyfikować niezałatane aplikacje.    
  • Wykorzystywać przeglądarkę zwierającą mechanizmy
    blokowania ataków phishingowych oraz szkodliwego oprogramowania. Zarówno
    Internet Explorer, Mozilla Firefox jak i Opera posiadają funkcje
    blokowania zainfekowanych stron. 
  • Włączyć zaporę sieciową i instalować wszystkie
    aktualizacje dla systemu operacyjnego Microsoftu. Unikać wykorzystywania
    pirackiego oprogramowania.
  • Zainstalować oprogramowanie do ochrony przed wirusami
    i innymi szkodliwymi programami i dopilnować, aby jego bazy były zawsze
    aktualne. Upewnić się, czy ich dostawcy rozwiązań bezpieczeństwa
    wykorzystują skaner ruchu internetowego, który może pomóc zidentyfikować
    potencjalne problemy związane z atakami drive-by download. 

Działania te, mające na celu zarządzanie lukami w
zabezpieczeniach, stanowią najlepszą ochronę przed atakami drive-by download.

 

Treść artykułu autorstwa Ryana Naraine’a, eksperta ds. bezpieczeństwa z Kaspersky Lab, dostępna jest pod tym adresem.