Перейти к содержимому
Aback Tools Logo

Сканер методов обфускации Android

Сканируйте декомпилированный исходный код Android APK/DEX, чтобы определить методы и инструменты обфускации. Обнаруживает ProGuard (однобуквенные имена, внутренние классы a$b), DexGuard (шифрование строк, глубокая обфускация пакетов), DashO (расшифровка XOR, аннотации), шифрование строк (массивы символов, Base64, шестнадцатеричные), шифрование ресурсов (decryptResource, пользовательские загрузчики) и встроенную обфускацию (библиотеки JNI, .so). Каждое обнаружение включает оценку достоверности, подробный анализ индикаторов и контекст фрагмента кода. Бесплатно, конфиденциально и не требует регистрации.

Android Obfuscation Technique Scanner

Scan decompiled Android APK/DEX code to identify obfuscation techniques and tools. Detects ProGuard, DexGuard, DashO, string encryption, resource encryption, and native code obfuscation based on naming conventions, string encoding patterns, annotations, JNI usage, and resource handling signatures with confidence scoring.

Examples:

Paste decompiled Android source code (Java or DEX bytecode) above and click Scan for Obfuscation to identify which obfuscation techniques were used. The scanner analyzes naming conventions, string encoding patterns, annotations, resource handling, and JNI usage to detect ProGuard, DexGuard, DashO, string encryption, resource encryption, and native code obfuscation. Try loading an example to see how it works!

Функции

  • Обнаружение мультиобфускатора Обнаруживает шесть основных категорий обфускации Android: ProGuard (однобуквенные имена, внутренние классы a$b, удаление исходных файлов), DexGuard (шифрование строк, глубокая обфускация пакетов, сокрытие отражений), DashO (аннотации com.preemptive, XOR целочисленного массива, расшифровка символьного кода), общее шифрование строк (массивы символов, StringBuilder, Base64, hex), шифрование ресурсов (decryptResource, пользовательские загрузчики) и встроенная обфускация посредством интеграции JNI/.so.
  • Анализ на основе шаблонов Использует несколько эвристик обнаружения, включая соглашения об именовании (однобуквенные классы, нумерованные пакеты), шаблоны кодирования (Base64, шестнадцатеричный, XOR), структурные сигнатуры (внутреннее именование классов, конструкция StringBuilder), использование API (вызовы отражения, объявления JNI, загрузка пользовательских ресурсов) и обнаружение аннотаций (DashO @Obfuscate). Каждый индикатор оценивается по шкале от 1 до 5 и суммируется для получения рейтинга достоверности для каждого обфускатора.
  • Оценка риска и оценка достоверности Каждое обнаружение включает оценку достоверности от очень низкой (1) до очень высокой (5) в зависимости от качества и количества индикатора. Надежные подписи, такие как импорт DashO или шаблоны внутренних классов ProGuard, оцениваются выше. Более мягкие индикаторы, такие как короткие имена методов или использование StringBuilder, способствуют средней достоверности. Верхнее совпадение указывает на наиболее вероятный использованный метод запутывания.
  • Аннотированный код и отчет об анализе Отображает аннотированный исходный код со встроенными маркерами обнаружения, показывающими, где именно был обнаружен каждый шаблон обфускации. Подробный копируемый отчет суммирует все обнаружения с подробностями по каждому показателю, оценками достоверности и описаниями действий. Вся обработка выполняется полностью в вашем браузере без загрузки на сервер.

Варианты использования

  • Оценка безопасности APK Оцените уровень безопасности APK-файлов Android, определив, какие методы обфускации используются. Определите, использует ли приложение базовую обфускацию ProGuard или расширенные коммерческие средства защиты, такие как DexGuard или DashO. Оцените общую силу обфускации и определите потенциальные слабые места в схеме защиты.
  • Анализ вредоносных программ и обратное проектирование. Анализируйте потенциально вредоносные приложения Android, чтобы понять их уровни обфускации. Определите шифрование строк, шифрование ресурсов и обфускацию собственного кода, которые авторы вредоносных программ используют для сокрытия конечных точек управления и контроля, URL-адресов полезной нагрузки и вредоносной логики от инструментов статического анализа.
  • Аудит целостности и защиты приложений Проведите аудит собственных приложений Android, чтобы убедиться, что обфускация применяется правильно по всей базе кода. Обнаруживайте незащищенные пути кода, незашифрованные строки, содержащие ключи или токены API, и убедитесь, что правила ProGuard/DexGuard правильно настроены для защиты конфиденциальной логики.
  • Конкурентная разведка. Анализируйте приложения Android конкурентов, чтобы понять их стратегию запутывания. Определите, используют ли они стандартный ProGuard или коммерческие решения, такие как DashO. Эта информация может помочь сравнить вашу собственную стратегию защиты приложений с отраслевыми стандартами.
  • Предварительная проверка безопасности. Проверьте эффективность обфускации перед выпуском обновлений приложения в рабочую среду. Сканируйте декомпилированные сборки выпусков, чтобы убедиться, что все пути конфиденциального кода правильно скрыты, не осталось ключей API в виде открытого текста и что правила ProGuard/DexGuard применяются должным образом во всех модулях.
  • Обучение безопасности Android Узнайте о методах обфускации Android в интерактивном режиме, изучая реальные шаблоны обфускации. Узнайте, как ProGuard переименовывает классы и методы, как DexGuard шифрует строки и как DashO применяет обфускацию потока управления. Отлично подходит для студентов и исследователей в области мобильной безопасности.

О сканере обфускации Android

  • Что такое обфускация Android? Обфускация Android — это практика преобразования кода приложения Android (байт-код Java/Kotlin), чтобы затруднить реверс-инжиниринг при сохранении функциональности. Общие методы включают переименование классов и методов в бессмысленные имена (ProGuard), шифрование строковых литералов (DexGuard), применение обфускации потока управления (DashO), перемещение конфиденциального кода в собственные библиотеки и шифрование файлов ресурсов. Android Studio по умолчанию включает ProGuard, а коммерческие решения, такие как DexGuard и DashO, обеспечивают более надежную защиту ценных приложений.
  • Как работает сканер Сканер анализирует декомпилированный исходный код Java или байт-код DEX на наличие закономерностей, характерных для различных инструментов обфускации Android. Он использует несколько эвристик обнаружения: соглашения об именовании (однобуквенные имена классов, нумерованные пакеты, внутренние классы a$b), шаблоны кодирования строк (массивы символов, конкатенация StringBuilder, декодирование Base64, шестнадцатеричный анализ), структурные сигнатуры (код с большим количеством отражений, объявления JNI, пользовательские загрузчики ресурсов) и отпечатки пальцев, специфичные для инструмента (аннотации DashO, атрибуты ProGuard SourceFile). Каждый показатель оценивается и агрегируется в рейтинги достоверности для каждого обфускатора.
  • Ограничения и ложные срабатывания Сканер работает с декомпилированным исходным кодом и во всех случаях не может анализировать необработанный байт-код DEX напрямую. Некоторые законные шаблоны кода (например, интенсивное использование отражений в библиотеках платформы) могут вызывать обнаружения с низкой степенью достоверности. Обфускаторы с пользовательскими конфигурациями или необычными настройками могут создавать неожиданные шаблоны именования, которые не обнаруживаются. Коммерческие защитники могут применять несколько методов одновременно, что затрудняет приписывание конкретных закономерностей одному инструменту. Сканер предоставляет указания, а не окончательное доказательство использования конкретного обфускатора.
  • Конфиденциальность и безопасность Все сканирование и анализ выполняются полностью в вашем браузере с использованием JavaScript. Ваш декомпилированный исходный код, обнаруженные индикаторы и результаты анализа никогда не покинут ваше устройство. Нет загрузки на сервер, вызовов API и сбора данных. Это очень важно при анализе проприетарных приложений Android, APK-файлов, проходящих проверку безопасности, или потенциально вредоносного кода. Вы можете сканировать столько файлов, сколько вам нужно, без регистрации, учетных записей и ограничений на использование.

Часто задаваемые вопросы

Сканер обнаруживает шесть категорий: ProGuard (однобуквенные имена классов/методов, шаблоны внутренних классов a$b, удаление атрибутов SourceFile), DexGuard (шифрование строк, глубокая обфускация пакетов, использование интенсивного отражения), DashO (аннотации com.preemptive.*, расшифровка строк целочисленных массивов, декодирование символов XOR), шифрование строк (массивы символов, фрагменты StringBuilder, декодирование Base64/hex), шифрование ресурсов (вызовы decryptResource, пользовательские загрузка ресурсов) и встроенная обфускация (собственные методы JNI, System.loadLibrary, интеграция .so).

Сканер принимает декомпилированный исходный код Java из таких инструментов, как CFR, JD-GUI, JADX или APKTool, а также выходные данные байт-кода DEX. Для достижения наилучших результатов вставляйте полные декомпилированные классы, включающие тела методов, объявления полей и аннотации. Частичные фрагменты кода по-прежнему будут анализироваться, но могут привести к меньшему количеству обнаружений.

Сильные индикаторы, такие как импорт DashO com.preemptive.* или шаблоны внутренних классов ProGuard (a$b), дают очень высокую уверенность. Более мягкие индикаторы, такие как короткие имена методов или использование StringBuilder, дают средний-низкий уровень уверенности. Показатель достоверности (1–5) отражает среднюю силу всех индикаторов, найденных для каждого обфускатора.

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

ProGuard — это бесплатный обфускатор с открытым исходным кодом, включенный в Android Studio для базового обфускации и оптимизации имен. DexGuard — это коммерческое расширение от Guardsquare, которое добавляет расширенные средства защиты: шифрование строк, запутывание отражений, шифрование ресурсов, обнаружение несанкционированного доступа и защиту от динамической загрузки. DexGuard значительно более агрессивен.

Сканер обнаруживает наличие и использование собственного кода (методы JNI, вызовы System.loadLibrary, ссылки .so), но не анализирует сами собственные библиотеки. Для анализа собственного кода требуется отдельный инструмент двоичного анализа, способный анализировать машинный код ARM/x86 или заголовки формата ELF.

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

Да, абсолютно. Сканер полностью работает в вашем браузере с использованием JavaScript. Ваш декомпилированный исходный код, все обнаруженные индикаторы и результаты анализа никогда не загружаются на какой-либо сервер и не передаются по сети. Никаких вызовов API или сбора данных.

Да — 100 % бесплатно, без регистрации, аккаунта и ограничений на использование. Сканируйте столько образцов исходного кода Android, сколько вам нужно. Инструмент полностью работает в вашем браузере — ваш код никогда не покидает ваше устройство.