Ewolucja złośliwego oprogramowania IV-VI 2006
2006-08-16 13:53
Przeczytaj także: Wirusy, robaki i trojany dla systemów Unix w 2005
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 napotykano 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.
Przeczytaj także:
Ewolucja złośliwego oprogramowania 2008

oprac. : Joanna Kujawa / eGospodarka.pl
Więcej na ten temat:
złośliwe programy, wirusy, trojany, adware, złośliwy kod, ataki internetowe, hakerzy