Декомпиляция android-приложений

Big Brother's Blog

Понадобилось мне зареверсить одно приложение и подумал, почему бы статью об этом не написать?


При реверсинге может возникнуть 2 случая:


1. Простой:


У вас на руках есть .apk файл приложения. Можно приступать к реверсу.


2. Сложный:


Приложение есть только в googleplay. Прийдётся выковыривать приложение из телефона.


Для этого случая понадобятся root права на андроид.


Я начну со второго, а после этого перейдём к реверсу(самая лёгкая часть).


Настраиваем ADB.


Нам понадобится adb на компьютере:


Код:


sudo add-apt-repository ppa:nilarimogard/webupd8

sudo apt-get update

sudo apt-get install android-tools-adb android-tools-fastboot


После установки необходимо опознавание устройств, в терминале:


Код:


sudo nano /etc/udev/rules.d/51-android.rules


Вставляем:


И выдаём права:


Код:


sudo chmod a+r /etc/udev/rules.d/51-android.rules

На android-устройстве нужно включить режим отладки по USB.


Для этого в настройки > о телефоне неслолько раз подряд жмём по номеру сборки. Разблокируется режим разработчика. Далее идём в настройки > для разработчиков и ставим галку на Отладка по USB.

Подключаем телефон к компьютеру, должно высветиться такое окно:

Жмём окей. В терминале вводим:


Код:


sudo adb devices


Если есть ваш телефон, то всё ок.

Достаём apk файл.


Я буду показывать на примере BlueBorne Vulnerability Scanner. Он есть только в гугл плей.


Установим приложение:

Далее в терминале:


Код:


sudo adb shell

su

ls /data/app

Нам покажет все установленные приложения и их расположение. Как видно, BlueBorne Scanner находится по


/data/app/com.armis.blueborne_detector-1.


Если ввести


ls /data/app/com.armis.blueborne_detector-1, то в ответ получим


Код:


base.apk

lib


base.apk - это и есть приложение. Скопируем его на cd-карту:


Код:


cp /data/app/com.armis.blueborne_detector-1/base.apk /sdcard/


Выходим из android-shell в обычный терминал (2 раза Ctrl+d) и копируем с cd-карты на компьютер:


Код:


sudo adb pull /sdcard/base.apk

Меня, кстати говоря, сильно удивило, что при установке приложения через гугл плей и установке через apk-файл требуются разные разрешения. Кажется, гугл что-то скрывает...

Декомпилируем.

Нам понадобится apktool для декомпиляции и dex2jar для вытаскивания кода (оба есть по умолчанию в Kali).


Декомпилируем:


Код:


sudo apktool -r -s d base.apk

В созданной нам понадобится classes.dex (вся логика программы). Получаем .JAR:


Код:


d2j-dex2jar -r -ts classes.dex


На выходе получаем classes-dex2jar.jar, который можно распоковать, я пользуюсь jd-gui для просмотра:

Всем спасибо за внимание!

С Уважением, Большой Брат!

Мой личный блог в телеграме t.me/bigbroblog

Android

1K постов7.8K подписчиков

Правила сообщества

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


В сообществе запрещены:

* заведомо деструктивные рекомендации

* бессодержательная переписка, особенно с переходом на личности собеседников

* обсуждение нужности рутового доступа (он нужен, и если у вас его нет - мы вам искренне посочувствуем, но искать другие способы решения вашей проблемы не будем)

* обсуждение нужности ПО от Google (необходимости в нем нет, и если вам этот функционал не нужен - смело запускайте pm disable-user или даже pm uninstall, только не забудьте предварительно сделать полную резервную копию)


Если вы просите о помощи, обязательно укажите максимально полную информацию об используемом вами устройстве, чего вы хотите добиться и какие шаги для этого предпринимали - это существенно ускорит получение ответа, так как из обсуждения будут исключены диалоги вида "попробуй вот так - пробовал, не помогает". Соответственно, и при ответе следует давать рекомендации, подходящие для любого устройства. Если вы не уверены в универсальности решения, напишите об этом явно: "у меня %s и мне помогло %s".


Данная редакция правил действует с момента ее публикации: 2022-01-27 22:00:00 +03:00

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества