MRG Effitas: Тестирование антивирусов для Android. 2020 Q3

2020-11-27 5948 комментарии
Лаборатория MRG Effitas провела расширенное тестирование антивирусов для Android в третьем квартале (Q3) 2020 года. Серия тестов под названием «Android 360 Degree Assessment Programme» позволяет оценить защиту мобильных антивирусов в реальных сценариях

Лаборатория MRG Effitas провела расширенное тестирование нескольких антивирусов для Android. Уровень защиты оценивался в реальных сценариях с настоящими вредоносными программами из сети. Также проверялась обработка легитимных образцов, чтобы выявить потенциально слабые места механизмов обнаружения. В отчете собраны результаты тестирований.

В тестах использовался эмулятор Genymotion с образами ОС Android 8.0.0, актуальными по состоянию на сентябрь и октябрь 2020 года. Данная тестовая среда позволяет охватить значительную часть пользовательских устройств, представленных на рынке. Чтобы обеспечить максимальную совместимость с образцами, содержащими нативный ARM-код, в эмуляторе использовался пакет ARM Translation. В случаях, когда широко использовались собственные библиотеки ARM и установка антивируса в эмуляторе x86 не поддерживалась, эксперты лаборатории прибегали к помощи тестовых устройств Nexus 5x на Android 8.0.0. Чтобы обеспечить «чистоту эксперимента» функция Google Play Защита была отключена на устройствах.

Специалисты лаборатории уделяли внимание следующим аспектам тестируемых продуктов.

Обнаружение угроз на ранней стадии

В первом сценарии (Early Stage Detection) оценивалась эффективность обнаружения угроз на раннем этапе, когда тестовые образцы копировались на SD-карту тестового устройства. Устройство еще не было заражено, а вредоносные файлы были загружены и готовы к установке. Действительно качественный антивирус должен обнаруживать угрозы как можно раньше, не позволяя пользователям устанавливать вредоносное ПО на свои устройства. В данном испытании предпринимались следующие шаги:

  1. Подготовка тестового устройства включала установку и инициализацию антивирусного приложения (принятие лицензионного соглашения, загрузка новейших антивирусных определений, принятие всех запросов предоставления разрешений и др.). При запросе разрешалось сканирование файлов на SD-карте 1. Если вендор предоставлял дополнительные инструкции по настройке, то они принимались во внимание на данном этапе.
  2. Настройка мобильного антивируса на сканирование файлов на SD-карте.
  3. Загрузка тестового набора образцов на SD-карту и запуск сканирования.
  4. Антивирус был настроен на удаление подозрительных файлов.
  5. Сканирование запускалось повторно до тех пор, пока не переставали появляться предупреждения или не были удалены все подозрительные файлы.
  6. Подсчет оставшихся образцов.
1 Этот параметр был отключен для большинства антивирусов после стандартной инициализации из соображений производительности.

Обнаружение на этапе установки

Во втором сценарии (Detection During Installation ) выполнялась установка каждого отдельного тестового экземпляра с целью проверки уровня защиты мобильных антивирусов.

  1. С помощью инструментария Android Debug Bridge (adb) выполнялась установка вредоносного приложения на устройство. После установки антивирус получал информацию о новом приложении и запускал механизмы обнаружения.
  2. Антивирусу предоставлялось необходимое время для завершения всех процедур сканирования. 2 3
  3. Создавался скриншот экрана с результатами проверки. Показ предупреждения или тревожного оповещения рассматривался как успешное прохождение тестового сценария. Все журналы инструмента logcat были сохранены на внешнем устройстве.
  4. С помощью adb образец удалялся, после чего устанавливался следующий образец.

Примечание: на устройствах Android установка вредоносного приложения не всегда вызывает нежелательные последствия, в отличие от первого запуска, когда вредоносный код непосредственно исполняется. Запуск образца может иметь пагубные последствия с точки зрения безопасности. После первого запуска вредоносная программа, запрашивающая разрешение SYSTEM_ALERT_WINDOW, способна непрерывно отображать пользователю экран запроса доступа к администратору устройства. В таких случаях пользователь не может избавиться от приложения, поскольку у него нет доступа к лаунчеру, меню приложений или к настройкам устройства для удаления приложения. 4

2 Значение задержки (timeout threshold) является критическим аспектом тестирования. Если значение будет слишком низким, результаты теста не будут отражать фактические результаты, так как антивирус не сможет завершить обнаружение. Лаборатория стремится добиться реалистичного значения, поскольку маловероятно, что пользователь ожидает несколько минут после установки, прежде запустить новое приложение, поэтому «слишком позднее» обнаружение или обнаружение без четкого уведомления считается пропуском.

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

4 Чтобы смягчить данный типичный тип вредоносного поведения, команда разработчиков Android API проверила экраны «Администратор устройства» и «Запрос специальных возможностей», чтобы включить флажок, который можно использовать, чтобы ОС не отображала этот экран снова. Эта функция появилась в последних версиях Android API.

Тест на ложные срабатывания

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

Тестовые образцы

Реальные угрозы из сети

Реальные угрозы из сети

В тестировании использовался набор из 156 вредоносных образцов. Всех их можно разделить на следующие категории:

  • 7% – SMS-платежи (SMSs, SMS Payment). Приложение предоставляет функции отправки SMS-сообщений на платные номера. Большинство выбранных образцов были способны автоматически отправлять SMS и запрашивали системное разрешение SEND_SMS, что приводило к прямым финансовым потерям для жертвы.
  • 47% – Трояны (Trojans). Трояны – приложения, которое, согласно описанию, предлагают определенный набор функций. У пользователя складываются определенные ожидания по функциональности, но по факту приложение запрашивает разрешения, которые не соответствуют описанным функциям. Типичным примером является приложение Фонарик, которое может запрашивать доступ к контактам, данным местоположения и к передачи данных.
  • 21% – Шпионское ПО (Spyware). Образцы, относящиеся к данной категории, отправляли на внешние сервера информацию, которую можно использовать для отслеживания поведения пользователя и его привычек. Большинство рекламных приложений считаются шпионскими программами, поскольку они отправляют рекламным сетям IMEI, номер телефона, наименование производителя и модель телефона и другие данные.
  • 16% – Финансовое ПО / Интернет-банкинг (Financial/banking). Данный тип угроз направлен на кражу денежных средств. Типичная финансовая вредоносная программа проверяет подключение к сеансу мобильного банкинга в браузере и может попытаться показать фишинг-сайт или всплывающее окно. Пользователь может подумать, что данные сеанса внезапно сбросились. Как правило, такие образцы запрашивают разрешение SYSTEM_ALERT_WINDOW, а также разрешение доступа к списку заданий.
  • 8% – ПНП (PUA). 5 Термин «Потенциально нежелательные приложения» (ПНП) применяется для описания приложений, которые выполняют действия, не соответствующие намерениям пользователя. Под данную категорию подпадают приложения с агрессивными рекламными модулями, которые позволяют рекламодателям отслеживать активность отдельных пользователей. Для многих пользователей конфиденциальность важнее функциональности, и никакие функции не смогут компенсировать продажу данных активности через Интернет. Антивирусы должны сообщать пользователю об установке ПНП.

Многие образцы могут быть отнесены сразу к нескольких категориям. Например, вредоносное приложение показывает агрессивную рекламу и при этом получается получить доступ к разрешению SEND_SMS для отправки сообщений на платные номера. Рисунок 1 показывает распределение тестовых образцов.

5 Приложения Android с интегрированным рекламным модулем социальных сетей часто попадают в «серую зону» с точки зрения обнаружения, поскольку любое легитимное приложение может быть превращено в ПНП, если разработчики активируют агрессивный рекламный модуль. Поэтому представлены отдельные графики для тестового набора с ПНП и без ПНП.

Симуляция угроз

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

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

Для нужд тестирования использовалось 5 специально созданных образцов симуляторов. Важно подчеркнуть, что эти образцы не были собраны в реальных условиях. В образцах была реализована известная техника эксплуатации функций специальных возможностей Android API, которая используется для чтения содержимого с экрана, SMS-токенов, платежных реквизитов и другой конфиденциальной информации. Симуляторы представляли собой модифицированные версии легитимных приложений Android, которые отправляли данные о нажатиях клавиш, содержимое SMS-сообщений, пароли и другие данные на внешний веб-сервис по HTTP.

Образцы для проверки на ложные срабатывания

Для тестирования на ложные срабатывания использовался набор из 10 безопасных образцов из сторонних магазинов приложений. Приложения запрашивали различные разрешения и предлагали разную функциональность.

Тестируемые антивирусы

В тестировании принимали участие следующие мобильные антивирусы 6. Кроме решений всем известных имен с хорошей репутацией и богатой истории, в испытании участвовали продукты менее крупных вендоров с небольшой долей рынка. Поскольку в магазине приложений Google Play размещено много антивирусов для Android, приоритет отдавался приложениям защиты с большим количеством загрузок.

6 На момент тестирования TAPI Labs не предоставляла функции сканирования SD-карты, поэтому испытание на обнаружение до установки угроз не проводилось.

Итоги тестирования

Следующие продукты продемонстрировали 99%-ный (и выше) уровень обнаружения вредоносных образцов тестового набора, в котором отсутствовали ПНП. Все они получили сертификат MRG Effitas:

MRG Effitas 2020 Q2: Тестирование антивирусов для Android: Итоги тестирования

Результаты тестирования

Средний уровень обнаружения (без ПНП) 7

7 Цифры были получены путем усреднения значений, полученных в тестах обнаружения на раннем этапе и обнаружения при установке с тестовым набором без ПНП.

Общий уровень обнаружения (без ПНП)

Уровень обнаружения ПНП

Уровень обнаружения мобильных троянцев

Уровень обнаружения банковских угроз

Уровень обнаружения SMS-угроз

Уровень обнаружения мобильного шпионского ПО

Уровень обнаружения симулированных угроз

Выводы

По итогам тестирования можно сделать несколько выводов относительно эффективности антивирусных движков и используемых образцов.

Репутация вендора и дополнительные функции

В тестировании, проводившемся во 3-ем квартале 2020 года, большинство известных крупных вендоров показали идеальный или близкий к идеальному результат при обнаружении реальных угроз. Для пользователей это означает богатый выбор продуктов, причем некоторые лидирующие решения распространяются бесплатно. В будущем важным приоритетом выбора могут оказаться дополнительные функции, такие как VPN, родительский контроль, единая подписка для ПК и мобильных устройств и др.

«Антивирус – очередное приложение»

Еще один вывод по результатам тестирования: обнаружение многих мобильных антивирусов в значительной степени зависит от метаданных установленных пакетов (хэши, сертификаты разработчиков и др.). Это означает, что в отличие от среды Windows, антивирус на Android не может получить представление о реальной активности другого приложения, потому что такое поведение не согласуется с основными принципами безопасности Android, ведь «антивирус является очередным приложением». В результате, запустив только что установленный образец, было довольно трудно избавиться от некоторых образцов тестового набора с реальными угрозами. Таким образом, своевременное и правильно отображаемое обнаружение является абсолютной необходимостью для мобильных антивирусных движков.

Механизмы обнаружения

Тестирование подтвердило, что большинство мобильных антивирусов используют различные методы обнаружения до и после установки. Это объясняется доступом к различному набору метаданных в случае с файлом на SD-карте и в случае с установленным приложением.

Кроме того, общая идея первоначального сканирования является важной аспектом безопасности. Она предоставляет возможность просканировать apk-файл до его установки и последующих вредоносных последствий. Функции предварительного сканирования должны быть более прогрессивными во всех мобильных антивирусах для Android (в недавних тестах некоторые антивирусы не предоставляли данную функцию).

Обнаружение симуляторов

Многие антивирусные движки, которые успешно справились с обнаружением симуляторов в прошлых тестах, на этот раз смогли выполнить обнаружение исключительно на основе признаков сигнатуры пакета. Это означает, что успешное обнаружение было результатом работы механизма, в значительной степени склонного к ложным срабатываниям. Из-за этого в предыдущих раундах тестирования у многих продуктов были проблемы с обнаружением образцов симулятора.

В MRG Effitas неоднократно поступали заявления о том, что используемые симуляторы не представляют собой реалистичный сценарий для антивирусного движка. Тем не менее, анализы реальных угроз показывают, что представленный сценарий используется в течение почти 10 лет. Схема, когда злоумышленник выбирает существующее приложение Android для выполнения скрытой шпионской деятельности, известна давно. Самая известная кампания с таким подходом – APT Dark Caracal, ее анализ представила компания Lookout.

Оповещение об обнаружении

В истории тестов «Android 360 Assessment Programme» замечены существенные различия в способах оповещения пользователей. Когда дело доходит до успешного обнаружения, эффективное и четкое уведомление пользователя является важной частью как эффективности антивирусного приложения, так и общего пользовательского опыта. В протестированных приложениях применялся один из следующих подходов:

  1. Запуск отдельного экрана с красным фоном и несколькими строками описания угрозы.
  2. Использование системы оповещений Android для выдачи важных уведомлений, обычно отображаемых в строке состояния.

Оба подхода имеют свои достоинства. Отдельный экран сложно проигнорировать, а уведомления Android лучше соответствуют пользовательскому опыту ОС. Android предоставляет множество опций настройки уведомлений, поэтому уведомления могут быть случайно пропущены. Большинство протестированных приложений выбирают первый подход.

Что касается формулировок и общего дизайна, то во многих приложениях уведомления можно улучшить. При использовании системы оповещения Android задача разработчика – сообщить пользователю как можно больше информации для принятия верного решения. Ответственный пользователь должен прочитать и обработать текст, отображаемый на экране, что представляет значительную умственную нагрузку, особенно для технически не подкованных пользователей. В результате хорошо продуманный интерфейс может иметь решающее значения для пользователя при принятии решения (что в итоге делает устройства более безопасными).

© . По материалам MRG Effitas
Комментарии и отзывы

Нашли ошибку?

Новое на сайте