Как извлечь APK из Android Work Profile (рабочий профиль Android)

Взлом приложений MMSF фреймворк

При проведении пентеста мобильных приложений нередко возникает необходимость извлечь APK для последующего статического анализа. В большинстве случаев эта задача решается стандартными средствами Android и ADB, однако ситуация существенно усложняется, если приложение установлено в Work Profile (рабочем профиле Android) на устройстве под управлением Microsoft Intune.

Еще по теме: Анализ APK-файлов на Android Termux

В данной статье разобран реальный практический кейс извлечения APK корпоративного приложения, доступного исключительно через Work Profile. Рассмотрены причины, по которым стандартные методы не работают, описаны неудачные попытки, приведено рабочее решение без root-доступа, а также показана автоматизация процесса с использованием MMSF.

Исходные условия и постановка задачи

Тестирование проводилось на корпоративном Android-устройстве, зарегистрированном в Microsoft Intune, со следующими параметрами:

  • настроенный Work Profile с корпоративными приложениями
  • целевое приложение доступно только внутри рабочего профиля
  • усиленные политики безопасности Intune
  • отсутствие root-доступа
  • активные MDM-ограничения

Цель тестирования — извлечь APK приложения для статического анализа и поиска уязвимостей на уровне кода.

Почему стандартные методы извлечения не работают

Work Profile реализован в Android как отдельный пользовательский профиль (как правило, user ID 10 и выше). Это создает изолированную среду выполнения, предназначенную для разделения корпоративных и личных данных.

На практике это приводит к следующим ограничениям:

  • стандартные ADB-команды не имеют доступа к данным приложений рабочего профиля
  • файловая система жестко изолирована между профилями
  • приложения из Work Profile не отображаются в стандартных списках пакетов без указания пользователя

Microsoft Intune добавляет дополнительные уровни защиты поверх стандартной модели Android:

  • DLP-политики, запрещающие копирование корпоративных данных
  • политики защиты приложений
  • механизмы условного доступа в зависимости от состояния устройства
  • дополнительные меры защиты, реализованные внутри самих корпоративных приложений

Даже при включенных developer options сохраняются жесткие ограничения:

  • отсутствует прямой доступ к каталогам приложений рабочего профиля
  • ADB shell ограничен при попытках работы с пользовательскими профилями
  • команды package manager требуют повышенных привилегий

Неудачные попытки извлечения APK

Попытка 1: прямое извлечение через ADB

Результат: Permission denied либо крайне ограниченный вывод.

Неудачные попытки извлечения APK из Android Work Profile

Причина: отсутствие прав доступа к данным Work Profile без root-доступа.

Попытка 2: использование root-доступа

Причина неудачи: политики Intune блокируют рутирование устройства и любые попытки получения привилегированного доступа.

Попытка 3: дамп через Package Manager

Результат: доступна лишь часть метаданных, путь к APK отсутствует.

Причина: ограничения Work Profile скрывают реальные пути к файлам приложения.

Попытка 4: прямой pull APK из рабочего профиля

Результат: Permission denied или unknown package.

Неудачные попытки извлечения APK из Android Work Profile

Причина: строгая изоляция файловой системы Work Profile, сохраняющаяся даже при включенной отладке.

Установка приложения вне Work Profile

После серии неудачных попыток выяснилось, что приложение можно установить за пределами Work Profile, перенеся его в основной пользовательский профиль устройства.

Во многих случаях корпоративные приложения, распространяемые через рабочий профиль, технически являются обычными APK. Ограничения касаются механизма распространения и политики установки, а не самого приложения.

Общая логика решения

  1. определить имя пакета приложения
  2. установить уже существующее приложение в основной профиль пользователя
  3. извлечь APK стандартными средствами

Ручной процесс извлечения APK из рабочего профиля

Шаг 1: определение имени пакета

Ручной процесс извлечения APK из рабочего профиля

Команда позволяет определить текущее активное приложение и его имя пакета.

Шаг 2: установка приложения в основной профиль

Команда указывает package manager установить уже имеющееся приложение из рабочего профиля в основной профиль пользователя (user 0).

Шаг 3: извлечение APK стандартными методами

Ручной процесс извлечения APK из рабочего профиля

После этого APK доступен для статического анализа.

Автоматизация процесса с помощью MMSF

После успешного ручного извлечения был разработан модуль для MMSF, автоматизирующий весь рабочий процесс.

Установка и запуск MMSF

Использование модуля Work Profile

Автоматическое извлечение APK

Автоматизация процесса с помощью MMSF

Практические ограничения и нюансы

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

Заключение

  • Изоляция Work Profile реализована эффективно и усложняет извлечение APK
  • Многие приложения ограничены на уровне распространения, а не технической реализации
  • Обходные решения существуют, но требуют понимания модели Android Enterprise
  • Автоматизация с помощью MMSF значительно снижает трудозатраты
  • Фиксация неудачных попыток помогает выстроить рабочую методологию

Извлечение APK из рабочего профиля на устройствах под управлением Microsoft Intune является нетривиальной задачей. Стандартные методы оказываются неэффективными из-за изоляции профилей и MDM-ограничений. Тем не менее перенос приложения в основной профиль пользователя позволяет обойти эти ограничения и выполнить извлечение APK стандартными средствами.

Автоматизация данного подхода в MMSF делает процесс воспроизводимым и удобным для использования в рамках мобильного пентеста.

ПОЛЕЗНЫЕ ССЫЛКИ:

QUASAR

Этичный хакер и компьютерный ниндзя. Новые статьи в нашей Телеге!

Добавить комментарий