Mobile Pentest

Mobile Penetration Testing

Android and iOS apps against OWASP MASTG — insecure storage, weak cryptography, insecure IPC, certificate-pinning bypass and client-side trust issues.

Mobile application penetration testing is an assessment of Android and iOS apps against the OWASP Mobile Application Security Testing Guide (MASTG). Passeca finds the flaws unique to mobile clients — insecure data storage, weak cryptography, insecure IPC, certificate-pinning bypass and client-side trust issues — tests on real rooted and jailbroken devices, and reports each with evidence and developer-ready remediation.

What we test

What concrete vulnerabilities do we test for?

Mapped to OWASP MASVS / MASTG controls. Mobile risk concentrates in how the app stores data and how much it trusts the device.

Insecure data storage

Sensitive data — tokens, PII, credentials — written to shared preferences, SQLite, logs, or the clipboard, readable by a local attacker or a malicious app.

Weak cryptography

Hard-coded keys, insecure algorithms (DES, ECB), predictable random number generation, and key material embedded in the binary.

Insecure inter-process communication (IPC)

Exported activities, services, content providers and broadcast receivers that leak data or allow unauthorised invocation by other apps on the device.

Certificate-pinning bypass

Missing or weak TLS certificate pinning that allows a man-in-the-middle to intercept or tamper with app traffic using a proxy.

Client-side trust & code tampering

Security decisions enforced on the device — root/jailbreak detection that is trivially bypassed, anti-debugging defeated, and runtime patching of logic.

Authentication & session handling

Long-lived tokens without refresh, session tokens that survive logout, biometric bypass, and PIN handling that leaks to storage.

Methodology

Methodology for mobile apps

OWASP MASVS / MASTG drives the test catalogue. Static analysis of the binary plus dynamic analysis on rooted and jailbroken devices.

Each engagement combines static analysis — decompilation, deobfuscation, secret discovery and a review of exported components — with dynamic analysis on real rooted Android and jailbroken iOS devices, using runtime instrumentation to hook logic, bypass anti-tampering and inspect storage and network traffic.

We assess data storage (shared preferences, Keychain/Keystore, SQLite, logs, clipboard), cryptography, network communication and certificate pinning, platform interaction (IPC, deep links, intents, app extensions), and resilience against reverse engineering and code tampering. The backend API the app talks to is covered where in scope.

Example findings

Example findings from real (anonymised) mobile tests

Mobile findings are typically data-handling and trust issues invisible from the server side.

Critical

Session token written to plaintext shared preferences

A local attacker or malicious app could read the active session token from device storage and fully hijack the account without re-authentication.

High

Certificate pinning absent — full traffic interception

Without TLS pinning, a proxy with a custom CA certificate could intercept and modify all app traffic, exposing credentials and data in transit.

High

Exported content provider leaked the local database

An Android content provider declared exported and unguarded allowed any installed app to query the app's private database.

Medium

Root detection bypassable with a single hook

The app's jailbreak/root check was defeated by a runtime hook, unlocking a privileged code path intended to be blocked on rooted devices.

Findings are anonymised and paraphrased. Specific reproduction steps are reserved for the engagement report.

Timeline & cost

How long does a mobile pentest take, and what does it cost?

Driven by platform count (Android / iOS), anti-tampering complexity, and the breadth of IPC and data-storage paths.

Engagement sizeTypical durationPrice band
Single platform (Android or iOS)3–5 daysPrice on request
Both platforms1–2 weeksPrice on request
Complex (anti-tamper, HW keys)2+ weeksPrice on request

Use the free pentest scoping tool for a precise estimate.

The report

What's in the report?

  • Executive summary — mobile risk in business terms.
  • Graded findings — CVSS and business impact, with the component and platform.
  • Reproduction steps — device state, tools and payloads as evidence.
  • Remediation guidance — Keystore/Keychain use, pinning, IPC hardening, anti-tamper.
  • Compliance mapping — PCI DSS, ISO 27001, SOC 2, DORA, NIS2.
  • Remediation retest — fixes retested within the engagement window.
Compliance

Which compliance requirements does this satisfy?

FrameworkRelevant requirementHow the pentest maps
PCI DSSReq. 11.4Penetration testing of payment applications in scope
ISO 27001:2022A.8.25 / A.8.29Secure development lifecycle & security testing
SOC 2CC4.1Monitoring of system performance & security
DORAArt. 24–25Digital operational resilience testing
NIS2Art. 21Risk-based security measures, evidenced
FAQ

Mobile pentest, answered

Android vs iOS, devices vs emulators, and compliance for mobile testing.

What is mobile application penetration testing?
Mobile application penetration testing is an authorised assessment of an Android or iOS app against the OWASP Mobile Application Security Testing Guide (MASTG). It finds client-side and data-handling flaws — insecure storage, weak cryptography, insecure IPC, certificate-pinning bypass and client-side trust issues — that server-side testing cannot reach.
Which platforms do you test — Android and iOS?
Both. Passeca tests native Android (APK/AAB) and iOS (IPA) applications, and hybrid frameworks where applicable. Each platform is tested against the OWASP MASTG controls appropriate to its architecture and operating-system model.
Which methodology is used for mobile pentests?
Passeca tests to the OWASP Mobile Application Security Verification Standard (MASVS) and the MASTG. Testing spans storage, cryptography, authentication, network communication, platform interaction, code quality and resilience against reverse engineering and tampering.
Do you test on real devices or emulators?
Both, depending on the test class. Dynamic analysis and runtime hooking use rooted/jailbroken physical devices to exercise real conditions; static analysis and some automation use emulators. IPC and exported-component testing is performed against the actual app package.
Do you need the app source code?
No. Most mobile tests are black-box or grey-box against the compiled app (APK/IPA). Source code accelerates static analysis (white-box) and is recommended when maximum coverage per day is the priority. Providing a build with debug symbols enabled helps.
Which compliance requirements does a mobile pentest satisfy?
Mobile penetration testing supports PCI DSS Requirement 11.4 (for apps in the payment flow), ISO 27001:2022 A.8.25 and A.8.29, SOC 2 CC4.1, DORA digital operational resilience testing and NIS2 risk-based measures. For health or finance apps it also evidences GDPR Article 32 (security of processing).
How long does a mobile app pentest take?
A single-platform app (Android or iOS) typically takes 3–5 days; a dual-platform engagement runs one to two weeks. Complexity such as hardware-backed keys, custom anti-tampering, or extensive IPC extends duration. The free scoping tool gives an indicative estimate.
Scope your app

Tell us the platforms — get a day estimate

The free pentest scoping tool converts your mobile app surface into a day estimate and price band, then hands to Passeca's offensive-security team for a precise quote.