Возможно ли получить Android.mk или собственный исходный файл из файла .apk?

#android #security #android-ndk #decompiling #native-code

#Android #Безопасность #android-ndk #декомпиляция #собственный код

Вопрос:

Кажется, что довольно легко получить исходные файлы Java из файла .apk. Но возможно ли получитьAndroid.mk или собственный исходный файл из файла .apk с помощью инструментов или хитрых методов?

Я провожу исследование по безопасности собственного кода приложения Android, так что эти файлы для меня очень важны. Спасибо.

Комментарии:

1. Безопасность и декомпиляция не связаны между собой.

2. Да, они связаны, поскольку один из способов выяснить, является ли вредоносным приложение, использующее собственный код, — это сначала декомпилировать, а затем проверить его исходный код.

Ответ №1:

Вы не можете получить Android.mk из apk он нужен только для сборки, как таковой, он там не хранится (если только программист не поместил его в папку res / или что-то в этом роде).

Весь собственный код для приложения хранится в каталоге libs / в корне apk. Это скомпилированный код ARM или x86, или оба. Вы можете найти его в libs/architecture_type/lib_name.so. Вы можете изменить код с помощью objdump или gdb. Декомпиляция — гораздо более сложная задача, но вы можете найти какое-нибудь программное обеспечение, которое может вам подойти.

Редактировать: я заметил, что вы, похоже, беспокоитесь о том, что люди перепроектируют ваш код. Единственный верный способ предотвратить чей-либо обратный инжиниринг вашего кода — это не писать его в первую очередь. Однако вы можете сделать некоторые вещи, которые затруднят работу для людей, но кто-то достаточно настойчивый может обойти это.

Комментарии:

1. Я не беспокоюсь о том, что мое приложение подвергается обратному проектированию, но на самом деле я пытаюсь выполнить обратное проектирование в приложениях других пользователей с целью проведения исследований по безопасности собственного кода приложений Android. Большое спасибо!