Jak wirusy ukrywają się przed antywirusem?
2007-07-06 12:50
Przeczytaj także: Ewolucja złośliwego oprogramowania I-III 2007
fot. mat. prasowe
Rys. 6. Szkodliwy program Mailbot (Rustock) wykorzystuje strumień foldera systemowego.
Rys. 6. Szkodliwy program Mailbot (Rustock) wykorzystuje strumień foldera systemowego.
Można wyróżnić jeszcze inną rzadką technologię, która tylko częściowo kwalifikuje się do kategorii rootkitów (jednak w jeszcze mniejszym stopniu odpowiada ona innym rodzajom autoochrony szkodliwego oprogramowania omówionym w tym artykule). Tego typu szkodliwe programy nie posiadają ciała na dysku. Obecnie znamy dwóch przedstawicieli tej podgrupy: Codered, który pojawił się w 2001 r. (Net-Worm.Win32.CodeRed) i występuje w tej formie tylko w kontekście MS IIS, oraz wykryty niedawno Trojan typu "proof of concept", który przechowuje swoje ciało w rejestrze.
Obecnie technologie rootkit zmierzają w kierunku wirtualizacji i wykorzystywania funkcji systemowych - innymi słowy, przenikają jeszcze głębiej do systemu.
Zwalczanie rozwiązań antywirusowych
Szkodliwe programy stosujące aktywną obronę istniały od zawsze. Mechanizmy autoochrony obejmują:
- Przeszukiwanie systemu w celu znalezienia produktu antywirusowego, zapory sieciowej lub innego narzędzia bezpieczeństwa, a następnie przerwanie działania tego narzędzia. Przykładem może być szkodliwy program, który szuka określonego produktu antywirusowego na liście procesów, a następnie próbuje przerwać działanie tego programu.
- Blokowanie plików i otwieranie ich z wyłącznym dostępem jako ochrona przed skanowaniem plików przeprowadzanym przez oprogramowanie antywirusowe.
- Modyfikowanie pliku hosts w celu zablokowania dostępu do stron z uaktualnieniami antywirusowymi.
- Wykrywanie zapytań wysyłanych przez system bezpieczeństwa (na przykład okno zapory sieciowej wyświetlające zapytanie "Czy zezwolić na to połączenie?") oraz imitowanie klikania klawisza "Zezwól".
Co przyniesie przyszłość?
Jak podkreślają analitycy, ochrona antywirusowa nieustannie ewoluuje: od analizy plików po analizę zachowania programów. W przeciwieństwie do analizy plików, której podstawy zostały wyjaśnione w sekcji dotyczącej polimorfizmu i zaciemniania, analiza zachowań nie opiera się na pracy z plikami, ale ze zdarzeniami występującymi na poziomie systemu, jak "wyszczególnij wszystkie aktywne procesy w systemie", "utwórz plik o tej nazwie w pokazanym folderze" oraz "otwórz port wskazany przez dane przychodzące". Poprzez analizowanie łańcucha tych zdarzeń program antywirusowy może oszacować stopień, w jakim komponent generujący te procesy jest potencjalnie szkodliwy, i w razie konieczności wyświetlić ostrzeżenie.
Zdaniem specjalistów z Kaspersky Lab, analiza zachowań może być jednak myląca, jeśli chodzi o terminologię. Na przykład mechanizm analizy behawioralnej może występować pod różnymi nazwami: HIPS, ochrona proaktywna, heurystyczna lub sandbox. Jednak, jak podkreśla autor artykułu, niezależnie od nazwy, szkodliwe programy okazują się bezsilne wobec analizy zachowań. Będzie to najprawdopodobniej miało wpływ na przyszłą ewolucję szkodliwych programów.

oprac. : Aleksander Walczak / eGospodarka.pl