VirusTotal a testy antywirusowe
14.06.2013 10:17
Niedawno zapytano mnie, dlaczego do testów nie używamy bardzo popularnego serwisu VirusTotal co pozwoliłby nam na upewnienie się czy dany plik zawiera w sobie wirusa lub też nie. Właśnie w tym artykule chciałbym wytłumaczyć dlaczego najpopularniejszy tego typu serwis nie może być używany do wyznaczania skuteczności programów (pomijam sprawę, że materiał badawczy mamy sprawdzony od naszego partnera). Drugim pytaniem, które dręczy mojego kolegę jest:
dlaczego tak popularny program jak McAfee nie miał w swojej bazie najnowszych sygnatur wirusów a VirusTotal je posiadał?
Zacznijmy może od … końca
Odpowiadając na pytanie dlaczego dany antywirus w VirusTotal wykrywa wirusa a jego odpowiednik „rzeczywisty”, zainstalowany na dysku użytkownika w domowym systemie już nie?
Odpowiedź wydawać by się mogła jest trudna. Jednak w rzeczywistości tak nie jest. Wersje oprogramowania w VirusTotal…wersje to złe słowo w tym przypadku ;) Rozwiązania antywirusowe - nie są dokładnie takie same jak ich rzeczywiste odpowiedniki dostępne publicznie. Bardzo często producenci przygotowują specjalne silniki tylko dla potrzeb VirusTotal. Metodyka działania tych programów w tym analiza heurystyczna (lokalna i ta w chmurze) są inaczej „ustawione”. Producenci również załączają do takich silników pliki beta, co w końcowym efekcie składa się na inne „zachowanie” antywirusa niż jego pełnoprawne odpowiedniki.
A co w przypadku kiedy jesteśmy autorami oprogramowania i zauważyliśmy, że VirusTotal wykrywa w nim wirusa?
Jak pisze sam VirusTotal, nie ponoszą oni odpowiedzialności za fałszywe alarmy generowane przez programy i w takim przypadku jakiekolwiek roszczenia z tego powodu powinniśmy składać do producentów antywirusowych.
Więc skoro jesteśmy bogatsi o te informacje to kolejna kontrowersja, która również niektórym zmywa sen z powiek (no może trochę przesadziłem). Dlaczego czasami wersja oprogramowania w VT jest inna niż najnowsza wersja jego komercyjnego odpowiednika?
Po raz kolejny o dostarczonej wersji dla VirusTotal decyduje nie kto inny jak sam producent oprogramowania, więc może się ona różnić niż jego najnowszy, przeznaczony do sprzedaży produkt.
Dlaczego niektóre silniki mają stare bazy sygnatur? Dlaczego VT ich nie zaktualizuje?
Sprawa trochę bardziej złożona. Nie znam dokładnych szczegółów technicznych VT (bo i po co mieliby się tym chwalić), ale z tego co sami podają ich infrastruktura wykonuje zapytania z interwałem 15 minutowym sprawdzając czy jest coś nowego do pobrania. Dlatego też czasami może się zdarzyć, że wersje sygnatur nie są najnowsze. A druga sprawa jest ta o jakiej pisałem wcześniej. Producenci sami decydują co dostarczają dla VT w ramach ich współpracy.
I chyba najciekawsze pytanie, a przynajmniej najczęściej zadawane. Dlaczego wyniki skanowania nie są traktowane jako statystyki porównawcze programów antywirusowych?
Serwis VT nie powstał jako narzędzie do przeprowadzania porównawczych analiz antywirusowych. Jest to tylko pomoc w sprawdzaniu podejrzanego pliku / linku. VT współpracuje z laboratoriami antywirusowymi przekazując im złośliwe oprogramowanie. Także jeśli ktoś sądzi, że VT powinien służyć do testów czy to amatorskich czy profesjonalnych bardzo się myli, ponieważ:
1.Silniki zastosowane przez VT są silnikami konsolowymi, działają z linii poleceń, więc w zależności od produktu nie będą się one zachowywać tak samo jak ich pełnoprawne odpowiedniki.
2.Analiza zachowawcza czy heurystyczna może być bardziej agresywnie ustawiona.
3.Niektóre techniki wykrywania wirusów mogą być parametryzowane zgodnie z założeniami dostawcy silników antywirusowych i różnić się od „rozwiązań” domowych.
Teraz mam nadzieję, że nie będziemy ślepo wierzyć w wyniki skanowania VT.