Как тестирует AV-TEST: Защита антивирусов (Protection)
Насколько эффективно антивирус справляется с реальными угрозами? Вместо теоретической оценки в смоделированных сценариях тестирования, продукты безопасности в испытаниях AV-Test должны отражать реальные атаки
В тестированиях AV-Test используются различные инструменты из арсенала киберпреступников: угрозы нулевого дня, скрытые загрузки, вредоносные загрузки, атаки через электронные сообщения и др.
Этап 1 — Тестирование защиты: защита от угроз нулевого дня в Интернете, веб-атак и атак с использованием электронной почты (Динамическое тестирование антивирусов, Real-world testing)
Данный тестовый модуль отражает защитные возможности продуктов в противостоянии угрозам из Интернета. Антивирусы должны обеспечить защиту от веб-атак с использованием новейших вредоносных программ и распространенных путей заражения. Система тестирования включает в себя проверку эффективности защиты в реальных условиях в несколько этапов. В тесте участвуют исключительно вредоносные программы, обнаруженные AV-TEST за последние 24 часа.
Методика динамического тестирования
- Если потребительские продукты устанавливаются в тестовые системы с настройками по умолчанию, то для корпоративных решений вендоры могут указывать конфигурацию. Продукты обновляются и имеют полный доступ в Интернет.
- Аналитическая программа AV-Test создает карту незараженных систем.
- Затем начинаются попытки доступа к вредоносным сайтам и электронным письмам.
- Если доступ к сайту или e-mail сообщению блокируется или программа выводит оповещения, все эти действия фиксируются. При этом охватываются все возможные функции безопасности, независимо от того, какая функция или технология заблокировала атаку. Перечислим потенциальные варианты реакции на угрозы:
- заблокирован доступ к URL-адресу.
- обнаружен и заблокирован эксплойт на веб-сайте.
- заблокирована загрузка вредоносных компонентов.
- заблокирована попытка использования вредоносного содержимого.
AV-Test создает идентичные и воспроизводимые условия для всех тестируемых продуктов. Для этого процедура тестирования выполняется одновременно для всех продукты и для каждого тестового случая на идентично сконфигурированных тестовых системах.
Этап 2 — Проверка функции обнаружения: обнаружение распространенных вредоносных программ, обнаруженных за последние 4 недели (обнаружение репрезентативного набора, AV-TEST reference set)
Эталонный набор AV-TEST состоит из крайне распространенных вредоносных программ для Windows, обнаруженных лабораторией за 4 недели до начала тестирования.
Данный тестовый подход обоснован тем, что заражение часто происходит из-за несвоевременного обновления антивируса или некорректной конфигурации. В данном испытании проверяется, насколько хорошо продукты способны отслеживать вредоносное ПО небольшого возраста и таким образом обнаруживать потенциальные заражения в сети или на домашнем ПК.
Методика тестирования с эталонным набором AV-TEST
- Если потребительские продукты устанавливаются в тестовые системы с настройками по умолчанию, то для корпоративных решений вендоры могут указывать конфигурацию. Продукты обновляются и имеют полный доступ в Интернет.
- Для проверки тестовых образцов эталонного набора вызывается сканирование по требованию.
- Файлы, которые не были обнаружены при сканировании по требованию, запускаются в тестовой системе для проверки компонентов динамического обнаружения.
AV-Test создает идентичные и воспроизводимые условия для всех тестируемых продуктов. Для этого процедура тестирования выполняется одновременно для всех продукты и для каждого тестового случая на идентично сконфигурированных тестовых системах.
Тестирование антивирусных программ: как оценить их надежность
Антивирусные программы – это программное обеспечение, предназначенное для защиты компьютера от вирусов, троянов, шпионских программ и других вредоносных объектов. Однако, не все антивирусные программы равны по качеству, поэтому представляется важным уметь оценивать их надежность. В данной статье мы рассмотрим, какие методы используются при тестировании антивирусных программ и какие критерии должны удовлетворять хорошие антивирусные программы.
Методы тестирования
Статический анализ
Статический анализ – это метод тестирования, при котором антивирусное программное обеспечение сканирует файлы на наличие вредоносных программ без их запуска. В результате анализа, антивирус может обнаружить подозрительный код в файле, который указывает на возможную вредоносную программу.
Динамический анализ
Динамический анализ – это метод тестирования, при котором вредоносная программа запускается на защищаемом компьютере и наблюдается за ее поведением. В процессе выполнения программы, антивирусный программный модуль собирает данные о поведении вредоносной программы, такие как создание, изменение или удаление файлов, запись в системный реестр и т.д. Эти данные используются для определения наличия потенциальной угрозы.
Комбинированный анализ
Комбинированный анализ – это метод, который комбинирует статический и динамический анализ. Сначала происходит статический анализ, который выявляет потенциально вредоносный код. Затем, если потенциальная угроза выявлена, происходит запуск вредоносной программы на защищенном компьютере для проведения динамического анализа.
Критерии оценки
Ниже приведены некоторые критерии, которые следует учитывать при оценке надежности антивирусных программ:
Охват
Охват – это количество известных вредоносных программ, которые может обнаружить антивирусное программное обеспечение. Чем больше число вредоносных программ может быть обнаружено, тем надежнее антивирус.
Ложные срабатывания
Ложное срабатывание – это когда антивирусное программное обеспечение помечает безвредные файлы как вредоносные. Чем меньше количество ложных срабатываний, тем лучше антивирус.
Скорость сканирования
Скорость сканирования – это время, которое требуется для антивирусного программного обеспечения для сканирования файлов на наличие вредоносных программ. Чем быстрее сканирование, тем лучше антивирус.
Ресурсоемкость
Ресурсоемкость – это количество ресурсов, которые использует антивирусное программное обеспечение при работе на компьютере. Чем меньше количество используемых ресурсов, тем лучше антивирус.
Вывод
Тестирование антивирусных программ – это процесс, который помогает оценить их надежность. При оценке антивирусных программ следует учитывать ряд критериев, таких как охват, ложные срабатывания, скорость сканирования и ресурсоемкость. Также важно помнить, что ни один антивирус не может обеспечить абсолютную безопасность, поэтому рекомендуется использовать несколько антивирусных программ в качестве дополнительной защиты.
- Увлекательный мир аниме: примеры фильмов для проекта
- Зачем выбрать аниме для проекта на английском языке: преимущества и возможности
- От
- До
- The Best Anime for Your Project
- Ногайцы в контексте этнической принадлежности:
- Как история и культура влияют на определение национальной идентичности ногайцев
- Как проверить эффективность вашей антивирусной защиты
- Оценка защиты компьютера от вирусов: ключевые показатели и способы проверки
Как тестируют антивирусное ПО
Последние лет пять я занимаюсь тем, что помогаю делать тестирование системных приложений быстрее и дешевле. По молодости (будучи юн и горяч) я старался просто работать быстрее руками и внимательнее головой, но постепенно пришло понимание, что у ручного тестирования есть предел эффективности: для отдела из руководителя и двух тестировщиков это примерно 30 фич в месяц. Казалось бы — нет проблем, ведь существует хорошо отработанный путь по беспощадной автоматизации тестирования — одно избавление от регресса даст с лихвой свобдного времени, выберем просто систему из того, что есть на рынке, внедрим и будем жить счастливо. И тут жизнь заявляет: «Нет.»
И дело не в том, что все системы автотестов имеют фатальный недостаток, или не отвечают простому списку требований, порожденному моей буйной фантазией(ссылка на мои требования), или не могут отобразить всю невообразимую сложность юзеркейсов использования — нехитрый анализ говорит нам, что набор юзер-кейсов любого антивируса обязан включать относительно простые шаги:- Развертывание на чистую машину
- Проверку статических характеристик файлов антивируса
- Лечение и детектирование разнообразных угроз
- Деинсталляцию
- Повторную инсталляцию
- Обновление старой версии
- Совместимость инсталляции с антивирусными решениями конкурентов
- Тесты самозащиты
Особо хочется отметить пункт о совместимости — для меня казалось нормальным, что антивирус — это кто-то из списка kaspersky, drweb, eset, symantec, etc, но мир не стоял на месте и пользователи нового поколения чего только не нашли для себя — теперь приходится парсить страницу download.cnet.com/s/antivirus с популярными закачками за неделю и тестироваться с тем что актуально.
Как видно все кейсы прямо напрашиваются на автоматизацию.
Но в тестировании системного софта, и антивирусов в том числе, существует пара проблем:- Работа на железе отличается от работы в vm, среди тестовых машин могут и должны быть как физические, так и виртуальные среды.
- Вторая проблема тестирования системного софта отмечена еще в 2013 году талантливым исследователем Фридлянд Ю. М. и звучит она как «обеспечение поддержки перезагрузки в системе автотестов».
Почти месяц формирований разнообразных запросов к поисковым системам привел меня к факту, что иных релевантных ответов на вопрос «как делать автотесты с перезагрузкой» кроме презентации к дипломному проекту наших партнеров нет. О боги, подумал я, прочитав тот pdf — тащить целый TFS со всей сопутствующей инфраструктурой Microsoft ради жизни после перезагрузки?
За что мне это?
И я стал изучать другие решения. Да-да, я действительно смотрел docker, читал про ci на основе jenkins, пробовал и разочаровывался — либо решение полностью не подходило, либо количество необходимых смежных технологий к изучению давало в перспективе уникально-модифицированное неподдерживаемое решение (либо поддерживаемое штатом высококлассных специалистов), я менял проекты и работодателей (на все более именитых конечно же), но везде видел одно и то же — тестировать системный функционал (обновление драйверов, выключение ОС, лечение вирусов, проверка автозагрузки) руками являлось наиболее быстрым, надежным и дешевым способом.
А потом я открыл для себя python. На одной этой технологии оказалось возможным написать простой менеджер виртуальных машин (import pysphere), веб-интерфейс к нему (import web2py), агента тестирования- win32 службу (import win32service), доставляемого на виртуалку через iso образ, и сами тесты, собранные в отдельные exe-файлы через pyinstaller(чтобы не мучиться с предподготовкой систем, инсталляцией python etc). Концептуально это все выглядит следующим образом:Все это добро поддерживается 1 специалистом со знанием 1 технологии, bus-фактор минимален, чему я несказанно рад.
Результаты работы тестов собираются в страничку дневного отчета:
Таким вот нехитрым образом мы избавились примерно за полгода разработки своего велосипеда от регресс и смоук-тестов, на ручные тесты падает только новый функционал, от чего у всего отдела тестирования морщины разгладились, а волосы стали мягкими и шелковистыми, чего и вам желаю.
Собственно, после набора некоторого количества новых фич, продукт отдается зондер-команде — бета-тестерам и через фидбек в техподдержке качество доводится до небывалых высот.
- антивирусы
- тестирование
- как тестировать с перезагрузкой
При подготовке материала использовались источники:
https://www.comss.ru/page.php?id=2027
https://ru.anyquestion.info/a/testirovanie-antivirusnyh-programm-kak-otsenit-ih-nadezhnost
https://habr.com/ru/articles/282548/