Burillo 的个人资料iBurillo's blog日志SkyDrive 工具 帮助

日志


1月28日

In the memory of my hard drive...

Сей записью сообщаю всему миру, что данные на моем 500-гиговом харде накрылись медным тазом.
 
Дело было так. Перед отьездом в Питер я заметил, что при работе с диском все стало виснуть. Проверка показала присутствие нечитаемых секторов. Часть данных я вытащил (ОЧЕНЬ маленькую часть) и уехал, надеюясь там все же вернуть хард к жизни. После нескольких запусков CHKDSK в режиме корректировки ошибок хард стал более-менее работать, и я решил его разделить - 400 гиг на данные и оставшуюся сотню на свободное место... Выбор мой пал на Norton Partiotion Magic 8.0. Основная партиция имела метку HDD, дополнительная должна была иметь HDD2. Процесс проходил нормально, однако под конец софтина выдала ошибку, в результате которой грохнулась моя основная партиция и на ее месте оказалась только что созданная HDD2, с размером 400 гиг вместо положеных ей 100, а вторая партиция вообще так и осталась Unallocated. Короче, данным пришел конец. Сейчас за моей спиной на полу лежит ноутбук с запущенным на нем OnTrack Easy Recovery и ищет остатки файлов... Хотя восстанавливать файлы таким образом - не самая лчшая идея в смысле удобства, скорости и результата... Да и восстанавливать некуда, на ноутбуке всего 5 гиг свободных... Короче, прощай дерьмо, накопленное за несколько лет...
 
В честь такого события во время написания этих строк играет Guns 'n' Roses - November Rain.

1月6日

Some AV tests.

I recently got ~40000 malware samples, so i decided to test COMODO AntiViruSpyware Beta 2.0. Set up a VM, downloaded latest AV software distributions and ran the tests. To make it clear, i also decided to test Kaspersky Internet Security 7 and NOD32 v3.0 antivirus capabilities and to compare the results with CAVS ones. I am certainly not trying to pretend being some virus expert. Just been doing these test for myself and thought - why not make them public? I did my best not to be biased.

----------------------------------------------

DISCLAIMER

I am not an employee of COMODO, ESET or Kaspersky Labs. I don't even have a job yet.

The process of testing COMODO AntiViruSpyware and KIS7 was being done on a ultra-fresh (nothing but AV installed) nlited XP Home SP2 inside VM, WITHOUT any network connection - that is, AV and it's DB's were outdated, so the test will be rerun with the remaining undetected files as soon as possible. NOD32 testing was being done on a physical machine with more recent (but still outdated) databases.
Also, all 5 tests were run three times each - one to clear out signature-detected samples, second one to determine how many additional threats AV can find with maximum heuristics enabled, and the last one - to test AV disinfecting capabilities.

I must make some corrections:

 

  • CAVS test was run three times. One without heuristics, one with maximum heuristics and one to check it's disinfecting capabilities.
  • KIS7 test was run three times also, but i couldn't determine how many threats KIS7 really detected with heuristics. In fact, i don't even know how much it detected relying solely on signatures (read notes below)! KIS7 test results are about ~90-95% accurate.
  • NOD32 test was run three times, but it was different. One - relying only on signatures. Second one - extended signatures (spyware/riskware etc). And third one - with solely heuristics enabled. There is no way to determine how much NOD32 has disinfected since in NOD32's terminology "cleaning" is either disinfecting or deleting. NOD32 test results are probably ~70-90% accurate.

----------------------------------------------

Test results:

 

 

NOT-A-VIRUS

WORM

VIRUS

TROJAN

MALWARE

OVERALL

COMODO AntiViruSpyware 2.0 Beta

73/116

disinfected 0

1740/2350

disinfected 11

13424/23573

disinfected 1228

6746/9346

disinfected 4

1365/2035

disinfected 3

23348/37420

ESET NOD32 Antivirus v3.0

39/116*

disinfected N/A

2144/2350*

disinfected N/A

/23573*

disinfected N/A

8700/9346*

disinfected N/A

1641/2035*

disinfected N/A

/37420*

 

Kaspersky Internet Security 7.0

114/116*

disinfected 6*

2334/2350*

disinfected 83*

23544/23573*

disinfected 16424*

9325/9346*

disinfected ~1200*

2007/2035*

disinfected 205*

37324/37420*

* - read notes.

NOD32 v3.0 approximate scanning results:

  NOT-A-VIRUS WORM VIRUS TROJAN MALWARE OVERALL
Signatures 38/116** 1904/2350** 5707/23573** 8492/9346** 1434/2035**

/37420**

Extended 0/78** 0/446** - 1/854** 190/601** **
Heuristics 1/78** 240/446** - 207/853** 17/411** **

** - note that these results are based on "remaining" files. But it's obvious that in case of viruses the "detected" samples count is way too low, which makes me think that most part of them are not viruses, but "cleaned" leftovers.

While in testing process, i noted some interesting things thad made me to correct disclaimer and later write lots of other stuff that made this "article" so huge.

Note 1: Some of infections detected by COMODO AntiViruSpyware (CAVS) and NOD32 (probably KAV too) were mislabeled (wrong signature?)

Note 2: I was unable to clean three samples with OneHalf virus with NOD32. AV said they were cleaned when they were not

Note 3: As a relatively new software on the market, given the "rogue" antivirus problem, i had to ensure that CAVS itself is not malware and is not cheating. The testing process revealed that it's highly unlikely that CAVS is cheating in any way (one scan on one VM, three scans on another - no difference) and it's certainly not a malware.

Note 4: CAVS' heuristics give a somewhat false sense of security - NOTHING was detected by heuristics. (Last week i did a quick test and when i enabled high heuristics - CAVS found additional 15 viruses. I don't know why did CAVS detect 15 more viruses after setting heuristics to "high" while it did not detect a single one during the present test, maybe definitions update occured while i was scanning?).

Note 5: Accurate testing of KIS7 (and probably NOD32) is not possible.

I've been doing this test for four nights and discovered some things that i must take into account while interpreting the testing results. The first thing is the fact that KIS7 scans inside packed/joint files. Thus it can detect multiple threats in one file, greatly adding the number of detected threats (e. g. finds 3 threats in 1 packed file, so that counts as 3, not as 1). This makes it impossible to rely on it's report since the detected threats count is even greater than samples count.

I was relying on the "remaining files" count (the ones KIS7 didn't kill, assuming they were not detected) until i found out another interesting thing. I was searching through "Options" and found the option that turns on "Riskware" detection. Then i decided to test how many "riskware" it can detect within the remaining undetected files (by that time the testing was almost finished, i had a list of undetected files which i planned to scan upon definitions update). I knew there were 16 previously undetected files in "other malware" directory and i ran a scan on that. KIS7 detected some additional "riskware", i deleted (not disinfected!) it... BUT! The remaining files count was still 16! That is - KIS7 didn't delete the infected files, it deleted infections inside packed files instead! This means that the "remaining" files are not necessarily malicious! This probably put in doubt all of my test results (which were relying on the remaining files count rather than on scanner's results) and i gave up testing KIS7. However, the overall detection rate was about ~98-99%. (it is generally possible to determine disinfected file from real malware by it's filesize (assuming malware can't be 50 bytes size), but that's not accurate too (who knows, maybe it can!). I have not enough knowledge to determine real malware from the remainings of a packed file).

The problem gets even worse when it comes to NOD32. Though i use NOD32 for more than a year now, i never had an opportunity to test it properly (just "set and forget"). And now i did. This piece of software definitely seriously lacks configurability. There are three major issues with NOD32 version 3.0 (these problems do not apply to NOD32 v2.7 so i'll switch back to 2.7 and retest).

The first one is cleaning mode. I can't set it to delete every infected file (like in KIS or CAVS), i can't set it to only clean and not to delete infected files (like in KIS or CAVS) - i can't customize this at all. All i have is - "no action", "default action" (doesn't delete infected files within archives with legitimate files) or "strict cleaning" (cleanes out everything). If i just want to delete all it can detect - i can't, it still disinfects everything it can disinfect.

It's the nature of viruses - generally they can infect files without destructing them, so it is possible to revert the changes made by virus. That's why NOD32 has ridiculously low detection rate with viruses.

The second one is it's cleaning habits. It is acceptable when AV doesn't attempt to clean files with "system" attributes set (to prevent possible damage to Windows) but there must be an option to clear out literally everything, even if it will kill the system. I spent a night trying to figure out why NOD32 does not automatically clean everything even in "strict cleaning" mode and keeps asking "clean, delete or leave" with almost every threat it detects. Still, even after removing attributes it couldn't clean some threats without my permission, most likely because infected files inside packed/archived files had "system" attributes set. (the more i use console - the more i realize it can't be replaced with all that GUI stuff. Just a simple console command - and all "system" attributes of 23'000 files are cleared, no lags, no hangs. An attempt to remove these from the GUI (through properties window) crashed Explorer (since reading attributes for 23'000 files ain't that easy)

And the third one, finally. The quarantine. NOD32 puts everything in there. After running a test on ~40'000 viruses i have a HUGE quarantine that i can't even clean. Oh yes, i can, but deleting ~30'000 files one by one ain't that much of a fun, you know.

 

CONCLUSION

Right now the best signature-based AV solution is Kaspersky's Antivirus. Hourly updates, reasonable speed (version 7 MUCH faster but still bloatware IMO, that's why i don't use it), second to none protection from known threats, greatest configurability... Still, i don't have fellow virus writers to ask them to test KAV on new malware that is supposed to be detected by heuristics, and that's where the real challenge must take place.

A couple of words about primary subject of this testing - COMODO AntiViruSpyware Beta 2.0. Overall detection rate is not that good for everyday use and heuristics are nothing more than a tick in the "options" menu. However, it is new, and it has perspectives. And this nice piece of software is free (Never tried free Avira or Avast but probably will. Later). Also i strongly suggest you to try out COMODO firewall. Works fine with NOD32 (probably one has to disable NOD32's proxying to be able to use any firewall (except ESET's) properly), works fine with other AV software (with minor issues sometimes, better check out COMODO forums before installing anything)... And after some spiritual dancing it can even live in peace with Kaspersky (never tried though, but people say they can live together).

As for NOD32... I used to believe it's the perfect solution for me - detects all "in-the-wild" viruses (numerous VB100's), is believed to have best heuristics (latest tests point on Avira, though all tests are different), is fast and lightweight and highly configurable. Not that now i'm disappointed and going to ditch NOD32, no. I just wear no pink glasses anymore. No AV can achieve 100% detection, but NOD32 is nowhere near 100% (unlike KAV). It's heuristics certainly detect something (even with signatures completely disabled it still can see about 40% or so), but i can't really test that so i'll stay neutral here. As for speed - i didn't notice when that happened, but NOD32 ain't that fast and lightweight anymore. Yes, it's scan speeds are still far superior than everything else (including CAVS) but since it places everything in quarantine before doing anything with the infected file, cleaning speeds are now slow as hell! Configurable... Yes, configurable, but again nowhere near KAV in terms of configurability. Still, it's an ideal solution for me since i am a power user and don't have a problem in terms of security conciousness (sometimes i'm a little paranoid though). But, with reasonable detection rates of known threats - why not use CAVS then? It's lighter, somewhat faster (NOD32 will be faster than everything else again when the developers remove that stupid "quarantine everything" feature) and it's free... Of course CAVS has that uber-cool heuristics feature, but nevertheless. Unknown threats are no problem to me since i have a truly powerful COMODO Firewall v3.0 with it's second to none HIPS features, so i kinda don't need a powerful AV software to catch something attempting to crawl inside.

P. S. every single letter in this huge text is my private opinion. I am solely responsible for my own words. No harm was meant, just my own observations, not necessarily 100% correct. Any comments are welcome.

Тест антивирусов

Недавно надыбал около 40'000 образцов всякой дряни и решил потестить COMODO AntiViruSpyware Beta 2.0. Собрал виртуальную машину, скачал последние дистрибутивы и прогнал тесты. Для честности и обьективности, я решил проверить антивирусные способности Касперского 7 и NOD32 v3.0 и сравнить. Я не пытаюсь строить из себя эксперта. Просто делал тесты для себя и подумал - а что плохого в том, чтобы их опубликовать? Постарался быть как можно более обьективным.

----------------------------------------------

ДИСКЛЕЙМЕР 

Я не работаю на COMODO, ESET или Лабораторию Касперского. Я пока вообще не работаю.

Тестирование COMODO AntiViruSpyware и Антивируса Касперского проводилось на свежайшей (ничего кроме антивирусника не устанавливалось) оптимизированной с помощью nLite операционной системы Windows XP Home SP2 внутри виртуальной машины, БЕЗ доступа в интернет - то есть, антивирусные базы были устаревшие, поэтому тесты будут прогнаны повторно после установки апдейтов. Тестирование NOD32 производилось на реальной машине с кучей установленного софта и более свежими (но тоже устаревшими) базами.
Все пять тестов проходили по три раза каждый - первый только на сигнатурах, второй с максимальной эвристикой, третий - посмотреть сколько антивирь сможет вылечить.

Несколько исправлений:

 

  • Тест CAVS был пройден три раза. Без эвристики, с эвристикой и с дезинфекцией.
  • Тест KIS7 также был пройден три раза, но невозможно точно узнать сколько KIS7 засек на эвристике. Более того, я даже не знаю сколько точно он засек просто на сигнатурах (читайте заметки ниже)! Результаты тестов KIS7 точны примерно на ~90-95%.
  • Тест NOD32 был пройден три раза, но по другому. Первый - только сигнатуры. Второй - расширенные сигнатуры (потенциально опасное ПО и т д). Третий - только эвристика. Причем каждый тест проходился не заново, а после предыдущего (то есть эвристика искала лишь то, чего не нашли сигнатуры). Нет способа узнать сколько NOD32 смог вылечить потому что в терминологии NOD32 "вычищение" - это и удаление, и дезинфекция. Тесты NOD32 точны примерно на ~70-90%.

----------------------------------------------

Результаты:

 

 

НЕ-ВИРУСЫ

ЧЕРВИ

ВИРУСЫ

ТРОЯНЫ

ОПАСНЫЕ

ВСЕГО

COMODO AntiViruSpyware 2.0 Beta

73/116

очищено 0

1740/2350

очищено 11

13424/23573

очищено 1228

6746/9346

очищено 4

1365/2035

очищено 3

23348/37420

ESET NOD32 Antivirus v3.0

39/116*

очищено N/A

2144/2350*

очищено N/A

/23573*

очищено N/A

8700/9346*

очищено N/A

1641/2035*

очищено N/A

/37420*

 

Kaspersky Internet Security 7.0

114/116*

очищено 6*

2334/2350*

очищено 83*

23544/23573*

очищено 16424*

9325/9346*

очищено ~1200*

2007/2035*

очищено 205*

37324/37420*

* - читать заметки.

Прибилизительные результаты сканирования NOD32 v3.0:

  НЕ-ВИРУСЫ ЧЕРВИ ВИРУСЫ ТРОЯНЫ ОПАСНЫЕ ВСЕГО
Сигнатуры 38/116** 1904/2350** 5707/23573** 8492/9346** 1434/2035**

/37420**

Расширенные 0/78** 0/446** - 1/854** 190/601** **
Эвристика 1/78** 240/446** - 207/853** 17/411** **

** - результаты основаны на количестве оставшихся файлов. Однако очевидно, что например для теста с вирусами NOD32 "не детектировал" слишком много образцов, что заставляет предположить, что большая часть из них является "остатками" вычищеных файлов.

Во время тестирования я заметил несколько интересных вещей, которые заставили меня подправить дисклеймер и написать кучу всего, что и сделало эту "статью" такой громадной.

Заметка 1: Некоторые образцы, детектированные COMODO AntiViruSpyware (CAVS) и NOD32 (KAV тоже) имели неправильное название (неправильная сигнатура?)

Заметка 2: NOD32 отказался удалять три образца с вирусом OneHalf. Точнее, он говорил что он их удалил, а при повторном сканировании снова находил.

Заметка 3: Учитывая, что CAVS является достаточно новой программой, и наслышавшись о "плохих" антивирусах, нужно было удостовериться, что CAVS сам по себе не является вирусом и не дает ложных срабатываний на чем попало. Процесс тестирования выявил, что чрезвычайно маловероятно наличие вредоносного кода в самом антивирусе, а несколько тестов, произведенные на разных машинах над одними и теми же файлами не оставили в "честности" CAVS никаких сомнений.

Заметка 4: Эвристика CAVS не дает ровным счетом НИЧЕГО. (На прошлой неделе я провел быстрый тест и после выставления высокой эвристики антивирус нашел еще 15 вирусов. Я не знаю почему это произошло. Единственная возможная причина - он проапдейтился пока я сканировал.)

Заметка 5: Точный подсчет результатов для KIS7 и NOD32 невозможен.

Я четыре вечера проводил эти тесты и обнаружил некоторые вещи, которые нужно учесть при интерпретации результатов тестирования. Первая вещь - это тот факт, что Касперский сканирует внутри пакованых/склееных файлов. Поэтому он может детектировать несколько заражений внутри одного файла, сильно увеличивая количество детектированных заражений (например 3 заражения на один файл, не одно). Это делает невозможным использование в качестве источника результатов отчет антивируса, так как обычно число детектированных заражений даже больше, чем количество образцов.

В процессе составления таблицы результатов для Касперского я опирался на количество оставшихся файлов - то есть тех, которые остались после удаления (подразумевалось, что они не были детектированы Касперским). Так было до тех пор, пока я кое что не обнаружил. Я рылся в настройках, и в одном из пунктов меню я нашел включение детекта т. н. "опасного" ПО - то есть ПО, которое не является вредоносным, но может нанести вред при неправильном использовании. Затем я решил проверить - как много "опасного" ПО Касперский найдет среди оставшихся файлов? Я прогнал касперского по папке с 16 файлами (в папке с опасным ПО), он обнаружил еще 4 заражения, я велел их удалить... Но при проверке той папки оказалось, что число оставшихся файлов по прежнему равно 16! Таким образом я выяснил, что Касперский не удаляет пакованные заражениями файлы, он удаляет сами заражения внутри пакованых файлов! Это означает, что "оставшиеся" файлы - не обязательно вредоносны! Это поставило под сомнение все полученные мною результаты и я решил просто прервать тестирование Касперского. Общий процент детектирования был около 98-99 процентов. (теоретически возможно определить "дезинфицированный" файл от недетектированного по размеру файла (подразумевая, что вредоносный код не может быть размером 50 байт) но это не дает гарантии точности результатов (потому что вдруг вредоносный код МОЖЕТ быть размером 50 байт?) У меня недостаточно знаний чтобы отличить недетектированный файл от остатков пакованного).

С NOD32 проблемы еще хуже. Хотя я использую NOD32 уже более года, я никогда по-настоящему не тестировал его (просто "поставил и забыл"). А теперь вот протестировал. Эта программа сильно страдает от недостатка возможностей ее настройки. Имеется три главных претензии к NOD32 v3.0 (эти проблемы не распространяются на NOD32 версии 2.7, так что я думаю снести третью и поставить 2.7).

Первая - это собственно его антивирусные способности. Точнее, их тонкая настройка. Я не могу заставить его удалять все зараженные файлы, я не могу его заставить только лечить файлы, а неизлечимые не трогать (все это есть в Касперском и COMODO). Все, что у меня есть - это "без вычищения" (не лечит ничего, вопросы задает потом), "стандартное вычищение" (вычищает или удаляет все, кроме заражений в архивах, в которых содержатся и незараженные файлы) и "полная очистка" (вычищает все). Если я просто хочу удалить все, что он найдет - я не могу, он все равно будет дезинфицировать то, что сможет.

Такова природа вирусов - большая часть из них может заражать файлы, не разрушая их, а значит изменения обратимы. Это является причиной смехотворно малого процента детектированных "Нодом" вирусных угроз - NOD32 вычищает вирусы из файлов вместо того, чтобы их удалить.

Вторая претензия по поводу все того же дезинфектора. Это нормально, когда антивирусник не предпринимает никаких действий, когда речь заходит о заражении системных файлов (чтобы предотвратить повреждение ОС вследствие такого "лечения"), но все равно там должен быть пункт о вычищении всего, что он найдет, даже если это убьет систему. Почему? Я целый вечер пытался понять почему NOD32 в режиме "полной очистки" все равно спрашивает меня о действиях над некоторыми заражениями. Даже после очистки всех аттрибутов антивирус спрашивал меня о действии над некоторыми зараженными файлами, и единственное обьяснение, которое я вижу - файлы внутри пакованых архивов помечены как системные. (чем чаще я пользуюсь консолью - тем больше я осознаю, что графический интерфейс никогда ее не заменит. Простая текстовая команда - и все пометки "системный файл" сняты у 23'000 файлов, находящихся в директории, и при этом никаких тормозов. Попытка сделать это через графический интерфейс (в свойствах файлов) просто обвалила Explorer (прочитать аттрибуты 23 тысяч файлов не такая уж и простая задача)

И третья претензия. Карантин. NOD32 пихает туда всё. После прогона теста по сорока тысячам вирусов у меня имеется ГРОМАДНЫЙ карантин, который я даже очистить не могу. О, да, я могу, но поочередное удаление 30'000 файлов это не самое веселое занятие, знаете ли.

 

ЗАКЛЮЧЕНИЕ

На данный момент лучшим сигнатурным детектором является продукт Лаборатории Касперского. Ежечасные обновления, приемлемая скорость (версия 7 НАМНОГО быстрее но все равно монструозная, и это главная причина, по которой я его не использую), лучшая защита от известных угроз, огромная гибкость в настройке... К сожалению, у меня нет знакомых вирусописателей, чтобы проверить эвристические способности Касперского - а ведь это на сегодняшний день и должно являться главным критерием оценки - способность бороться с неизвестными угрозами.

Пара слов о, собственно, цели тестирования - об антивирусном продукте COMODO AntiViruSpyware Beta 2.0. Общий процент детектирования пока не позволяет его рекомендовать, а его эвристика - не более чем галочка в настройках. Но - он новый, и у него есть перспективы. И эта приятная программа бесплатна (не пробовал бесплатные Avira или Avast, но собираюсь попробовать. Позже). Также я настоятельно рекомендую попробовать COMODO Firewall Pro. Хорошо работает с NOD32 (чтобы с "Нодом" нормально работал любой (кроме их собственного) файрволл нужно отключить его функции прокси), дружит с другими антивирусами (иногда возникают проблемы, так что лучше сначала зайти на форумы COMODO)... А после некоторых танцев с бубном "Комод" начинает дружить и с Касперским (не пробовал, но люди говорят их можно помирить).

Что же касается NOD32... Я всегда думал, что это - идеальное решение для меня - детектирует все вирусы, водящиеся в Интернете (несколько наград VB100), считается, что "Нодовская" эвристика - лучшая (хотя последние тесты говорят в пользу Avira... Но вы же знаете эти "тесты"...), является быстрым и не тормозит систему, гибкий в настройках... Не то чтобы я разочарован и собираюсь его снести, нет. Просто не смотрю больше на него сквозь розовые очки. Ни один антивирус не может дать 100% детекта, но NOD32 даже близко к 100 не подобрался (в отличие от Касперского). Его эвристика действительно что-то детектирует (даже с полностью выключеным сигнатурным поиском он детектирует около 40% угроз), но так как я не могу по-настоящему протестировать эвристику - я останусь нейтральным. Что же касается скорости - я не знаю когда это произошло, но NOD32 больше не "быстрый и легкий". Да, скорости его сканирования оставляюет всех далеко позади (включая CAVS), но так как он помещает все в карантин, прежде чем что то сделать с инфекцией - скорости вычищения ужасно медленные. Гибкий в настройках... Да, гибкий, но опять же, Касперский оставляет его далеко позади в смысле гибкости. И все равно, для меня это решение является идеальным, так как я достаточно продвинутый пользователь и с безопасностью у меня нет проблем (впрочем иногда дохожу и до паранойи). Но, учитывая неплохие результаты по детектированию известных вирусов - почему бы тогда не использовать CAVS? Он еще легче, в каком то смысле быстрее (NOD32 опять будет быстрее всех когда разработчики уберут эту глупую схему "все в карантин") и он бесплатен... Конечно же, у CAVS имеется мега-крутая эвристика, но тем не менее. Неизвестные вирусы для меня не проблема, так как я использую COMODO Firewall v3.0 с его непревзойденными функциями HIPS... Так что мне не нужен сильный антивирусник, чтобы поймать нечто, пытающееся меня поиметь.

P. S. каждая буква в этом тексте является сугубо моей точкой зрения. Я и только я несу ответственность за свои собственные слова. Ничего плохого не имелось в виду, просто мои наблюдения, не обязательно истинные. Комментарии приветствуются.