Злоумышленники распространяют вредоносные APK-файлы для Android, которые препятствуют декомпиляции, используя неподдерживаемые, неизвестные или серьёзно модифицированные алгоритмы сжатия.
Для авторов вредоносных приложений этот подход выгоден тем, что позволяет уйти от детектирования с помощью статистического анализа и усложнить исследователям анализ APK-файлов.
Компания Zimperium, не раз уделявшая много внимания проблеме зловредов в Google Play Store, изучила уловки киберпреступников, пытающихся уйти от декомпиляции их файлов.
Отправной точкой послужил твит Joe Security, в котором демонстрировался APK, уходящий от анализа, но прекрасно работающий на Android устройствах.
В отчёте zLab приводится цифра — 3300. Именно столько APK, по данным специалистов, используют нетипичные методы ухода от анализа, которые часто могут приводить к сбою в их работе. Тем не менее 71 вредоносный APK-файл успешно функционировал в Android версии 9 и выше при использовании методов антианализа.
Исследователи из Zimperium уточнили, что ни одно из этих приложений не представлено в Google Play Store. Эксперты даже оставили список из хешей этих программ, чтобы любители скачать софт со сторонних площадок не попались на вредонос.
Файлы в формате APK используют ZIP в двух режимах: без сжатия и с использованием алгоритма DEFLATE. Если установочный файл будет применять неизвестные или неподдерживаемые методы сжатия, его нельзя будет использовать на Android 8 и более старых версиях ОС.
Однако Android 9 и выше прекрасно прочитают такие файлы. Например, в Zimperium протестировали JADX, APKtool и родную утилиту macOS для упаковки. Ни один из таких файлов не поддаётся анализу.
Более того, авторы зловредных APK используют превышающие 256 байтов имена, что приводит к сбою в работе инструментов анализа.