Тест антивирусов на поддержку упаковщиков II (подготовка) - Тесты и сравнения - Форумы Anti-Malware.ru Перейти к содержанию
Сергей Ильин

Тест антивирусов на поддержку упаковщиков II (подготовка)

Recommended Posts

Сергей Ильин

Коллеги, мы реанимируем идею проведения очередного теста антивирусов на поддержку упаковщиков. Как вы знаете, первый тест антивирусов на поддержку пакеров был опубликован еще в Августе 2006. Второй, к сожалению, сорвался по различным причинам.

Я помню, что методология этого теста подверглась критике, особенно представителями зарубежных вендорами Eset и F-Prot и нашим Доктором Вебом. Поэтому надеюсь на вашу помощь в выработке/доработке методологии.

Планируемые нововведения (отличия от предыдущего теста):

1. Пакеров будет больше, будут использоваться различные версии (Т.е. исключительно свободные или ломанные/зарегенные тулзы

все версии, способные генерить на выходе exe-шники безо всяких демо-сообщений и т.п. + сломанные и "расковырянные" именнно для упаковки малвары) Всего будет около 140 наименований упаковщиков и порядка 300 версий.

2. Вредоносы будут браться наиболее редкие, но детектируемые всеми, чтобы максимально исключить вероятность детект поверх пакера.

3. Из списка продуктов будет удалены UNA и CA.

4. Вероятнее всего будет изменена система оценки результатов. Будет градация (Полная поддержка - Частичная поддержка - Отсутствие поддержки).

5. Будет произведена проверка на ложные срабатывания

6. Частично будет изменены критерии для присуждения наград.

Этот тест будет проводить NickXists уже в самое ближайшее время.

Релиз - декабрь 2007.

**************************************

Если ли какие-то еще пожелания или замечания по тесту?

Готов ответить на любые вопросы. Надеюсь, что их будет много.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NickXists

Относительно F-Prot:

откровенно порадовало добавление правил эвристики "Eldorado"

( http://forum.f-prot.com/index.php/topic,737.0.html )

и сопутствовавшее данному факту более или менее внятное наименование найденного

(по сравнению с ранее виденным "кажется, я что-то нашел" aka "[Found possible virus] <{no name} (not disinfectable)>", значительно осложнявшим трактовку результатов)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
DWState

Настройки всех я так понимаю будут на максимум дабы опять таки исключить лишние вопросы позже.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NickXists
Настройки всех я так понимаю будут на максимум дабы опять таки исключить лишние вопросы позже.

Да, конечно: все продукты будут настроены на макс. эффективность проверки.

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

По этому поводу есть небольшой вопрос отн-но

Vba32 и F-Prot

У Vba32 есть следующие настройки

.../PM[+|-]             - thorough check mode (VERY slow);/HA=[0|1|2|3]        - heuristic analysis level (0 - disabled, 2 - maximum);...

/PM+ замедлял процесс проверки примерно на 1/4

(а в итогах, в числе прочего, указывается и время проверки)

При иcпользовании крайнего значения /HA увеличится число ложняков (например, av подозревает Pinch-а там, где он и рядом не валялся)

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

Аналогично с F-Prot:

при задирании "уровня" эвристики в крайнее положение существенно увеличится число ложняков, но, вероятно, что-то будет и "зачтено"

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

Как правильнее мерять : ) ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dan

И так и так.

И на настройках по умолчанию и на максимальных.

Заодно увидим качество настроек каждого вендора.

Насколько хорошо был выбран уровень по умолчанию ;) .

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Сергей Ильин

В идеале было бы здорово проверить при дефолтовых и максимальных настройках. Думаю тут много бы всего интересного вылезло, особенно по фолсам.

Единственное, это заметно увеличит время тестирования и обработки результатов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Umnik

За каждый фолс - 0,5 штрафных балла.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NickXists

Согласен, при проверке при (настройках по default-у) / ("выкрученных" на максимум) статистика получилась бы еще интереснее.

Время обработки результатов увеличится (не в два раза, но в >> 1.5 точно).

В принципе, при наличии достаточного интереса ничто не мешает сделать так.

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

Добавлено спустя 19 минут 15 секунд:

За каждый фолс - 0,5 штрафных балла.

Если на грубом примере.

Проверка на определенной версии распространенного (для защиты вполне легального софта) протекторе N дала результат вида:

- продукт A - детект 40 из упакованных 100 файлов; фолсов 0;

- продукт B - детект 60 из упакованных 100 файлов; плюс 20 фолсов

(Грубо говоря: если упаковать блокнот с настройками A...B...C - он будет определен, например, как Trojan.x.x)

Что лучше для пользователя?

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

На мой взгляд, система штрафных баллов в данном случае - не лучший вариант, а пропорции - спорны.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Сергей Ильин

Штрафовать не стоит. Правильнее в выводах четко отметить, за счет чего достигается высокий детект упакованных зловредов у некоторых антивирусов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Umnik

Хорошо. Согласен. Но упоминать о фолсах все-таки стоит. Ибо из-за фолса пользователь может снести любимое ПО.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
DWState

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dan

По моему, если антивирус фолсит на упакованный каким то пакером объект, то поддержка данного пакера спорна ;) .

Если только пакер не малварный, типа NSAnti.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NickXists

1.) Фолсы не учитываются при подсчете результатов

в_следующем_смысле:

на примере

"продукт B - детект 60 из упакованных 100 файлов; плюс 20 фолсов"

в результатах по данной версии данного пакера будет фигурировать

60/100

Фолсы - отдельной таблицей.

По моему, если антивирус фолсит на упакованный каким то пакером объект, то поддержка данного пакера спорна ;) .

Если только пакер не малварный, типа NSAnti.

В этом случае для данного продукта в соотв. поле будут цифры.

Например:

Таблица "Результаты детекта" -> : 60/100

Таблица "Ложные срабатываения" -> 20/100

Как вам такой вариант?

dan, и еще один момент : )

является ли, например, ExeCryptor (не ломанный exe-шник, а честно : ) зарегенный на, к примеру, Джона Ли Хукера) малварным пакером ?

И является ли реакция Kav вида "Packed.Win32.CryptExe..."

на все файлы, им "запротекченные" чем-то, отличным от фолса?

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

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

2.) время будет указано как "факультативный" : ) параметр.

Просто для сведения:

"Вот за такое время продукт A проверил тестовый набор,

а за такое - продукт B на той_же_системе, в ~тех_же_условиях"

(влияние колебаний влажности воздуха, лунных приливов и увеличения поголовья тушканов в Мексике в расчет не принимаются : )

На результат теста пакеров данное число не влияет и ни в какие суммы не входит.

Если тест дает такую информацию, отчего бы ее не показать...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Сергей Ильин

Я считаю, что срабатывание на запакованный любым пакером Нотепад - фолса :-) Будем забираться уже по факту, хотел этого производитель или нет, малварный пакер или нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dan
dan, и еще один момент : )

является ли, например, ExeCryptor (не ломанный exe-шник, а честно : ) зарегенный на, к примеру, Джона Ли Хукера) малварным пакером :) ?

И является ли реакция Kav вида "Packed.Win32.CryptExe..."

на все файлы, им "запротекченные" чем-то, отличным от фолса?

Если это "скарденная" версия пакера, которую использовали исключительно вирмаки, то почему бы не задетектить.

А если детектить всё подряд запакованное купленной тулзой, то конечно 100% фолса.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NickXists

-> dan:

ok. Спасибо, понятно

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Сергей Семашко
По этому поводу есть небольшой вопрос отн-но

Vba32 и F-Prot

У Vba32 есть следующие настройки

.../PM[+|-]             - thorough check mode (VERY slow);/HA=[0|1|2|3]        - heuristic analysis level (0 - disabled, 2 - maximum);...

/PM+ замедлял процесс проверки примерно на 1/4

(а в итогах, в числе прочего, указывается и время проверки)

При иcпользовании крайнего значения /HA увеличится число ложняков (например, av подозревает Pinch-а там, где он и рядом не валялся)

Применять /pm и /ha=3 при сканированиия с помощью VBA32 официально не рекомендуется (в GUI интерфейсе при попытке выставить эти настройки выдается дополнительное предупреждение). Консольный сканер возмущаться не будет, но информация о том, что для эвристики '2 - maximum' не является опечаткой. Данные настройки предназначены только для тех случаев, когда антивирус при стандартных настройках ничего не находит, но пользователь подозревает что на компьютере творится что-то неладное и хочет найти наиболее подозрительные файлы для дальнейшего анализа.

Обычных настроек '/ha=2' и '/af' должно быть достаточно для тестирования. В GUI сканере вообще по умолчанию выставлен уровень эвристики эквивалентный /ha=1.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NickXists

-> Сергей Семашко:

т.е. в качестве максимальных настроек рекомендуется использовать

/M=2 /HA=2?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Сергей Семашко
-> Сергей Семашко:

т.е. в качестве максимальных настроек рекомендуется использовать

/M=2 /HA=2?

Да

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Сергей Ильин

Раз возражений больше нет, то можно приступать к тесту :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NickXists

Да, в общем, видимо, все, кто хотели высказаться, уже сделали это : )

А возражений "по факту" все равно будет...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Dr.Golova

> А возражений "по факту" все равно будет...

Да, будет :) Если будете тестить семерку, возьмите хотябы один файл, который однозначно берется эвристикой, а не только сигнатурами. Узнаем сколько пакеров может пройти новый эмулятор на дефолтовых настойках :) В смысле если после упаковки детект стал не сигнатурным а эвристическим, значит native поддержки пакера нет, но эмулятор его проходит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NickXists
> А возражений "по факту" все равно будет...

Да, будет :) Если будете тестить семерку, возьмите хотябы один файл, который однозначно берется эвристикой, а не только сигнатурами. Узнаем сколько пакеров может пройти новый эмулятор на дефолтовых настойках :) В смысле если после упаковки детект стал не сигнатурным а эвристическим, значит native поддержки пакера нет, но эмулятор его проходит.

Ну вот и первые претензии : )

Сорри, Dr.:

рад бы, но набор уже устаканился и во весь опор "кипит работа".

Видимо, это будет одним из пробелов.

Нет, блин, предела совершенству : )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NickXists

Есть ли какие-либо предложения насчет состава набора для проверки фолсов?

Интересуют три момента:

1.) Есть ли внятные аргументы против того, что ложные срабатывания будут проверяться только на тех тулзах, которые предусматривают использование в "мирных целях"?

Говоря проще - это минус крипторы и прочие конструкторы, однозначно заточенные под малвару.

2.) Какие предложения непосредственно по составу файлА?

Есть ли, что дополнить по комплекту вида

{стандартные файлы Win} + {нераспространенные standalone exe-шники} ?

3.) Нет ли принципиальных возражений отн-но того, что в под-тесте на ложняки будут фигурировать только exe?

т.е. w/o dll/sys/... и т.д.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Сергей Ильин
1.) Есть ли внятные аргументы против того, что ложные срабатывания будут проверяться только на тех тулзах, которые предусматривают использование в "мирных целях"?

По хорошему, интересно посмотреть все тестируемые упаковщики на "фалсы". Будет видно, кто ставит вердикты по упаковщику, а кто реально поддерживает его.

2.) Какие предложения непосредственно по составу файлА?

Есть ли, что дополнить по комплекту вида

{стандартные файлы Win} + {нераспространенные standalone exe-шники} ?

Поддерживаю. ИМХО будет достаточно такого комплекта.

3.) Нет ли принципиальных возражений отн-но того, что в под-тесте на ложняки будут фигурировать только exe?

т.е. w/o dll/sys/... и т.д.

У меня нет возражений.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

  • Сообщения

    • santy
      В каком режиме ходишь в Историю процессов и задач? при работе с активной системой или с образом?
    • PR55.RP55
      + Уточнение по: " при первых запусках после установки драйвера Ф и перезагрузки PC  - uVS не видел процессов запущенного  Firefox ( все файлы в базе проверенных ( если это имеет значение ) " Я говорю о том, что процессов не было в "История процессов и задач..."
    • PR55.RP55
      Demkd По поводу: 5.0.4 На: "uVS v5.0.4v x64 [http://dsrt.dyndns.org:8888]: Windows 7 Home Basic x64 (NT v6.1 SP1) build 7601 Service Pack 1 [C:\WINDOWS] " История процессов и задач... Отобразить цепочку запуска процесса uVS начинает жрать память и... Out of memory. Сжирает все 8гб+файл подкачки и... На компьютере недостаточно памяти ( и да, твик: 39\40 ) на происходящее не влияет ) ----- Второе, при первых запусках после установки драйвера Ф и перезагрузки PC  - uVS не видел процессов запущенного  Firefox ( все файлы в базе проверенных ( если это имеет значение ) Третье: При проверке системы с Live CD Видим следующее: Загружено реестров пользователей: 6
      Анализ автозапуска...
      (!) Переменная окружения TEMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\rcvscxggb\Environment\TEMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\rcvscxggb\Environment\TMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TEMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\fnfozvsrt\Environment\TEMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\fnfozvsrt\Environment\TMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TEMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\rpnrvystm\Environment\TEMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\rpnrvystm\Environment\TMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TEMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\evikeffmz\Environment\TEMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\evikeffmz\Environment\TMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TEMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\uvs_default\Environment\TEMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\uvs_default\Environment\TMP ------------- Так это в списке Live CD: ;uVS v5.0.4v x64 [http://dsrt.dyndns.org:8888] [Windows 10.0.14393 SP0 ]
      ; Все ПОДОЗРИТ.  | <%TEMP%>
      ПОДОЗРИТ.  | <%TMP%>
      автозапуск | MMDRV.DLL
      автозапуск | MSCORSEC.DLL
      ПОДОЗРИТ.  | E:\USERS\DEFAULT\<%TEMP%>
      ПОДОЗРИТ.  | E:\USERS\DEFAULT\<%TMP%>
      ПОДОЗРИТ.  | E:\USERS\USER\<%TEMP%>
      ПОДОЗРИТ.  | E:\USERS\USER\<%TMP%>
       \DESKTOP\ЗАГРУЗКИ\PASSIST_STANDARD ( РАЗДЕЛЫ ДИСКА )_20251230.1.EXE
      ПОДОЗРИТ.  | E:\WINDOWS\SERVICEPROFILES\LOCALSERVICE\<%TEMP%>
      ПОДОЗРИТ.  | E:\WINDOWS\SERVICEPROFILES\LOCALSERVICE\<%TMP%>
      ПОДОЗРИТ.  | E:\WINDOWS\SERVICEPROFILES\NETWORKSERVICE\<%TEMP%>
      ПОДОЗРИТ.  | E:\WINDOWS\SERVICEPROFILES\NETWORKSERVICE\<%TMP%> ------ Четвёртое, по поводу запуска файлов В старых версиях uVS брал информацию: AppData\Roaming\Microsoft\Windows\Recent судя по всему сейчас этого нет.  
    • demkd
      ---------------------------------------------------------
       5.0.4
      ---------------------------------------------------------
       o Переменные окружения всех пользователей с некорректным содержимым теперь добавляются
         в список как подозрительные объекты со статусом "ПЕРЕМЕННАЯ".
         Удаление такого объекта приведет к удалению переменной пользователя или 
         к восстановлению значения по умолчанию если это системная переменная.  
         Поскольку уже запущенные процессы используют копии переменных потребуется перезагрузка системы.

       o Для процессов с внедренными потоками теперь печатается родитель этого процесса.

       o В лог выводится состояние SecureBoot.

       o В лог выводится версия драйвера Ф.

       o Добавлена интеграция с Ф:
         o История процессов загружается из Ф, а не из журнала Windows.
           Работает и при выключенной опции отслеживания процессов и задач, но если эта опция выключена
           то будет доступна лишь история процессов, но не задач.
           Это может быть полезно в случае когда зловред удаляет свою активность из журнала Windows.
         o Если установлен Ф v2.20 и старше, то в лог выводится список процессов (в т.ч. и уже завершенных)
           внедрявших потоки в чужие процессы, такие процессы получают статус "ПОДОЗРИТЕЛЬНЫЙ" и новый статус "ИНЖЕКТОР".

       o В меню запуска добавлена опция "Установить драйвер Ф".
         Версия драйвера: v2.20 mini - это урезанный драйвер бесплатной версии Ф.
         В отличии от драйвера в Ф эта версия не имеет региональных ограничений. 
         Драйвер ведет историю запуска процессов и внедрения потоков в чужие процессы.
         Дополнительно осуществляется защита ключа драйвера в реестре и самого файла драйвера.
         Остальной функционал удален.
         Драйвер устанавливается под случайным именем.
         Удалить драйвер можно будет в том же меню запуска, после установки/удаления требуется перезагрузка системы.
         (!) Для установки драйвера Ф потребуется выключить SecureBoot в BIOS-е.
         (!) Установка драйвера возможна лишь в 64-х битных системах начиная с Win7.
         (!) После установки драйвера система перейдет в тестовый режим из-за включения опции Testsigning.
         (!) При удалении драйвера запрашивается разрешение на отключение опции Testsigning.
         (!) Если эта опция изначально была включена и пользователь использует самоподписанные драйвера
         (!) то это опцию НЕ следует выключать, иначе система может уже и не загрузиться.

       o В меню "Запуск" и в меню удаленной системы добавлен пункт "Свойства системы".

       o Исправлена ошибка из-за которой в логе не появлялось сообщение о завершении сеанса при обратном подключении
         к удаленному рабочему столу.

       
    • PR55.RP55
      Возможно, что-то в открытом коде будет полезного и для uVS https://www.comss.ru/page.php?id=19320
×