Ewolucja z艂o艣liwego oprogramowania: kwiecie艅 - czerwiec 2006

Alexander Gostev
Senior Virus Analyst, Kaspersky Lab

Na pierwszy rzut oka drugi kwarta艂 2006 roku wydawa艂 si臋 jednym z najspokojniejszych w ostatnich latach. Nie zaobserwowali艣my prawie 偶adnych powa偶nych epidemii robak贸w pocztowych ani sieciowych. Wi臋kszo艣膰 g艂贸wnych producent贸w oprogramowania antywirusowego opublikowa艂a wersje beta albo ca艂kowicie funkcjonalne produkty nowej generacji. Tw贸rcy wirus贸w "zrobili sobie wakacje", aby mie膰 czas na rozwijanie nowych metod zwalczania program贸w antywirusowych. W rezultacie walka rozgrywa艂a si臋 g艂贸wnie na polu rozwi膮za艅 technicznych, dlatego dla zwyk艂ych u偶ytkownik贸w pozostawa艂a w ukryciu. Czasami skutki tych ukrytych wojen dociera艂y do u偶ytkownik贸w za po艣rednictwem medi贸w. Najnowszy raport Kaspersky Lab zawiera szczeg贸艂ow膮 analiz臋 zjawisk pozostaj膮cych w cieniu wydarze艅, kt贸re przyci膮gn臋艂y uwag臋 zar贸wno u偶ytkownik贸w, jak producent贸w program贸w antywirusowych.

Liczne luki w produktach MS Office

Powszechnie wiadomo, 偶e w ci膮gu trzech ostatnich lat pojawi艂a si臋 ogromna liczba krytycznych luk w zabezpieczeniach systemu Windows. Poj臋cia, takie jak RPC DCOM, LSASS, WINS i PnP nie tylko stanowi艂y temat dyskusji administrator贸w system贸w i programist贸w, ale tak偶e przyprawia艂y o b贸l g艂owy analityk贸w wirus贸w i stanowi艂y prawdziw膮 zmor臋 dla zwyk艂ych u偶ytkownik贸w. Powa偶ne dziury w aplikacjach systemu Windows zapewni艂y tw贸rcom wirus贸w dost臋p do dziesi膮tek lub setek milion贸w komputer贸w na ca艂ym 艣wiecie. Luki te umo偶liwi艂y powstanie takich historycznych robak贸w, jak Lovesan, Sasser i Mytob, nie wspominaj膮c o setkach innych, kt贸re - chocia偶 mniej znane dla og贸艂u - stanowi艂y w rzeczywisto艣ci nie mniejsze zagro偶enie.

Stopniowo Microsoftowi uda艂o si臋 usun膮膰 do jesieni 2005 roku to morze luk. Niezwykle pomocna okaza艂a si臋 tu aktywna promocja dodatku Service Pack 2 dla systemu Windows XP. Hakerzy porzucili g艂贸wne modu艂y systemu Windows i skupili si臋 na modu艂ach drugorz臋dnych. Najbardziej widoczne by艂o to w grudniu 2005 roku, kiedy uda艂o im si臋 wykorzysta膰 luk臋 w przetwarzaniu plik贸w WMF. Inna cz臋艣膰 spo艂eczno艣ci hakerskiej skoncentrowa艂a si臋 na identyfikowaniu problem贸w bezpiecze艅stwa w rozwi膮zaniach antywirusowych i sprz臋cie sieciowym. W ko艅cu, na prze艂omie wiosny i lata 2006 zaatakowany zosta艂 MS Office, drugi z najwa偶niejszych produkt贸w Microsoftu (i najbardziej op艂acalny).

Specjali艣ci ds. bezpiecze艅stwa IT od dawna alarmowali, 偶e spos贸b, w jaki aplikacje MS Office dzia艂aj膮 z plikami OLE, mo偶e powodowa膰 problemy z bezpiecze艅stwem. Pomimo stosunkowo dobrej dokumentacji ten format plik贸w pozostaje, do pewnego stopnia, czarn膮 skrzynk膮. Istnieje zbyt wiele obszar贸w krytycznych, a interakcja pomi臋dzy polami obiekt贸w OLE posiada zbyt skomplikowan膮 struktur臋. Wszystkie te czynniki spowodowa艂y, 偶e w 2003 roku wykryto krytyczn膮 luk臋 w zabezpieczeniu dokument贸w MS Office (MS03-037). Luka ta umo偶liwia艂a wykonanie dowolnego kodu pod warunkiem otworzenia specjalnie spreparowanego dokumentu. Przez d艂ugi czas luka ta by艂a cz臋sto wykorzystywana przez liczne grupy chi艅skich haker贸w. Mamy powody przypuszcza膰, 偶e grupy te by艂y zamieszane w wydarzenia, kt贸re zosta艂y zapocz膮tkowane w marcu 2006 roku.

Luka MS06-012 dotyczy艂a wszystkich produkt贸w MS Office od wersji 2000. By艂 to pierwszy sygna艂 ostrzegawczy. Dotar艂 on nie tylko do firmy Microsoft, ale r贸wnie偶 do wielu haker贸w, kt贸rzy rozpocz臋li intensywne badania formatu dokument贸w OLE. Niestety hakerzy okazali si臋 skuteczniejsi od Microsoftu. Luki wykryte w ci膮gu trzech ostatnich miesi臋cy niewiele r贸偶ni艂y si臋 od siebie. U podstaw ich wszystkich le偶a艂 ten sam problem: b艂臋dne sprawdzanie niekt贸rych danych w opisie OLE. Microsoft opublikowa艂 jedynie ograniczon膮 艂at臋, po艣pieszn膮 poprawk臋, w kt贸rej nie uwzgl臋dniono faktu, 偶e nale偶y sprawdzi膰 r贸wnie偶 s膮siednie pola w plikach. Dzie艅 po opublikowaniu 艂aty pojawi艂y si臋 informacje o nowej luce. Jak na ironi臋 liczne problemy w MS Office, szczeg贸lnie w aplikacji Excel, ujrza艂y 艣wiat艂o dzienne niemal w tym samym czasie, gdy Google wprowadzi艂 sw贸j w艂asny arkusz kalkulacyjny.

Poni偶ej przedstawiono luki w produktach Microsoftu w porz膮dku chronologicznym (wed艂ug danych US-CERT).

  • 03/14/2006 Microsoft Office routing slip buffer overflow
  • 03/14/2006 Microsoft Excel malformed record memory corruption vulnerability
  • 03/14/2006 Microsoft Excel fails to properly perform range validation when parsing document files
  • 03/14/2006 Microsoft Excel malformed graphic memory corruption vulnerability
  • 03/14/2006 Microsoft Excel malformed description memory corruption vulnerability
  • 03/14/2006 Microsoft Excel malformed parsing format file memory corruption vulnerability
  • 05/19/2006 Microsoft Word object pointer memory corruption vulnerability
  • 06/13/2006 Microsoft PowerPoint malformed record vulnerability
  • 06/16/2006 Microsoft Excel vulnerability

Najwi臋ksze zagro偶enie przedstawia艂a luka zidentyfikowana 19 maja. Luk臋 ujawniono dopiero po odkryciu, 偶e wykorzystuj膮cy j膮 program troja艅ski zosta艂 masowo rozes艂any przy u偶yciu technik spamerskich. Oznacza艂o to kolejny przypadek, gdy tw贸rcy wirus贸w wykorzystali luk臋, o kt贸rej nikt wcze艣niej nie wiedzia艂 - jest to tak zwany exploit "zero day". Takie luki s膮 niezwykle niebezpieczne, poniewa偶 tw贸rcy oprogramowania musz膮 po艣wi臋ca膰 czas na rozwijanie i publikowanie 艂aty, pomimo tego, 偶e z艂o艣liwy kod ju偶 kr膮偶y i rozprzestrzenia si臋 poprzez Internet.

Opublikowanie 艂at na luk臋 MS06-027 (Word remote code execution) i MS06-028 (Powerpoint remote code execution) zaj臋艂o Mocrosoftowi prawie miesi膮c. Naturalnie, u偶ytkownicy przyzwyczaili si臋 ju偶 do tego, 偶e Microsoft z niemal fanatyczn膮 dok艂adno艣ci膮 trzyma si臋 ustalonego grafiku publikacji 艂at - 艂aty udost臋pniane s膮 w drugi czwartek ka偶dego miesi膮ca. By艂oby to ca艂kiem rozs膮dne, gdyby dwa dni po opublikowaniu 艂at nie zidentyfikowano niemal identycznej luki w aplikacji MS Excel. Trudno wyja艣ni膰, dlaczego podczas opracowywania 艂aty nie sprawdzono, czy istnieje podobny problem w Excelu. Trzeciego czerwca pojawi艂y si臋 dwie kolejne luki w MS Office - Microsoft Windows Hyperlink Object Library Buffer Overflow oraz Microsoft Excel 'Shockwave Flash Object'.

Po zbadaniu luk przez analityk贸w Kaspersky Lab okaza艂o si臋, 偶e u ich podstaw le偶y ten sam problem. Microsoft powinien by艂 sprawdzi膰 wszystkie pola obiekt贸w OLE (kt贸rych jest ponad 100) zamiast publikowa膰 osobne 艂aty na ka偶d膮 luk臋.

Sytuacj臋 pogarsza dodatkowo fakt, 偶e prawie wszystkie z tych luk zosta艂y po raz pierwszy zidentyfikowane przez cz艂onk贸w spo艂eczno艣ci tzw. czarnych kapeluszy (haker贸w wykorzystuj膮cych swoje zdolno艣ci do wyrz膮dzania szk贸d) i wykorzystane do rozprzestrzeniania z艂o艣liwego kodu. W tej grze tw贸rcy wirus贸w maj膮 teraz przewag臋 i znajduj膮 si臋 w doskona艂ej pozycji, aby opublikowa膰 nowe, niebezpieczne programy w Internecie.

Kaspersky Lab zaleca wszystkim u偶ytkownikom i administratorom system贸w, aby zaimplementowali i egzekwowali polityk臋 bezpiecze艅stwa odno艣nie dokument贸w MS Office; nie nale偶y otwiera膰 plik贸w pochodz膮cych z nieznanego 藕r贸d艂a i zawsze skanowa膰 je w poszukiwaniu z艂o艣liwego kodu. Naturalnie nale偶y instalowa膰 wszystkie dost臋pne 艂aty.

艁amacze kod贸w - walka z programami typu RansomWare

Tematem tym zajmujemy si臋 ju偶 od jakiego艣 czasu. Prawie wszystkie nasze poprzednie raporty kwartalne zawiera艂y szczeg贸艂y dotycz膮ce nowych program贸w RansomWare. Wirusy stosuj膮ce szanta偶, w艣r贸d kt贸rych prym wiedzie nies艂awny Gpcode, po raz pierwszy pojawi艂y si臋 na pocz膮tku 2004 roku, w nast臋pnym roku szybko ewoluowa艂y, szczyt swojej aktywno艣ci osi膮gn臋艂y natomiast w 2006 roku.

Chocia偶 autorzy takich wirus贸w ograniczali si臋 pocz膮tkowo do wykorzystywania prymitywnych algorytm贸w szyfrowania (tak jak w przypadku Gpcode'a) lub zmieniali po prostu rejestr systemu (Krotten), obecnie stosuj膮 oni bardziej skomplikowane algorytmy szyfrowania (RSA), jak r贸wnie偶 okre艣lone techniki umieszczania danych w archiwach chronionych has艂em.

Poprzednio pisali艣my o szkodniku Cryzip, trojanie atakuj膮cym ameryka艅skich u偶ytkownik贸w, aktywuj膮c dane w plikach ZIP, kt贸re chronione by艂y za pomoc膮 hase艂 o d艂ugo艣ci ponad 30 symboli. Podobne podej艣cie zastosowa艂 w Wielkiej Brytanii w maju 2006 roku trojan MayArchive. Wielu ekspert贸w antywirusowych uwa偶a, 偶e trojan ten jest po prostu nowym wariantem Cryzipa. Og贸lnie, trojany, kt贸re archiwizuj膮 dane, stanowi膮 zagro偶enie dla u偶ytkownik贸w z Zachodu; rosyjscy tw贸rcy wirus贸w stosuj膮 szyfrowanie danych g艂贸wnie do szanta偶u.

W styczniu 2006 pojawi艂 si臋 pierwszy wirus szyfruj膮cy, Gpcode.ac, kt贸ry wykorzystywa艂 zaawansowany algorytm szyfrowania. Autor wykorzysta艂 algorytm RSA w celu stworzenia 56-bitowego klucza. Z艂amanie go nie stanowi艂o 偶adnego problemu dla firm antywirusowych. To oznacza, 偶e procedury deszyfrowania zosta艂y dostarczone u偶ytkownikom, kt贸rych dane zosta艂y zaszyfrowane. Wydaje si臋, 偶e szybko艣膰, z jak膮 problem ten zosta艂 rozwi膮zany, sk艂oni艂a tw贸rc臋 wirusa do przemy艣lenia swojego podej艣cia. W czerwcu rosyjski segment Internetu zosta艂 zaatakowany przez now膮 wersj臋 Gpcode'a, tym razem jednak wykorzystywa艂 on klucz 260-bitowy. R贸wnie偶 ten d艂u偶szy klucz nie stanowi艂 problemu dla naszych analityk贸w, kt贸rzy zdo艂ali go z艂ama膰 w nieca艂e 5 minut. Rozpocz臋艂a si臋 rywalizacja - kto jest bardziej wytrwa艂y, kto ma lepsz膮 wiedz臋 z dziedziny kryptografii, kto ma dost臋p do najwi臋kszej mocy obliczeniowej? Chocia偶 autor Gpcode'a sk艂onny by艂 podda膰 si臋, firmy antywirusowe nie zamierza艂y rezygnowa膰; u偶ytkownicy potrzebowali ochrony.

Na z艂amanie 260-bitowego klucza autor Gpcode'a odpowiedzia艂 opublikowaniem kolejnej wersji. Gdy zastosowa艂 330-bitowy klucz, stawka wzros艂a i niekt贸re firmy antywirusowe podda艂y si臋. Jednak analitycy z Kaspersky Lab zdo艂ali z艂ama膰 ten klucz w nieca艂e 24 godziny.

Mimo to autor Gpcode'a wci膮偶 nie zamierza艂 si臋 poddawa膰. 7 czerwca 2006 roku tysi膮ce rosyjskich u偶ytkownik贸w pobra艂o z zainfekowanej strony na sw贸j komputer wirusa Gpcode.ag. Ten ostatni wariant wykorzystywa艂 660-bitowy klucz - najd艂u偶szy, jaki zosta艂 kiedykolwiek z艂amany. Szacuje si臋, 偶e przy u偶yciu komputera z procesorem 2,2 GHz z艂amanie takiego klucza zaj臋艂oby co najmniej 30 lat. Mieli艣my jednak szcz臋艣cie - nasi analitycy w ci膮gu jednego dnia zdo艂ali doda膰 do antywirusowych baz danych procedury deszyfrowania dla plik贸w, kt贸re zosta艂y zaszyfrowane przy u偶yciu tego klucza. W tym miejscu nie b臋d臋 wdawa艂 si臋 w szczeg贸艂y, wystarczy powiedzie膰, 偶e z艂amanie tego klucza zapisze si臋 wielkimi literami na kartach historii wirusologii komputerowej.

Chocia偶 analitycy Kaspersky Lab zaj臋ci byli tworzeniem algorytmu deszyfruj膮cego, postarali艣my si臋 r贸wnie偶, aby zamkni臋to stron臋, na kt贸rej znajdowa艂 si臋 z艂o艣liwy program. Nast臋pnego dnia strona ta nie by艂a ju偶 dost臋pna. W momencie pisania tego artyku艂u nie wykryto 偶adnych nowych wariant贸w Gpcode'a. Jednak kolejny wariant, z d艂u偶szym kluczem, mo偶e pojawi膰 si臋 w ka偶dej chwili.

Metody stosowane przez wirusa w celu rozprzestrzeniania si臋 s膮 wyj膮tkowo nowatorskie - atakowa艂 on jeden z najpopularniejszych rosyjskich portali przeznaczonych dla ludzi poszukuj膮cych pracy. Kandydaci, kt贸rzy wyrazili zainteresowanie oferowanymi miejscami pracy, otrzymywali wiadomo艣膰, kt贸ra wygl膮da艂a jak odpowied藕 na ich zapytanie, w rzeczywisto艣ci jednak zawiera艂a trojana. Zastosowanie socjotechniki zapewni艂o wysoki wsp贸艂czynnik infekcji w艣r贸d potencjalnych ofiar.

Historia Gpcode'a to prawdziwa powie艣膰 kryminalna, kt贸ra mo偶e mie膰 sw贸j dalszy ci膮g. Szczeg贸艂y dotycz膮ce tego trojana mo偶na znale藕膰 w artykule Szanta偶ysta: historia Gpcode'a w Encyklopedii Wirus贸w firmy Kaspersky Lab (www.viruslist.pl).

Sp贸jrzmy w przysz艂o艣膰 i spr贸bujmy przewidzie膰, w jakim kierunku mo偶e ewoluowa膰 wykorzystywanie szyfrowania asymetrycznego w z艂o艣liwych programach. Chocia偶 w przeci膮gu stosunkowo kr贸tkiego czasu zdo艂ali艣my odszyfrowa膰 330- i 660-bitowe klucze, klucze takiej d艂ugo艣ci ju偶 teraz wyznaczaj膮 granice wsp贸艂czesnej kryptografii. Gdyby RSA (lub inny podobny algorytm wykorzystuj膮cy klucz publiczny) zosta艂 w艂a艣ciwie zaimplementowany w nowym szkodniku, firmy antywirusowe by艂yby bezsilne, nawet gdyby do odszyfrowania klucza wykorzystano maksymaln膮 moc obliczeniow膮. Wed艂ug mnie, jedynym zabezpieczeniem jest regularne sporz膮dzanie kopii zapasowych wszystkich dokument贸w, baz danych i pocztowych. Oczywi艣cie firmy antywirusowe musz膮 nieustannie pracowa膰 nad ochron膮 proaktywn膮, kt贸ra uniemo偶liwi szkodliwym u偶ytkownikom szyfrowanie lub archiwizowanie danych u偶ytkownik贸w.

Niestety autorzy Gpcode'a, Cryzipa i Krottena wci膮偶 przebywaj膮 na wolno艣ci. Jednak nawet gdyby zostali aresztowani, nic nie powstrzyma innych agresor贸w przed zaimplementowaniem takich technologii w celu osi膮gni臋cia korzy艣ci finansowych. Z tego wzgl臋du programy z kategorii RansomWare b臋d膮 nadal przyprawia艂y bran偶臋 antywirusow膮 o b贸l g艂owy, przynajmniej je艣li chodzi o najbli偶sz膮 przysz艂o艣膰.

Skrypty polimorficzne

Termin polimorfizm stosowany jest w odniesieniu do wirus贸w komputerowych od 1990 roku. Polimorfizm ewoluowa艂 z prostego szyfrowania XOR do z艂o偶onych metamorfoz stosuj膮cych skomplikowane algorytmy, 艂膮cznie z algorytmami kryptograficznymi. Na ich temat powsta艂o wiele artyku艂贸w i rozpraw naukowych.

Wirusy polimorficzne ewoluowa艂y mniej wi臋cej do pocz膮tku 21. wieku - wtedy to tw贸rcy wirus贸w postanowili skoncentrowa膰 swoje wysi艂ki na rozwijaniu robak贸w i trojan贸w. Najwidoczniej uznali, 偶e kod, kt贸ry mutuje w celu utrudnienia wykrycia go przez rozwi膮zania antywirusowe, nie jest ju偶 technologi膮, kt贸rej potrzebuj膮.

Jednak od pocz膮tku 2003 roku tw贸rcy wirus贸w zacz臋li wykorzystywa膰 w swoich tworach kod polimorficzny. Powodem by艂o pojawianie si臋 coraz lepszych rozwi膮za艅 antywirusowych, przez co wykorzystywanie w celu ukrycia z艂o艣liwego kodu takich metod, jak pakowanie - popularne w tym czasie w艣r贸d tw贸rc贸w wirus贸w - stawa艂o si臋 coraz mniej skuteczne. Szkodliwi u偶ytkownicy odkurzyli wi臋c klasyczne wirusy polimorficzne: DarkAvenger, Black Baron i Zombie. Programy te zosta艂y zmodyfikowane przy u偶yciu nowych technik i wiedzy. W konsekwencji w Internecie zacz臋艂a pojawia膰 si臋 nowa generacja wirus贸w polimorficznych (ich liczba wci膮偶 jest ograniczona).

W ci膮gu ostatnich kilku lat analitycy wirus贸w napotykali kod polimorficzny i kod "艣mie膰", kt贸ry umieszczany by艂 w z艂o艣liwych programach w celu utrudnienia ich analizy. Na prze艂omie 2005 i 2006 roku techniki polimorficzne implementowane by艂y nawet w wirusach skryptowych (tj. robakach) - co uwa偶ane by艂o wcze艣niej za niemo偶liwe.

Firmy antywirusowe ju偶 dawno opracowa艂y szereg emulator贸w i narz臋dzi analizy heurystycznej do zwalczania polimorficznego kodu binarnego. Jednak do niedawna nie by艂o potrzeby rozwijania takich narz臋dzi dla wirus贸w skryptowych. Istnia艂o tylko kilka exploit贸w wykorzystuj膮cych luki w przegl膮darce oraz program贸w typu Trojan-Downloader napisanych w j臋zykach skryptowych. Okres rozkwitu wirus贸w skryptowych nast膮pi艂 pod koniec 20. wieku, gdy zaatakowa艂 robak LoveLetter.

Jednym z najaktywniejszych naukowc贸w zajmuj膮cych si臋 zastosowaniem polimorfizmu w skryptach by艂 australijski ucze艅 wyst臋puj膮cy pod pseudonimem Spth. Zdo艂a艂 on stworzy膰 bardzo interesuj膮cy algorytm polimorficzny Cassa - by艂 to wirus napisany w j臋zyku Java Script. Temat ten zainteresowa艂 tak偶e innych: webmasterzy chcieli na przyk艂ad wykorzysta膰 to podej艣cie do zabezpieczenia kodu swoich stron przed kradzie偶膮. Pojawi艂o si臋 kilka program贸w, kt贸re umo偶liwia艂y szyfrowanie stron html. Programy te opiera艂y si臋 na funkcjach Java Script, kt贸re deszyfrowa艂y zawarto艣膰 stron w locie, zapewniaj膮c poprawne wy艣wietlanie si臋 stron w przegl膮darce.

Programy takie skutecznie dawa艂y do r膮k szkodliwych u偶ytkownik贸w gotowe konstruktory wirus贸w; aby wykorzystywa膰 je nie trzeba by艂o posiada膰 偶adnej wiedzy z dziedziny polimorfizmu. Pojawi艂y si臋 dzieciaki skryptowe (s艂owo "skryptowy" mo偶na tutaj rozumie膰 dos艂ownie) staj膮c si臋 zmor膮 firm antywirusowych, kt贸re musia艂y znale藕膰 sposoby na pokonanie ich zaszyfrowanych exploit贸w i trojan贸w. Zadanie to komplikowa艂 fakt, 偶e tradycyjne metody emulacji nie by艂y bardzo przydatne; sprawdzanie strony internetowej w momencie 艂adowania jej do przegl膮darki i wynikaj膮ce z tego niewielkie op贸藕nienie wywo艂a艂yby skargi u偶ytkownik贸w.

Niestety, tw贸rcy niekt贸rych legalnych program贸w przeznaczonych do szyfrowania stron html posun臋li si臋 o krok dalej i ujawnili sw贸j kod publicznie. Oznacza艂o to, 偶e ka偶dy, kto chcia艂, m贸g艂 zmodyfikowa膰 niekt贸re do艣膰 silne algorytmy polimorficzne (np. HTML Guard).

W rezultacie, w ci膮gu pierwszych sze艣ciu miesi臋cy 2006 roku napotykali艣my na robaki pocztowe, takie jak Feebs i Scano, kt贸re nie tylko aktywnie rozprzestrzenia艂y si臋, ale r贸wnie偶 stanowi艂y powa偶ne zagro偶enie.

Oba robaki rozprzestrzeniaj膮 si臋 za po艣rednictwem wiadomo艣ci e-mail jako zainfekowane pliki Java Script za艂膮czone do zainfekowanych wiadomo艣ci. Wygl膮daj膮 jak standardowe strony HTML. W ten spos贸b zostaje u艣piona czujno艣膰 u偶ytkownik贸w, kt贸rzy my艣l膮, 偶e wirusy rozsy艂ane s膮 jako pliki wykonywalne lub pliki MS Office. Wi臋kszo艣膰 u偶ytkownik贸w nie uwa偶a stron HTML za wykonywalne ani za obiekty, kt贸re potencjalnie mog膮 zawiera膰 z艂o艣liwy kod.

Po otwarciu takiego pliku wykonywany jest kod polimorficzny. W rezultacie w systemie zainstalowany zostanie standardowy plik wykonywalny zawieraj膮cy cia艂o robaka. Opr贸cz innych funkcji dodatkowych, robaki zaczynaj膮 generowa膰 w艂asne kopie jako pliki Java Script. Pliki te tak bardzo r贸偶ni膮 si臋 od siebie nawzajem, 偶e nie mo偶na znale藕膰 nawet jednej identycznej kopii - spowodowane jest to funkcj膮 polimorficzn膮 robaka. Pliki te wysy艂ane s膮 nast臋pnie na adresy e-mail zebrane z komputera ofiary i ca艂y cykl zaczyna si臋 od nowa. Aby jeszcze bardziej utrudni膰 prac臋 firmom antywirusowym, autorzy tych robak贸w wypuszczali nowe warianty co dwa trzy dni.

Stare technologie zosta艂y zmodyfikowane, aby dostosowa膰 je do nowych warunk贸w. Stosuje si臋 socjotechnik臋 wykorzystuj膮c膮 fakt, 偶e u偶ytkownicy nie wiedz膮, 偶e strony html mog膮 zawiera膰 z艂o艣liwe skrypty. Opracowanie metod wykrywania takich wirus贸w jest trudne, poniewa偶 du偶e znaczenie ma tu szybko艣膰, poza tym legalnie zaszyfrowane strony mog膮 by膰 przyczyn膮 fa艂szywych trafie艅.

Chocia偶 zar贸wno technologie wirusowe jak i antywirusowe nieustannie ewoluuj膮, klasyczne podej艣cia wci膮偶 okazuj膮 si臋 najskuteczniejsze. Niestety, istnieje wiele firm antywirusowych, kt贸re s膮 zupe艂nie nowe w bran偶y i nie posiadaj膮 du偶ego do艣wiadczenia w zwalczaniu starych zagro偶e艅. Wiele nowych technologii, takich jak skanowanie ruchu http w locie, nie znajduje zastosowania w walce z wirusami polimorficznymi.

Koncepcje

Wygl膮da na to, 偶e tw贸rcom wirus贸w brakuje inspiracji. Coraz cz臋艣ciej wykorzystuj膮 starsze, prawie zapomniane technologie. Tematy wywo艂uj膮ce w ostatnich latach 偶yw膮 dyskusj臋, takie jak rootkity, botnety i luki w produktach Microsoftu, nie s膮 ju偶 niczym niezwyk艂ym. Szkodliwi u偶ytkownicy nieustannie szukaj膮 nowych metod, kt贸re mog膮 wykorzysta膰 do zainfekowania mo偶liwie najwi臋kszej liczby u偶ytkownik贸w. Najbardziej znamienne s膮 programy typu "proof of concept". By膰 mo偶e nie znajd膮 one powszechnego zastosowania w przysz艂o艣ci, wci膮偶 jednak oznaczaj膮, 偶e firmy antywirusowe musz膮 odpowiednio reagowa膰 na nowe potencjalne zagro偶enie.

Rok 2006 by艂 jednym z najp艂odniejszych okres贸w w ca艂ej historii wirusologii komputerowej pod wzgl臋dem "koncepcji". W pierwszym kwartale pojawi艂y si臋 takie zagro偶enia, jak pierwszy trojan dla J2ME (kt贸ry dzia艂a艂 na wi臋kszo艣ci telefon贸w kom贸rkowych) oraz pierwszy "prawdziwy" wirus dla Mac OS X, a nast臋pnie robak rozprzestrzeniaj膮cy si臋 za po艣rednictwem Bluetooth. Naukowcy z Michigan University, sponsorowani przez firm臋 Microsoft, stworzyli SubVirt, rootkita opartego na technologii maszyn wirtualnych. O wszystkich tych innowacjach u偶ytkownicy mogli przeczyta膰 w naszym poprzednim raporcie kwartalnym.

T臋 nietypow膮 aktywno艣膰 mo偶na wyja艣ni膰 rozbiciem nies艂awnej grupy tw贸rc贸w wirus贸w 29A. Uda艂o si臋 tego dokona膰 dzi臋ki wysi艂kom organ贸w 艣cigania na ca艂ym 艣wiecie. Grupa ta skupia艂a wcze艣niej g艂贸wnych tw贸rc贸w kodu "proof of concept". Powsta艂膮 pr贸偶ni臋 wype艂ni艂y nowe osoby, kt贸re pragn臋艂y zapisa膰 si臋 na kartach historii wirusologii.

Tw贸rcy wirus贸w nie pr贸偶nowali od naszego ostatniego raportu kwartalnego. Poni偶ej prezentujemy nowe z艂o艣liwe programy typu "proof of concept", na kt贸re natrafili艣my w ci膮gu ostatnich trzech miesi臋cy.

Zacznijmy od pierwszego wirusa dla kolejnego produktu Microsoftu - MS Publisher. Program ten jest jednym z najstarszych produkt贸w tej firmy i - jak wskazuje jego nazwa - s艂u偶y do tworzenia materia艂贸w biznesowych i marketingowych. By艂 on bardzo popularny w latach dziewi臋膰dziesi膮tych, jednak stopniowo konkurencja przej臋艂a jego udzia艂 w rynku. A偶 do teraz tw贸rcy wirus贸w nie byli szczeg贸lnie zainteresowani tym programem. Jednak pogo艅 za uznaniem sk艂oni艂a autor贸w z艂o艣liwego kodu do bli偶szego przyjrzenia si臋 temu rozwi膮zaniu. Jest ca艂kiem prawdopodobne, 偶e wirus dla MS Publishera powsta艂 tylko po to, aby udowodni膰, 偶e mo偶liwe jest stworzenie z艂o艣liwego kodu dla praktycznie ca艂ego zestawu produkt贸w firmy Microsoft.

Wirus ten zosta艂 stworzony przez Ukraink臋, znan膮 w kr臋gach tw贸rc贸w wirus贸w jako Patiavara. W kwietniu 2006 roku Patiavara wys艂a艂a swojego wirusa dla programu MS Publisher 3.0 firmie Kaspersky Lab; nazwali艣my go Avarta.

Z powodu b艂臋d贸w w procedurze rozprzestrzeniania si臋 i zbyt oczywistej funkcji destrukcyjnej Avarta nie mia艂by szans na wolno艣ci. Trzy, cztery lata temu stanowi艂by interesuj膮cy przyk艂ad zastosowania nowych technologii. Jednak makrowirusy praktycznie ju偶 wymar艂y i Avarta by艂 jedynie wirusem typu "proof of concept", kt贸ry nigdy nie m贸g艂by sta膰 si臋 rzeczywistym zagro偶eniem.

W okresie tym sporym zainteresowaniem cieszy艂y si臋 r贸wnie偶 wirusy wieloplatformowe (tj. wirusy, kt贸re mog膮 jednocze艣nie dzia艂a膰 na dw贸ch i wi臋kszej liczbie platform, na przyk艂ad w systemach Windows i Linux). Koncepcja wieloplatformowych z艂o艣liwych program贸w powsta艂a ju偶 jaki艣 czas temu; w kwietniu otrzymali艣my pr贸bk臋 najnowszego programu tego typu. Bi.a potrafi infekowa膰 pliki w bie偶膮cym folderze, okre艣laj膮c system (Windows lub Linux), w kt贸rym plik zosta艂 uruchomiony i w zale偶no艣ci od tego wykorzystuje odpowiedni algorytm do infekowania plik贸w.

Ujawniaj膮c informacje na temat Bi wywo艂ali艣my zamieszanie w spo艂eczno艣ci linuksowej. Do dyskusji w艂膮czy艂 si臋 nawet Linus Torvalds. Po tym jak zapozna艂 si臋 z wynikami analizy wirusa Bi i dowiedzia艂 si臋, 偶e kod zawiera b艂臋dy, przez kt贸re wirus ten nie m贸g艂 dzia艂a膰 w niekt贸rych j膮drach Linuksa, opublikowa艂 艂at臋. Faktem jest, 偶e wirusy wieloplatformowe dla system贸w Windows i Linux wci膮偶 pozostaj膮 w sferze zainteresowa艅 tw贸rc贸w wirus贸w, kt贸rzy bez w膮tpienia b臋d膮 nadal rozwijali ten rodzaj z艂o艣liwego kodu.

Inn膮 ciekawostk膮 by艂 Gabol, wirus atakuj膮cy pakiet Matlab, kt贸ry pojawi艂 si臋 na prze艂omie kwietnia i maja. Zosta艂 napisany we wbudowanym j臋zyku skryptowym Matlaba i mia艂 na celu infekowanie wszystkich plik贸w roboczych, zapisuj膮c swoje cia艂o na pocz膮tek ka偶dego pliku. Xic.a, kolejny wirus dla Matlaba, by艂 bardziej z艂o偶ony i wykorzystywa艂 technologie polimorficzne (patrz wy偶ej). Ze wzgl臋du na niewielkie rozpowszechnienie pakietu Matlab trudno wyobrazi膰 sobie wykorzystanie tych wirus贸w do spowodowania ogromnej liczby infekcji. Nie ma zatem w膮tpliwo艣ci, 偶e programy te zosta艂y napisane w celu pokazania mo偶liwo艣ci ich autor贸w.

Bardziej niebezpiecznym wirusem typu "proof of concept" by艂 StarDust, makrowirus atakuj膮cy StarOffice. Pakiet ten jest jednym z g艂贸wnych konkurent贸w MS Office'a i cieszy si臋 du偶膮 popularno艣ci膮 w艣r贸d u偶ytkownik贸w Linuksa. Dost臋pna jest r贸wnie偶 wersja StarOffice'a dla systemu Windows. Do tej pory makrowirusy atakowa艂y tylko pakiet MS Office. Jednak do艣膰 silny j臋zyk skryptowy u偶yty w StarOffice, jak r贸wnie偶 to, 偶e tw贸rcy wirus贸w pragn臋li pokaza膰, 偶e nie tylko programy Microsoftu mog艂y stanowi膰 po偶ywk臋 dla z艂o艣liwych program贸w, przyczyni艂y si臋 do powstania StarDusta. M贸wi膮c 艣ci艣le, szkodnik ten jest bardziej trojanem ni偶 wirusem, jednak koncepcja pozostaje taka sama. Kolejny produkt zosta艂 dodany do listy produkt贸w, kt贸re nara偶one s膮 na atak z艂o艣liwego kodu.

Najniebezpieczniejszym wirusem typu "proof of concept" w tym kwartale by艂 bez w膮tpienia robak Yamanner. Nale偶y on do bardzo nielicznej grupy robak贸w, kt贸re wykorzystuj膮 unikatowe metody rozprzestrzeniania si臋. W rzeczywisto艣ci, grupa ta zawiera tak niewiele robak贸w, 偶e ka偶dy z nich stanowi technologiczn膮 innowacj臋 i prawie wszystkie od razu pojawiaj膮 si臋 na wolno艣ci i trafiaj膮 do czo艂贸wek gazet.

M贸wimy o robakach, kt贸re wykorzystuj膮 luk臋 i b艂臋dy w silnikach skrypt贸w popularnych zasob贸w internetowych, takich jak darmowe strony emailowe i blogowe. Robaki te nie musz膮 przenika膰 do komputer贸w ofiar, aby je zainfekowa膰. Wystarczy tylko, aby u偶ytkownik uaktywni艂 z艂o艣liwy kod, w ten czy inny spos贸b, albo w wyniku przegl膮dania wiadomo艣ci w przegl膮darce, albo odwiedzenia strony zawieraj膮cej z艂o艣liwy kod. Prawie wszystkie z tych robak贸w wykorzystywa艂y luk臋 cross site scripting. Przyk艂adem mo偶e by膰 robak, kt贸ry zainfekowa艂 interfejs WWW serwisu Mail.ru, oraz SpaceHero, robak, kt贸ry w pa藕dzierniku 2005 roku zainfekowa艂 miliony blog贸w na MySpace.

W czerwcu 2006 roku prawie 200 milion贸w u偶ytkownik贸w Yahoo! Mail sta艂o si臋 potencjalnymi ofiarami tego robaka. Yamanner jest interesuj膮cym okazem, poniewa偶 aby aktywowa膰 z艂o艣liwy kod, u偶ytkownik musi tylko otworzy膰 wiadomo艣膰 e-mail w swojej przegl膮darce internetowej przy u偶yciu interfejsu WWW Yahoo! Mail. Po otwarciu wiadomo艣ci wykonywany jest skrypt, kt贸ry wysy艂a robaka na wszystkie adresy z ksi膮偶ki adresowej u偶ytkownika zawieraj膮ce domen臋 @yahoo.com lub @yahoogroups.com. Dodatkowo otwierana jest strona internetowa (kt贸ra obecnie nie dzia艂a), a ksi膮偶ka adresowa zainfekowanego konta wysy艂ana jest na okre艣lony serwer. Jedyni u偶ytkownicy Yahoo! Mail, kt贸rzy nie byli zagro偶eni, to ci, kt贸rzy wykorzystywali POP3 w celu otrzymywania poczty za po艣rednictwem osobnego klienta pocztowego. Poniewa偶 platform膮 rozprzestrzeniania si臋 robaka to JavaScript, kt贸ry obs艂ugiwany jest przez wszystkie w pe艂ni funkcjonalne przegl膮darki, pod wzgl臋dem bezpiecze艅stwa wyb贸r przegl膮darki nie mia艂 znaczenia.

Jedynym sposobem na zabezpieczenie si臋 przed takimi robakami jest wy艂膮czenie wykonywania skrypt贸w w przegl膮darce. Uniemo偶liwia to jednak korzystanie z interfejsu sieciowego Yahoo! Mail. Yahoo! podj膮艂 dzia艂ania maj膮ce na celu filtrowanie wiadomo艣ci e-mail, kt贸re wykorzystuj膮 t臋 luk臋, zmodyfikowa艂 interfejs i zach臋ci艂 u偶ytkownik贸w do przej艣cia na Yahoo Mail Beta, now膮 wersj臋 us艂ugi, kt贸ra nie zawiera tej luki.

Podobna historia mo偶e przytrafi膰 si臋 ka偶dej us艂udze internetowej. Wszystkie serwisy pocztowe, kt贸re wykorzystuj膮 interfejs sieciowy (takie jak gmail) s膮 potencjalnie nara偶one. Jedynie du偶a liczba 艂at zainstalowanych w systemie ograniczy funkcjonalno艣膰 wirusa czy robaka JavaScript. Oczywi艣cie mo偶e si臋 to wkr贸tce zmieni膰 - wraz z wykryciem nowej luki. B艂臋dy w programowaniu, kt贸re mog膮 prowadzi膰 do wyst膮pienia luki cross site scripting, s膮 niezwykle powszechne, a ich wykrycie wymaga du偶ych wysi艂k贸w.

Nie ma w膮tpliwo艣ci, 偶e granica pomi臋dzy komputerami osobistymi a zasobami internetowymi zosta艂a ju偶 dawno zburzona; komputer mo偶e nie zawiera膰 cia艂a wirusa, mimo to mo偶esz bra膰 udzia艂 w rozprzestrzenianiu z艂o艣liwego kodu poprzez samo uaktualnienie swojego blogu lub czytanie poczty. Zagro偶enie to b臋dzie powa偶ne w przysz艂o艣ci, szczeg贸lnie wraz z nadej艣ciem Web 2.0.

殴r贸d艂o:
Kaspersky Lab