Головна / Блог / Пентест
Пентест

Пентест мобільного застосунку: що перевіряють в iOS і Android?

Що перевіряють під час пентесту мобільного застосунку: дані на телефоні, API, вхід і сесії, платежі, секрети в коді, сервер. За OWASP MASVS і MASTG.

ПоділитисяLinkedInTelegram
App: Пентест мобільного застосунку. Дані на телефоні; API; Вхід; Сесії
Зміст статті
  1. Коротко
  2. Що перевіряють: таблиця
  3. Дані на телефоні
  4. Зв'язок із сервером і API
  5. Вхід, сесії і права доступу
  6. Платежі і покупки в застосунку
  7. Секрети в коді і захист від розбору
  8. Сервер застосунку (бекенд)
  9. iOS і Android: у чому різниця
  10. Що надає замовник
  11. Що ви отримаєте в результаті
  12. Чекліст перед пентестом мобільного застосунку
  13. FAQ
  14. Посилання

Під час пентесту мобільного застосунку перевіряють шість речей: які дані застосунок лишає на телефоні, як він обмінюється даними із сервером і його API, як працюють вхід і сесії, чи не можна обійти оплату, чи немає в коді вшитих паролів і ключів і чи захищений сам сервер застосунку. Для iOS і Android основою є стандарт OWASP MASVS (перелік вимог до безпеки мобільних застосунків) і посібник OWASP MASTG (як саме ці вимоги перевіряти), а сервер і API тестують за методикою OWASP для вебзастосунків. [1] [4]

Пентест мобільного застосунку означає ручну перевірку застосунку і його сервера, під час якої фахівець діє як зловмисник: розбирає збірку, перехоплює трафік і пробує дістатися чужих даних, грошей чи функцій. Нижче таблиця з прикладами ризиків, пояснення до кожної частини, що надати виконавцю і що ви отримаєте. Загальний формат роботи описано на сторінці пентест.

Коротко

  • Станом на жовтень 2026 року актуальні OWASP MASVS v2.1.0 (січень 2024) і MASTG v2.0.0 (червень 2026). Попросіть виконавця назвати версії, за якими він працює. [2] [3]
  • MASVS ділить перевірку на вісім груп: зберігання даних, криптографія, вхід і права, мережа, взаємодія з телефоном, якість коду, стійкість до розбору і приватність. [1]
  • Сам MASVS сервер не покриває. Найсерйозніші проблеми часто живуть саме в API, тому його варто включити в межі перевірки. [4]
  • Від замовника потрібні збірки для iOS і Android, тестові акаунти для кожної ролі, опис API і контакт розробника.
  • Результат: звіт із відтвореними знахідками, впливом на бізнес і порядком виправлень, а після виправлень ретест, якщо він погоджений.

Що перевіряють: таблиця

Що перевіряютьПриклад ризикуНавіщо бізнесу
Дані на телефоніТокен входу і номер картки лежать у файлі без шифруванняВтрачений чи заражений телефон не має ставати витоком даних клієнта
Зв'язок із серверомЗастосунок довіряє будь-якому сертифікату, трафік можна підмінити в публічній мережіНіхто посередині не читає і не змінює запити клієнтів
API сервераЗміна номера в запиті показує профіль іншого користувачаОдин клієнт не бачить даних іншого, а витік не стає новиною
Вхід і сесіїПісля виходу старий токен далі працює, код з SMS можна перебратиЧужий акаунт не можна захопити, вкрадена сесія швидко гасне
Платежі і покупкиЗастосунок сам вирішує, що покупка успішна, сервер не перевіряєПлатний доступ не дістається безкоштовно, немає втрат на шахрайстві
Секрети в кодіУ збірці знайдено ключ до хмарного сховища або платіжного сервісуКлюч не можна витягти з магазину застосунків і використати проти вас
Взаємодія з телефономЧужий застосунок відкриває внутрішній екран через посиланняІнші застосунки на телефоні не отримують зайвого доступу
Стійкість до розборуПеревірку ліміту або рівня доступу легко вимкнути в зміненій збірціВажливі правила виконує сервер, а не телефон користувача

Дані на телефоні

Тестувальник встановлює застосунок, проходить основні сценарії і дивиться, що залишилося на пристрої: файли, локальна база, журнали, кеш, резервні копії, знімки екрана в перемикачі застосунків. Типова знахідка: токен сесії (цифровий пропуск після входу) або персональні дані лежать відкрито, хоча iOS і Android мають захищені сховища для ключів, Keychain і Keystore.

Окремо перевіряють, що потрапляє в журнали і в резервні копії телефону. MASVS виносить зберігання даних в окрему групу вимог. [1]

Зв'язок із сервером і API

API означає спосіб, яким застосунок говорить із сервером: кожна кнопка в застосунку зазвичай перетворюється на запит. Тестувальник перехоплює ці запити і перевіряє дві речі. Перша: чи шифрується з'єднання і чи перевіряє застосунок сертифікат сервера, щоб ніхто посередині не підмінив відповідь. Друга: чи перевіряє сервер кожен запит, а не довіряє застосунку.

Найчастіша серйозна проблема виглядає просто: у запиті є номер замовлення чи профілю, і якщо змінити його, сервер віддає чужі дані. Мобільний інтерфейс цього не показує, але зловмисник працює із запитами напряму, без застосунку. Детальніше про перевірку API у статті як перевіряють безпеку сайту і API.

Вхід, сесії і права доступу

Тут перевіряють увесь шлях користувача: реєстрацію, вхід, відновлення пароля, вхід за відбитком чи обличчям, вихід. Типові питання: чи можна перебрати код з SMS, чи гасне сесія після виходу і зміни пароля, чи не можна обійти вхід за біометрією, просто змінивши відповідь у застосунку.

MASVS прямо каже, що рішення про доступ має ухвалювати сервер, а застосунок лише правильно користується протоколами входу. Для чутливих дій, як-от переказ грошей чи зміна телефону, потрібне додаткове підтвердження. [8] Окремо перевіряють ролі: чи може звичайний користувач викликати функцію менеджера чи адміністратора.

Платежі і покупки в застосунку

Якщо в застосунку є оплата, підписка чи бонуси, тестувальник шукає спосіб отримати платне без оплати: змінити суму в запиті, повторити запит на нарахування бонусу, підмінити відповідь «оплачено». Google для Android прямо радить переносити чутливу логіку на свій сервер і перевіряти кожну покупку там, перш ніж відкривати доступ. [6]

Сам платіжний провайдер і магазини застосунків належать іншим компаніям. Їх не тестують, перевіряють лише вашу інтеграцію з ними.

Секрети в коді і захист від розбору

Будь-яку збірку з App Store чи Google Play можна завантажити і розібрати. Тому тестувальник шукає в ній вшиті паролі, ключі API, адреси внутрішніх сервісів і тестові доступи. OWASP описує вшиті в пакет застосунку секрети як окрему слабкість. [5] Правило просте: усе, що є в застосунку, рано чи пізно побачить сторонній.

Стійкість до розбору (захист від зміни і копіювання застосунку) потрібна не всім. Для банківських застосунків, ігор із платними предметами чи застосунків із цінним вмістом її перевіряють глибше: чи працює застосунок на телефоні зі зламаним захистом системи, чи помічає зміну власного коду. Але цей захист лише ускладнює атаку, а важливі правила все одно має перевіряти сервер.

Сервер застосунку (бекенд)

Бекенд означає сервер і бази даних, з якими працює застосунок. MASVS і MASTG його не покривають і радять перевіряти окремо, за стандартами OWASP для вебзастосунків, зокрема посібником WSTG. [4] [7] На практиці мобільний пентест без API дає неповну картину: застосунок може бути зроблений акуратно, а сервер віддавати чужі дані будь-кому, хто знає адресу запиту.

Тому в межах перевірки варто прямо записати: застосунок iOS, застосунок Android, API, адмінпанель, якщо вона є. Якщо щось лишається поза тестом, це має бути видно у звіті.

iOS і Android: у чому різниця

Вимоги MASVS однакові для обох платформ, а методи перевірки в MASTG розписані окремо для кожної. [3] Відрізняються захищені сховища, правила дозволів, спосіб, яким інші застосунки можуть відкривати ваші екрани, і інструменти аналізу. Тому дві версії одного застосунку тестують окремо: помилка часто є лише на одній платформі, бо їх пишуть різні люди.

Що надає замовник

MASVS радить формат «відкритої книги»: тестувальник має доступ до розробників, документації, вихідного коду і щонайменше одного акаунта для кожної ролі. [4] Мінімум, який варто підготувати:

  • збірки для iOS (через TestFlight або файл для тестового пристрою) і Android (файл APK або AAB), бажано без додаткового захисту від розбору для основної частини тесту;
  • по два тестові акаунти на кожну роль, щоб перевірити доступ одного користувача до даних іншого;
  • опис API або колекцію запитів, адресу тестового сервера;
  • тестові картки або пісочницю платіжного провайдера, якщо є оплата;
  • контакт розробника для швидких питань і письмовий дозвіл із межами перевірки.

Повний список кроків є в статті як підготуватися до пентесту.

Що ви отримаєте в результаті

  • Короткий висновок для керівництва: що знайдено, чим це загрожує бізнесу, що виправити першим.
  • Знахідки з кроками відтворення, доказами і оцінкою ризику, окремо для iOS, Android і API.
  • Конкретні рекомендації для розробників, а не загальні поради.
  • Перелік того, що перевірили і що лишилося поза межами.
  • Ретест після виправлень, якщо його погоджено в договорі, з письмовим підтвердженням, що закрито.

Строк залежить від кількості платформ, ролей і функцій, тому його фіксують до старту. Якщо обсяг ще не зрозумілий, почніть з опису застосунку і пентесту найважливіших сценаріїв: входу, даних клієнта і платежів.

Чекліст перед пентестом мобільного застосунку

Завантажити чекліст підготовки (PDF)PDF · A4

FAQ

Що перевіряють під час пентесту мобільного застосунку?

Дані, які застосунок зберігає на телефоні, зв'язок із сервером і API, вхід і сесії, платежі, вшиті в код секрети, взаємодію з іншими застосунками і, за потреби, стійкість до розбору. Основою є OWASP MASVS і MASTG, а сервер перевіряють за методикою OWASP для вебзастосунків.

Чи треба тестувати iOS і Android окремо?

Так. Вимоги однакові, але платформи по-різному зберігають дані і дають доступ іншим застосункам, а код часто пишуть різні команди. Помилка в одній версії не означає, що вона є в іншій, і навпаки.

Чи входить API в пентест мобільного застосунку?

Має входити, але це варто записати явно. MASVS покриває лише сам застосунок, а найсерйозніші проблеми, як-от доступ до чужих даних, зазвичай живуть на сервері.

Чи потрібен вихідний код?

Не обов'язково, тест можна провести лише зі збірками. Але з кодом і документацією перевірка глибша за той самий час, і MASVS рекомендує саме такий відкритий формат.

Як часто робити пентест мобільного застосунку?

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

Посилання

  1. OWASP MASVS: The Mobile Application Security Verification Standard mas.owasp.org
  2. OWASP MASVS v2.1.0 release (January 2024) github.com
  3. OWASP MASTG v2.0.0 release (June 2026) github.com
  4. OWASP MASVS: Assessment and Certification mas.owasp.org
  5. OWASP MASWE-0004: Sensitive Data Hardcoded in the App Package mas.owasp.org
  6. Android Developers: Play Billing, Fight fraud and abuse developer.android.com
  7. OWASP Web Security Testing Guide wstg.owasp.org
  8. OWASP MASVS-AUTH: Authentication and Authorization mas.owasp.org
ПоділитисяLinkedInTelegram
Блог

Інші статті

Що таке пентест простими словами?

Що таке пентест: визначення, навіщо його роблять, чим він відрізняється від сканування і Red Team, етапи, види, звіт, строки і письмовий дозвіл.