Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
android-reverse-engineering-skill — Декомпилирует APK/XAPK/JAR/AAR файлы Android и извлекает HTTP API, шаблоны аутентификации и потоки вызовов с использованием jadx, с устойчивым к R8 восстановлением имен Kotlin для исследований безопасности и тестирования на проникновение. | Kitploit
Инструменты/GitHubGitHub/simoneavogadro/android-reverse-engineering-skill
Безопасность AndroidСтатический анализАнализ уязвимостейПентестинг мобильных приложенийОбратная инженерияТестирование безопасности APIСбор информацииТестирование на Проникновение

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Мобильная безопасность
Анализ Бинарных Файлов
Обучение и Образование
GitHubsimoneavogadro/android-reverse-engineering-skill

android-reverse-engineering-skill

Декомпилирует APK/XAPK/JAR/AAR файлы Android и извлекает HTTP API, шаблоны аутентификации и потоки вызовов с использованием jadx, с устойчивым к R8 восстановлением имен Kotlin для исследований безопасности и тестирования на проникновение.

Репозиторий
6.7k737739 дней назадПроверено Kitploit

Android Reverse Engineering & API Extraction — навык Claude Code

License: Apache-2.0 GitHub stars GitHub last commit

Навык Claude Code, который декомпилирует файлы Android APK/XAPK/JAR/AAR и извлекает HTTP API, используемые приложением — эндпоинты Retrofit, вызовы OkHttp, жёстко закодированные URL, шаблоны аутентификации — чтобы вы могли документировать и воспроизводить их без исходного кода.

Полноценная поддержка Kotlin: современные Android-приложения написаны на Kotlin/KMP и сильно обфусцированы с помощью R8. Этот навык восстанавливает оригинальные имена классов Kotlin из метаданных, которые R8 не может удалить, и извлекает API из Ktor, Apollo (GraphQL) и Koin — не только из классического стека Retrofit/OkHttp. См. Восстановление имён Kotlin ниже.

Поддержка Windows / PowerShell (экспериментальная): скрипты *.ps1 наряду с bash-скриптами — это недавний вклад сообщества, который всё ещё стабилизируется. По любым вопросам, пожалуйста, открывайте issue в этом репозитории (а не в upstream-форках контрибьюторов): PowerShell-скрипты поддерживаются здесь @SimoneAvogadro.

Содержание

  • Что он делает
  • Требования
  • Установка
  • Использование
  • Структура репозитория
  • Ссылки
  • Благодарности
  • Отказ от ответственности
  • Лицензия

Что он делает

ВозможностьОписание
Сначала фингерпринт (Фаза 0)Быстрая сортировка APK/XAPK за секунды — определение фреймворка (Flutter / React Native / Cordova / Xamarin / native-Kotlin), HTTP-стека, уровня обфускации и нативных библиотек до траты времени на полную декомпиляцию
ДекомпиляцияФайлы APK, XAPK, JAR и AAR с помощью jadx и Fernflower/Vineflower (один движок или сравнение бок о бок)
Восстановление имён KotlinВосстановление оригинальных имён классов *Repository / *ViewModel / *UseCase из обфусцированных R8 бинарников с использованием метаданных Kotlin, которые R8 не может удалить
Извлечение APIRetrofit, OkHttp, Volley и современные стеки Kotlin/KMP: Ktor, Apollo (GraphQL), Koin DI — эндпоинты, жёстко закодированные URL, заголовки аутентификации, токены и схемы подписи запросов HMAC
Трассировка потоков вызововОт Activities/Fragments через ViewModels и репозитории вплоть до HTTP-вызовов
Анализ структурыМанифест, пакеты, архитектурные паттерны
Работа с обфускациейУстойчивое к R8 извлечение путей/URL плюс стратегии навигации по выводу ProGuard/R8

Требования

Обязательные:

  • Java JDK 17+
  • jadx (CLI)

Опциональные (рекомендуемые):

  • Vineflower или Fernflower — лучший вывод на сложном Java-коде
  • dex2jar — необходим для использования Fernflower на файлах APK/DEX

Подробные инструкции по установке см. в plugins/android-reverse-engineering/skills/android-reverse-engineering/references/setup-guide.md.

Установка

Из GitHub (рекомендуется)

Внутри Claude Code выполните:

/plugin marketplace add SimoneAvogadro/android-reverse-engineering-skill
/plugin install android-reverse-engineering@android-reverse-engineering-skill

Навык будет постоянно доступен во всех будущих сессиях.

Из локального клона

git clone https://github.com/SimoneAvogadro/android-reverse-engineering-skill.git

Затем в Claude Code:

/plugin marketplace add /path/to/android-reverse-engineering-skill
/plugin install android-reverse-engineering@android-reverse-engineering-skill

Использование

Слэш-команда

/decompile path/to/app.apk

Это запускает полный рабочий процесс: проверку зависимостей, декомпиляцию и первоначальный анализ структуры.

Естественный язык

Навык активируется на фразах вроде:

  • "Decompile this APK"
  • "Reverse engineer this Android app"
  • "Extract API endpoints from this app"
  • "Follow the call flow from LoginActivity"
  • "Analyze this AAR library"

Ручные скрипты

Скрипты также можно использовать автономно:

# Check dependencies
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/check-deps.sh

# Install a missing dependency (auto-detects OS and package manager)
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/install-dep.sh jadx
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/install-dep.sh vineflower

# Fingerprint an APK/XAPK BEFORE decompiling (Phase 0 triage):
# framework, HTTP stack, obfuscation level, native libs, notable SDKs
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/fingerprint.sh app.apk

# Decompile APK with jadx (default)
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh app.apk

# Decompile XAPK (auto-extracts and decompiles each APK inside)
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh app-bundle.xapk

# Decompile with Fernflower
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh --engine fernflower library.jar

# Run both engines and compare
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh --engine both --deobf app.apk

# Find API calls — defaults to a full scan across every supported stack
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --retrofit
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --urls

# Modern Kotlin/KMP stacks and obfuscation-resistant extraction
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --ktor    # Ktor client
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --apollo  # Apollo / GraphQL
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --paths   # quoted path literals that survive R8 inlining

Восстановление имён Kotlin (деобфускация R8)

Большинство реальных приложений на Kotlin/KMP проходят через R8, поэтому декомпилированные классы выглядят как a.b.c. R8 переименовывает символы JVM, но не может удалить строки метаданных Kotlin — среде выполнения Kotlin (рефлексия, корутины) нужны оригинальные полные имена во время выполнения. Этот навык извлекает такие аннотации @DebugMetadata / @Metadata, чтобы восстановить карту обфусцированное → реальное имя класса. На типичном приложении он восстанавливает ~100 % классов *Repository / *ViewModel / *UseCase / *Impl, которые вы действительно хотите прочитать.

# 1. Build the mapping from the decompiled sources
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/recover-kotlin-names.sh output/sources/ output/names/
#    → output/names/mapping.tsv, mapping.json, by_package/
Скачать инструмент