Уважаемые читатели, мы уже не раз вам рассказывали об угрозах для Android и, вероятно, уже плешь проели некоторым скептикам. Сегодня мы предложим вам поговорить, скорее, не о вредоносном ПО для этой мобильной платформы, а о технологиях, применяемых для его обнаружения. И начнем свой рассказ, пожалуй, с технологии Origins Tracing™, реализованной в Dr.Web для Android.
На все ваши вопросы по этой теме сегодня отвечают не какие-то там маркетологи, а аналитик «Доктор Веб» по мобильным угрозам Александр Горячев.
Одной из изюминок Dr.Web для Android является технология Origins Tracing™. Интересно то, что она появилась не одновременно с рождением продукта, а была перенесена в него позднее. Уникальная технология, созданная исключительно силами сотрудников «Доктор Веб», Origins Tracing™ позволяет значительно увеличить способности антивируса детектировать различные виды вредоносных программ. Суть технологии в том, что для каждой угрозы создается описание алгоритма поведения, которое добавляется в антивирусную базу. Одной такой записи может быть вполне достаточно для покрытия целого семейства вредоносных приложений, за счет чего может обеспечиваться детектирование новых модификаций и версий из этого семейства без их предварительного анализа в антивирусной лаборатории. При этом существенно сокращается объем вирусной базы, так как отпадает необходимость вносить запись для каждого конкретного семпла, а именно такой метод был и является основным для многих антивирусных вендоров. Мы не можем раскрыть все секреты, однако кое-что об основных особенностях Origins Tracing™ расскажем.
Для начала вспомним, как выглядит базовое приложение Android: основной программный пакет, имеющий расширение apk (например, SuperGame.apk) — стандартный zip-архив, содержащий все компоненты приложения. Внутри него находится файл AndroidManifest.xml, в котором указывается имя приложения, его версия, используемые библиотеки, сервисы, а также необходимые для работы функции; имеется цифровая подпись приложения, а также dex-файл, classes.dex — основной исполняемый код (Dalvik Executable), скомпилированный для функционирования в виртуальной машине Dalvik (Dalvik VM). Именно dex-файл представляет основной интерес, так как большинство вредоносных программ так или иначе функционирует как стандартное приложение Android — в виртуальной машине Dalvik.
Во время сканирования приложений антивирусом технология Origins Tracing™ строит для dex-файла определенную модель, которая базируется на основе декомпиляции в промежуточный байткод. Вирусная база содержит информацию с такими моделями. Имеющаяся специальная функция расстояния умеет определять сходства одной модели с другой, благодаря чему и происходит детектирование угроз.
Рассмотрим работу Origins Tracing™ на примере:
Имеется два вредоносных приложения, предназначенные для отправки платных СМС-сообщений на премиум-номера (типичные представители Android.SmsSend). На скриншоте видно, что основной исполняемый файл у них отличается по размеру (194 424 и 233 728 байт соответственно):
Согласно AndroidManifest.xml, оба приложения имеют одинаковое имя rreh.nyur и версию 1.0. Теперь рассмотрим их непосредственно на мобильном устройстве.
Оформление и функционирование обоих приложений полностью совпадает. Теперь посмотрим, как реагирует на эти программы Dr.Web для Android:
Как мы видим, название угроз при детектировании содержит приставку .origin. Это означает, что технология Origins Tracing™ на основании заложенных в нее критериев обнаружила очередных представителей семейства Android.SmsSend 114-го подсемейства.
Различия в размере исполняемого dex-файла (как мы видели на первом скриншоте) у похожих вредоносных программ, таких как рассмотренные СМС-троянцы, чаще всего обуславливаются попытками вирусописателей избежать детектирования антивирусами, использующими стандартный сигнатурный метод обнаружения. Для этого могут использоваться простые приемы, например изменение имен классов, функций и переменных в исходном коде приложения. После компиляции такого кода будет получен dex-файл с измененным содержимым, которое уже не будет соответствовать имеющейся сигнатуре в вирусной базе, что, в свою очередь, может предотвратить детектирование традиционным сигнатурным способом.
Большое преимущество технологии Origins Tracing™ в том, что она использует несигнатурный метод, и это зачастую позволяет ей более эффективно справляться с обнаружением обновленных или модифицированных версий вредоносных программ, а также вредоносных программ, работающих по принципу уже известных.
Еще одним преимуществом технологии является возможность обнаружения не только модифицированного, но и внедренного кода.
Такая ситуация характерна для троянцев Android.Gongfu, Android.DreamExploid, Android.Geinimi, Android.ADRD и других. В отличие от вредоносных программ наподобие Android.SmsSend или коммерческих программ-шпионов, которые являются самодостаточными, представители этих семейств распространяются путем их внедрения злоумышленниками в легитимные приложения. Origins Tracing™ также справляется и с рекламными модулями, например Adware.Airpush, Adware.Startapp и др., которые сознательно интегрируются в приложения разработчиками или нечистыми на руку личностями при их модификации.
Автор: doctorweb