Пентест мобильных приложений
Анализ защищённости приложений для iOS и Android и их серверных API: хранение и передача данных, криптография, WebView, обработка внешних данных, устойчивость к реверс-инжинирингу. Методология OWASP MASVS/MASTG, отчёт с CVSS и PoC, покрытие видно в платформе Scoper.
- Объект
- Нативные, гибридные и кроссплатформенные приложения для iOS и Android, SDK, серверные API, с которыми они работают
- Методология
- OWASP MASVS и MASTG, OWASP Mobile Top 10; оценка риска по CVSS 3.1
- Модель
- Серый ящик с тестовыми учётными записями (рекомендуем); белый ящик с исходным кодом; чёрный ящик по сборке из магазина
- Сроки
- 2–3 недели для одной платформы, 3–4 недели для iOS и Android с общим бэкендом
- Результат
- Отчёт с резюме для руководства, находками, PoC и рекомендациями с примерами кода; разбор с командой
- Перепроверка
- Одна контрольная, в течение 10 рабочих дней после запроса, включена в стоимость
Что даёт пентест мобильного приложения
Мобильное приложение работает на устройстве, которое вам не принадлежит и которое может быть скомпрометировано. Поэтому проверка охватывает две стороны: что приложение оставляет на устройстве и в трафике, и как им можно злоупотребить для доступа к серверным API. Уязвимости здесь приводят к утечке персональных данных, финансовым потерям и репутационному ущербу, а исправлять их сложнее, чем на сервере: обновление должно дойти до каждого пользователя.
В проект входят автоматизированное и ручное тестирование: инструментальные сканеры находят устаревшие библиотеки и типовые ошибки, а специалисты проверяют логику, хранение секретов, работу с WebView и платформенными механизмами, устойчивость к модификации и поведение серверной части. Это позволяет найти максимум уязвимостей, включая сложные логические ошибки, которые автоматика не видит.
Наши специалисты тестировали приложения для iOS и Android разного масштаба и назначения: банковские и платёжные клиенты, маркетплейсы, корпоративные приложения, SDK и приложения с собственной криптографией. Что именно проверяем на каждой платформе — ниже.
Покрытие по OWASP MASVS
| Область MASVS | Что проверяем | Примеры находок |
|---|---|---|
| Хранение данных (STORAGE) | Небезопасное логирование, запись секретов в общедоступные директории, доступ к сохранённым паролям и идентификаторам сессий, резервные копии, кеш | Токены сессий в plaintext, пароли в логах, персональные данные в доступных другим приложениям файлах |
| Криптография (CRYPTO) | Слабые алгоритмы, захардкоженные ключи шифрования, пароли и API-ключи в коде, управление секретами, генерация случайных чисел | AES с константным ключом в APK, ключи сторонних сервисов в ресурсах приложения |
| Аутентификация и сессии (AUTH) | Биометрия и PIN, хранение токенов, обновление сессий, защита от перебора на стороне API | Обход биометрии через подмену ответа, бессрочные токены |
| Сетевое взаимодействие (NETWORK) | Передача данных в открытом виде, отсутствие SSL pinning, проверка сертификатов, защищённость коммуникаций приложение — сервер | Перехват трафика в недоверенной Wi-Fi-сети, обход pinning |
| Взаимодействие с платформой (PLATFORM) | Обработка URL-схем и дип-линков, QR-кодов, Intent'ов, pasteboard, broadcast receivers и других внешних источников данных; WebView: XSS, UI redressing, открытие недоверенных страниц; утечки в общий буфер обмена, кеширование экранов, передача данных сторонним сервисам без уведомления пользователя | Экспортированная Activity с доступом к данным, выполнение JavaScript в WebView через дип-линк |
| Качество кода (CODE) | SQL-инъекции в локальные базы, чтение произвольных файлов, обработка внешних данных, уязвимые сторонние библиотеки | Path traversal через имя файла из API, устаревший SDK с известной CVE |
| Устойчивость к анализу (RESILIENCE) | Защита от реверс-инжиниринга и модификации: обфускация, детект root/jailbreak, антиотладка, контроль целостности | Отключение проверок через Frida, репак приложения с подменённым сервером |
Особенности iOS и Android
iOS
- Keychain, NSUserDefaults и файлы в песочнице: классы защиты, доступность данных при заблокированном устройстве, попадание в резервные копии iCloud и iTunes
- App Transport Security, pinning сертификатов и его обход через инструментирование
- Универсальные ссылки и URL-схемы, расширения приложений, межпроцессное взаимодействие
- Снимки экранов в переключателе задач, автозаполнение и буфер обмена
- Проверка jailbreak-детекта и защиты от отладки, анализ бинарного файла после расшифровки
Android
- Экспортированные Activity, Service, Broadcast Receiver и Content Provider, обработка Intent'ов и дип-линков
- Хранение в SharedPreferences, SQLite и внешнем хранилище, флаги резервного копирования
- Network Security Config, доверие пользовательским сертификатам, pinning
- WebView: включённый JavaScript, доступ к файлам, мосты JavaScript — Java, загрузка недоверенного контента
- Декомпиляция и анализ APK, обфускация, root-детект и контроль целостности, SDK и библиотеки с известными уязвимостями
Как мы работаем
- 01
Сбор информации об объекте
Изучаем документацию и структуру приложения, проводим декомпозицию и выделяем потенциально уязвимые интерфейсы. Анализируем сетевое взаимодействие и HTTP-запросы, обращения к файловой системе, буферу обмена, камере и другим ресурсам устройства. Результат — карта экранов и API-методов, по которой далее фиксируется покрытие.
- 02
Инструментальное сканирование
Определяем уязвимые и устаревшие версии сторонних библиотек в сборке. Запускаем средства анализа защищённости классов SAST и DAST для мобильных платформ, анализируем и верифицируем результаты, отсеиваем ложные срабатывания.
- 03
Ручной и полуавтоматический поиск уязвимостей
Основная часть проекта. Проверяем безопасность хранения и передачи данных, соблюдение приватности, уязвимости WebView, ошибки криптографии и управления секретами, обработку внешних данных, SQL-инъекции, чтение файлов, защиту от реверс-инжиниринга. Используем перехват трафика, инструментирование в рантайме и анализ декомпилированного кода.
- 04
Эксплуатация обнаруженных уязвимостей
Подтверждаем находки эксплуатацией и демонстрируем получение доступа к защищаемым ресурсам: данным других пользователей, серверным функциям, локальным секретам. Показываем возможности полной или частичной компрометации ресурсов мобильного приложения и связанных с ним сервисов.
- 05
Отчёт и повторные проверки
Составляем отчёт с описанием каждой уязвимости, оценкой риска по CVSS, шагами воспроизведения и рекомендациями по устранению с примерами кода и лучшими практиками. После исправления проводим контрольную перепроверку и подтверждаем, что исправления работают.
Ход работ виден в Scoper
Платформа DeteAct Scoper показывает прогресс тестирования и статус каждой уязвимости в реальном времени: заказчик всегда знает, что проверено, что найдено и что уже исправлено.
О платформе Scoper- Прозрачность процесса: проверенные экраны, API-методы и роли отображаются по мере работы
- Статус уязвимостей в реальном времени — от обнаружения до подтверждения исправления
- Приоритизация задач по устранению по уровню риска и затрагиваемым функциям
- Общее пространство для вопросов между пентестерами, разработчиками и ИБ-командой
- Статистика по запросам, методам и типам проверок и отчётность на любом этапе
Что нужно для старта
Чем полнее доступ, тем выше покрытие за то же время. Минимальный набор — сборки и тестовые учётные записи; остальное ускоряет работу.
- Сборки
- IPA и APK/AAB тестовой версии или доступ в TestFlight и внутреннее тестирование Google Play. Желательно без обфускации либо с картой символов
- Учётные записи
- Тестовые аккаунты для каждой роли (пользователь, премиум, администратор) и тестовые платёжные данные, если есть платежи
- Серверы
- Адреса тестовых серверов API, идентичных продакшену; при тестировании продакшена — согласованные окна и исключения
- Документация
- Описание функций, схема API (OpenAPI, GraphQL-схема), особенности защиты: pinning, root-детект, собственная криптография
- Исходный код
- Не обязателен. Доступ к репозиторию переводит работу в формат белого ящика и совмещается с аудитом кода
Что получает компания
Опыт в мобильной безопасности
Специалисты с опытом тестирования приложений для iOS и Android разной сложности и назначения — от банковских клиентов до SDK.
Автоматизированное и ручное тестирование
Сканеры закрывают типовые ошибки, специалисты — логику, платформенные механизмы и цепочки из нескольких находок, которые автоматика не связывает.
Отчёт с примерами кода
Каждая уязвимость описана с шагами воспроизведения, оценкой риска и рекомендацией по устранению с примерами кода и лучшими практиками.
Соответствие стандартам
Тестирование по OWASP Mobile Top 10 и MASVS/MASTG; отчёт принимают аудиторы по PCI DSS, ГОСТ Р 57580 и требованиям ФСТЭК.
Поддержка после тестирования
Помогаем разработке устранить находки и проводим повторное тестирование, подтверждающее эффективность исправлений.
Прозрачность процесса
Платформа Scoper даёт регулярные обновления о ходе работ и статусе тестирования без запросов «как дела?».
Вопросы о пентесте мобильных приложений
Сколько стоит пентест мобильного приложения?
Сколько длится тестирование мобильного приложения?
Что нужно предоставить для начала работ?
Проверяете ли вы серверную часть и API?
По какой методологии проводится тестирование?
Нужны ли jailbreak или root для тестирования?
Как вы подтверждаете, что приложение проверено полностью?
Проводится ли повторная проверка после исправлений?
Заказать пентест мобильного приложения
Пришлите ссылку на приложение в магазине или тестовую сборку, укажите платформы, роли пользователей и желаемые сроки. Уточним границы работ, предложим уровень проверки по MASVS и зафиксируем стоимость в течение одного-двух рабочих дней. NDA подписываем до получения любых материалов.
- Почта
- info@deteact.ru
- Телефон
- +7 499 444-12-46
- Офис
- Москва, Пресненская набережная, 10с2 (IQ-квартал, Москва-Сити)
- Лицензия
- ФСТЭК России №Л024-00107-00/00581935
