Как это было сделано и что из этого вышло —
Первой моей идеей было воспользоваться очень интересной табличкой «Top10 file submissions (Yesterday)» на странице Stats самого VirusTotal-а. Статистики, скажем, за 3 месяца ежедневного опроса этой таблицы на самом деле вполне хватило бы для описанных целей. Но увы, таблица непредумышленно или предумышленно не работает, т.е. отображает изменяющиеся только примерно раз в месяц значения по какой-то своей внутренней логике. Недельная переписка с представителями самого VirusTotal-а закончилась тем, что факт наличия «problem» был признан, но в вольном переводе «приоритет его исправления на фоне других более актуальных проблем весьма невысок». На самом деле такому замечательному сервису можно простить и это, хотя я бы на их месте просто скрыл указанный блок со страницы статистики до момента починки.
Пришлось идти по более сложному пути: с помощью Google, wget, grep и пары самодельных скриптов с просторов Интернета (в подавляющем большинстве — с форумов с просьбами «поставить диагноз» или «рассказать как лечить») было собрано 3630 ссылок на реально проведенные с 1.1.2010 анализы VirusTotal-ом.
Что из себя представляют указанные ссылки? Специфика обращения с вопросом о вирусе на форумы в Интернет в основном такова, что анализируемый экземпляр совсем недавно начал свое распространение. Чаще всего это либо первая треть либо середина активной фазы обработки его антивирусными компаниями. Если провести анализ этих же экземпляров на текущий момент качество срабатывания будет несомненно лучше — я полагаю, близким к 80-90% — но напомню, что в моем распоряжении только ссылки (по факту — хеш-суммы), а не сами экземпляры вирусов.
Ну что же, середина жизненного цикла вируса — тоже не самое плохое время для анализа в рамках поставленной цели. В список обнаруживающих данный экземпляр антивирусов попадут продукты либо с очень быстрой обратной связью либо с хорошими эвристическими алгоритмами. Нас устраивает и то и другое. Количество антивирусов, обнаруживавших экземпляры выборки, на тот исторический момент приведено на гистограмме (ось X – количество сработавших антивирусных движков, ось Y – количество вирусных экземпляров):
График подводит к следующему неотъемлемому вопросу процесса поиска вирусов – ложным срабатываниям. Несомненно, в области графика, близкой к нулю, наряду с малоизвестными на текущий момент, но всё-таки вирусами, размещается множество ложных срабатываний (false positive):
- неоправданных подозрений со стороны эвристических алгоритмов,
- упакованных исполнимых файлов (как совершенно справедливо уточнил хабраюзер gjf)
- других неумышленных ошибок антивирусных программ.
Отделить что есть что на основе имеющихся в распоряжении данных я возможности не вижу, поэтому мною был выбран наиболее очевидный путь — установить пороговое значение для false positive. Конкретно – начиная с 8 срабатываний экземпляр считаем с высокой вероятностью вредоносным (на графике эти экземпляры выделены красным). Под указанный критерий попало примерно 2600 записей.
Ну а теперь собственно то, ради чего все эти предварительные действия производились. На основании описанной выборки из 2600 высоковероятных «свежих» вирусов вычислены средние частоты их обнаружения антивирусными движками, участвующими в VirusTotal.
Disclaimer. Приведенная статистика является одной из случайных реализаций, созданной на базе свободно доступной в сети Интернет информации. Несмотря на предпринятые меры по исключению корреляций и условных вероятностей, невозможно гарантировать с достоверностью 1,0 их отсутствие в материале в силу специфики получения выборки из сети Интернет. Статистика отражает процент обнаружения вирусных экземпляров в случайный момент времени фазы начала их распространения и не может характеризовать итоговое качество обнаружения вирусов каждым конкретным продуктом, которое несомненно является более высоким.
Антивирусный продукт | Процент обнаружения | Примечания |
---|---|---|
GData | 80,0% | |
Ikarus |
75,4% | |
Emsisoft | 74,8% | бывший «a2» |
McAfee-GW-Edition | 70,6% | бывший «SecureWeb-Gateway»; по сообщениям на форумах, работает на движке Avira |
Panda | 69,7% | имеется бесплатная версия для персонального использования |
BitDefender | 69,5% | |
AntiVir (AVIRA GmbH) | 67,9% | имеется бесплатная версия для персонального использования |
McAfee | 67,9% | |
F-Secure | 66,1% | |
NOD32 (ESET) | 63,6% | |
VIPRE (GFI Software) | 63,2% | бывший «Sunbelt» |
DrWeb | 56,5% | |
Norman | 52,8% | |
Sophos | 52,5% | |
Kaspersky | 52,2% | |
AVG | 51,8% | имеется бесплатная версия для персонального использования |
Avast | 50,8% | имеется бесплатная версия для персонального использования |
AhnLab-V3 | 48,5% | |
Symantec | 48,0% | |
Microsoft | 41,4% | бесплатен для персонального использования и в организациях до 10 рабочих станций |
Comodo | 40,7% | |
TrendMicro | 40,2% | |
PCTools | 40,0% | |
nProtect | 39,2% | |
K7AntiVirus | 37,9% | |
TrendMicro-HouseCall | 37,6% | |
Prevx | 36,6% | |
VBA32 | 31,4% | |
F-Prot | 28,7% | |
Rising | 28,2% | |
Fortinet | 26,9% | |
VirusBuster | 26,6% | |
Commtouch | 26,6% | |
eSafe | 26,1% | |
SUPERAntiSpyware | 24,0% | |
CAT-QuickHeal | 22,5% | |
ClamAV | 22,2% | |
eTrust-Vet | 21,4% | |
Antiy-AVL | 20,9% | |
Jiangmin | 20,9% | |
TheHacker | 20,2% | |
ViRobot | 15,3% |
Большая просьба — отнестись к этой публикации спокойно, без HolyWar-ов, и воспринять ее просто как очередной «альтернативный» рейтинг антивирусных продуктов. Решение опубликовать эти (полученные первоначально для внутреннего использования) результаты принято после небольшого опроса на Хабре в Q&A. Готов к конструктивной критике и к дополнениям в столбец «Примечания» таблицы.