Тестирование на проникновение приложения Андроид – часть 6

  • Автор темы Gidroponika
  • Дата начала
G

Gidroponika

51ea31372886bc38c1a54.png

А сейчас начнется веселье. Согласно Owasp все уязвимости были квалифицированы в TOP 10.



M1 – неправильное использование платформы

M2 – небезопасное хранения данных

M3 –небезопасное общение

M4 – небезопасная аутентификация

M5 – недостаточная криптография

M6 – небезопасная

M7 – код клиента

M8 – фальсификация кода

M9 – обратная разработка

M10 – посторонние функции



Также для практики сбора уязвимых приложений-pentestlab.blog



Мы используем банк Небезопасных Приложений Андроид (Insecure bank Android Application) для демонстрации уязвимостей -



Сбор информации
Используя drozer, мы можем собирать информацию о приложении Андроид



Код:
команда – run app.package.info –a <.apk name>

Детальное описание – UID, GID, разрешения пользователей, директория данных, Apk путь, разделяемые библиотеки, разделяемые пользователи, версия и название приложения.

20ef75fe2438348ca124d.png

Атакующие компоненты Aндроид

Как я уже определил, все компоненты деятельности Андроид, службы, провайдер контента и широковещательные приемники можно найти, перейдя по ссылке - Android Application Penetration Testin
g – Part 5, где мы можем искать их уязвимые места, и узнать, как эти компоненты могут быть уязвимы в приложении.



Атакующая деятельность
Экспортируемые виды деятельности


Экспортируемые виды деятельности (exported = True) – это те виды, деятельности, к которым можно получить доступ при помощи другого приложения на том же устройстве. В большинстве случаев после аутентификации в Android-приложении он переходит к новому действию, о котором, в основном, пользователи осведомлены (например, музыкальный плейлист после входа в музыкальный проигрыватель). Но разработчики сохраняют эти операции экспортированными и даже без пользовательских разрешений.



В файле манифеста Android действия упоминаются с экспортированным значением или с помощью команд drozer.



Мы можем получить информацию об экспортируемых видах деятельности.

Код:
команда – run App.activity.info –a <.apk name>

файл манифеста
Код:
<activity android:label=”@7F070040″ android:name=”com.android.insecurebankv2.LoginActivity”><intent-filter><action android:name=”android.intent.action.MAIN”><activity android:label=”@7F070040″ android:name=”com.android.insecurebankv2.LoginActivity”><intent-filter><action android:name=”android.intent.action.MAIN”> </action><category android:name=”android.intent.category.LAUNCHER”> </category></intent-filter></activity><activity android:label=”@7F070057″ android:name=”com.android.insecurebankv2.FilePrefActivity” android:windowSoftInputMode=”0x00000034″> </activity><activity android:label=”@7F070054″ android:name=”com.android.insecurebankv2.DoLogin”> </activity><activity android:label=”@7F07005B” android:name=”com.android.insecurebankv2.PostLogin” android:exported=”true”> </activity><activity android:label=”@7F07005E” android:name=”com.android.insecurebankv2.WrongLogin”> </activity><activity android:label=”@7F070055″ android:name=”com.android.insecurebankv2.DoTransfer” android:exported=”true”> </activity><activity android:label=”@7F07005D” android:name=”com.android.insecurebankv2.ViewStatement” android:exported=”true”> </activity>

Drozer

a00fcbb6e228a6a6adb0f.png

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



Давайте попробуем вызывать действия после входа без учетных данных, используя drozer.



Пример – Dotransfer, Viewstatement, Changepassword

Код:
Команда в drozer – run app.activity.start –компонент <.apkname>< activityname>

run app.activity.start –component com.android.insecurebankv2 com.android.insecurebankv2. Выполните переход



До

e8ff78bc05fdc89a24c11.png

После

7ee1b5e71a4b4da3361d9.png

Использование вредоносного приложения для вызова действий других приложений

Другой способ вызова действий других приложений – написать вредоносное приложение и передать ему название пакета и активности, чтобы запустить его. В нашем случае вредоносное приложение не требует каких-либо разрешений для запуска действий «Post login» уязвимого приложения.



Защита компонента активности


Настройка Андроид: смена экспортированного значения атрибута на ложное (false)
В файле AndroidManifest.XML нашего приложения нам следует добавить следующий атрибут к компоненту приложения для гарантии безопасности. В нашем случае после произведения входа деятельность должна быть безопасна.

Код:
<activity android: label=”@7F070055″ android: name=”com.android.insecurebankv2.DoTransfer” android: exported=”false“></activity>

Правдивое (True): Провайдер доступен для других приложений. Любое приложение может использовать URI контента провайдера, чтобы получить доступ к нему, с учетом разрешений, указанных для провайдера.



Ложное (False): Провайдер недоступен для других приложений. Выставьте в Андроид: exported=”false”, чтобы ограничить доступ к провайдеру для вашего приложения. Только у тех приложений, у которых такой же ID (UID) пользователя, как у провайдера, будут иметь доступ к нему.



Вышеприведенный код ограничивает доступ к другим приложениям или любому системному компоненту, отличному от текущего приложения. Только приложения, у которых такой же id пользователя, как и у текущего приложения, смогут получить доступ к этой операции.



Ограничение доступа с помощью пользовательских разрешений

Андроид: экспортируемый Атрибут не является единственным способом ограничить воздействие активности других приложений. Мы также можем вводить ограничения, основанные на разрешениях, определяя пользовательские разрешения для активности.



Это может быть полезно, если разработчик хочет ограничить доступ к компонентам своего приложения для тех приложений, у которых есть разрешения.
 
Похожие темы
Admin Взламываем сайты / Тестирование на проникновение с нуля Уязвимости и взлом 5
K [Udemy.com] [Все части] Взламываем сайты / Тестирование на проникновение с нуля Русская озвучка Раздачи и сливы 0
G Тестирование на проникновение приложения Android – Часть 12 Полезные статьи 0
G Тестирование на проникновение приложения Android – Часть 11 – Контрольный список Android Полезные статьи 0
K Корпоративные Лаборатории - Тестирование На Проникновение (эксперт) https://cloud.mail.ru/public/LeTY/nqyf9hawb Раздачи и сливы 0
K PentestIT-Тестирование на проникновение с использованием Metasploit Framework https://cloud.mail.ru/public/HQgW/7oreizmBV Раздачи и сливы 0
K Тестирование на проникновение с нуля Раздачи и сливы 0
K Тестирование на проникновение с помощью Kali Linux 2.0 Раздачи и сливы 0
K Тестирование На Проникновение С Помощью Kali Linux 2.0 Раздачи и сливы 0
G Тестирование на проникновение приложения Андроид – часть 10 Полезные статьи 0
G Тестирование на проникновение приложения Андроид – часть 9 Полезные статьи 0
G Тестирование на проникновение приложения Андроид – часть 8 Полезные статьи 0
G Тестирование на проникновение приложения Андроид – часть 7 Полезные статьи 0
G Тестирование на проникновение приложения для Android - часть 5 Полезные статьи 0
G Тестирование на проникновение приложений для Android - часть 4 Полезные статьи 0
G Тестирование на проникновение приложений для Android - часть 3 Полезные статьи 0
G Тестирование на проникновение для Android приложений - часть 2 Полезные статьи 0
G Тестирование на проникновение приложений для Android - часть 1 Полезные статьи 0
G Взламываем сайты Тестирование на проникновение с нуля - Часть 2 из 7 Уязвимости и взлом 1
K Тестирование на проникновение с помощью Kali Linux 2.0 + Бонус Готовый софт 2
wrangler65 Интересно Тестирование JavaScript-файлов для Bug-bounty хантеров Полезные статьи 0
D [Service]MASSIVE DDOS/ Мгновенное тестирование вашего ресурса. Ищу работу. Предлагаю свои услуги. 8
A Тестирование приложений Powershell вместе с Perl6 и Sparrow6 Программирование 0
K [GeekBrains.ru] Курс Тестирование ПО Раздачи и сливы 1
G Web Breaker - Динамическое тестирование Web - приложений Уязвимости и взлом 0
G Тестирование мобильной безопасности для защиты ваших приложений от кибер-угроз Полезные статьи 0
Admin MetaModule - тестирование единого пароля Уязвимости и взлом 0
Admin Интересно «Верните деньги, или мы идём в полицию». CrossCurve дала похитителям ровно 72 часа на возврат крипты. Новости в сети 0
Admin Интересно Читы, локеры и 110 заблокированных доменов. Группировка NyashTeam прячется за вывеской «Легиона» и продолжает охоту на геймеров. Новости в сети 0
Admin Статья Нетипичная змея. Реверсим приложение на Python c кастомным интерпретатором Вирусология 0
Admin Статья Пишем свой простейший дроппер на плюсах Вирусология 0
Admin Статья Пишем свой лоадер на плюсах - теория Вирусология 0
Admin Интересно Второй раз — это уже традиция. Антивирус eScan снова поймали на «сотрудничестве» с хакерами. Новости в сети 0
Admin Интересно Хакер думал, что украл пароль, а на самом деле – позвонил в полицию. На GitHub учат, как развести взломщика на эмоции (и логи). Новости в сети 0
Admin Интересно Четверть биткоина за «квантовые мозги». Рассказываем, как поднять крипту на знании физики. Новости в сети 0
Admin Интересно DynoWiper против польского света. Рассказываем историю самой мощной хакерской атаки на инфраструктуру страны за последние годы. Новости в сети 0
Admin Интересно Apple и OpenAI создают ИИ-жучки — микрофоны и камеры на теле будут слушать и снимать вас 24/7. Новости в сети 0
Admin Интересно Кликнули на файл «Задание_для_бухгалтера.txt»? Поздравляем — троян-шпион уже ворует ваши пароли. Новости в сети 0
Admin Статья Как на основе ФИО, даты рождения и района получить номер паспорта и ИНН. OSINT 0
Admin Статья Поднимаем личный VPN-сервер за 30 мин на своем VPS через Amnezia VPN Анонимность и приватность 0
Admin Разделение почты на Python по доменам Скрипты 0
Admin Интересно «Отдай мастер-пароль, или всё удалим!». Как хакеры берут на мушку пользователей LastPass. Новости в сети 0
Admin Статья Стеганография на примере Steghide Полезные статьи 0
Admin Интересно Ретро-хакинг на максималках. Почему ваша корпоративная сеть до сих пор думает, что на дворе девяностые. Новости в сети 0
Admin Статья Разработка малвари на С++. Глава II Вирусология 0
Admin Статья Разработка малвари на С++. Глава 1. Вирусология 0
Admin Статья Обход пароля на iphone Уязвимости и взлом 0
Admin Статья DDoS на Bluetooth. Разбираем трюк, который поможет отключить чужую колонку Полезные статьи 0
Admin Статья Взлом wi-fi на легке Полезные статьи 0
Admin Статья Полное Руководство по Google Dorks: Говорим с Поисковиком на Его Языке OSINT 0

Название темы