Technical testing
OWASP MASVS and MASTG: what a mobile app security test should cover
A proposal for a mobile app test says it follows OWASP. That is a start, and it leaves three questions unanswered: which version of the standard, which profile, and whether the API behind the app is in scope at all. The answers are checkable before you sign, and the third one is the most expensive to get wrong.
Published: Facts checked:
The eight MASVS control groups
| Group | What it covers | A question a tester answers |
|---|---|---|
| MASVS-STORAGE | Sensitive data stored on the device. | What does the app leave in files, logs, backups and the keyboard cache? |
| MASVS-CRYPTO | Cryptography used to protect sensitive data. | Are the algorithms current, and where do the keys actually live? |
| MASVS-AUTH | Authentication and authorisation used by the app. | Is every check enforced on the server, or only in the app? |
| MASVS-NETWORK | Communication between the app and remote endpoints. | Is all traffic protected, and does the app reject a certificate it should not trust? |
| MASVS-PLATFORM | Interaction with the operating system and other apps. | Can another app on the device call in, or read what this one exposes? |
| MASVS-CODE | Data processing, input handling and keeping the app up to date. | Does it ship components with known vulnerabilities, and does it trust its input? |
| MASVS-RESILIENCE | Resistance to reverse engineering and tampering. | How much effort does it take to modify the app or run it somewhere it should not run? |
| MASVS-PRIVACY | Protection of user privacy. | Does it collect only what it needs, and say what it collects? |
MASVS v2.1.0 (January 2024): eight groups, twenty-four controls. The MASVS covers the app only; the remote endpoints it talks to are verified against other standards.
What the MASVS is, and what version 2 changed
The OWASP Mobile Application Security Verification Standard is the requirement set for mobile apps: what a secure app should do, stated independently of platform. Version 2.0.0, released in April 2023, rewrote it substantially, removing overlaps and leaving the low-level detail to the test guide. Version 2.1.0, released in January 2024, added an eighth group, MASVS-PRIVACY, and is the current release.
The groups are labelled MASVS-STORAGE, CRYPTO, AUTH, NETWORK, PLATFORM, CODE, RESILIENCE and PRIVACY, and each contains numbered controls — MASVS-STORAGE-1, for instance, is simply that the app securely stores sensitive data. There are twenty-four in all. They are deliberately high-level, because a control has to hold for Android and iOS, native and cross-platform, and for whatever the platforms change next year.
That abstraction is the point, and it is also why a report that cites only the MASVS has said less than it seems. A control is an outcome. What was actually done to verify it lives one layer down.
Where the levels went: MAS testing profiles
Earlier versions of the MASVS assigned each requirement to a level — L1, L2 or R. Version 2.0 removed the levels from the standard and moved them into the testing guide as profiles, so that the same control can be tested differently depending on the threat. The example OWASP gave is storage: for an L1 app it can be acceptable to keep data unencrypted in the app’s private storage, where L2 requires it to be encrypted.
There are four default profiles, and each is defined by who the attacker is. MAS-L1 treats other apps on the device as the adversary and trusts the operating system. MAS-L2 assumes the operating system cannot be trusted and that an attacker may have the device in hand. MAS-R treats the user as the adversary — the reverse engineer or the cheat — and exists to protect the app’s own business logic. MAS-P, added in 2025, is not attacker-centric at all; it is a privacy baseline.
Choosing a profile is a decision about your threat model, not a quality tier, and OWASP is clear that the goal is not to comply with every profile. A banking or health app is an L2 conversation. A game with a competitive economy may need R and very little else. The profile belongs in the proposal, because it decides what is tested.
The MASTG, and what a report should cite
The Mobile Application Security Testing Guide is the method: the techniques, tools and individual tests for verifying each control on Android and iOS. Version 2.0.0, released on 30 June 2026, completed a multi-year restructuring that split the guide into separately referenceable parts. Each test now has its own identifier in the form MASTG-TEST followed by a number, and links to a weakness in the new Mobile Application Security Weakness Enumeration, which in turn links to the MASVS control.
That chain — control, weakness, test — is what makes a mobile report checkable. A finding that cites the MASVS control and the MASTG test that produced it can be traced by somebody who was not in the room, and so can a control marked as passed.
It also gives you the question to ask before you buy. Which MASVS version, which profile, and will findings and passed controls be mapped to MASTG tests? A tester who works to the guide can answer all three in a sentence.
What the MASVS leaves out: your API
The MASVS states plainly that it covers only the security of the mobile app — the client side — and contains no controls for the remote endpoints the app talks to. The MASTG says the same: testing the app’s remote endpoints is not covered, and it points to the Web Security Testing Guide for that, as the MASVS points to the ASVS.
This matters more than it sounds. The MASVS-AUTH group itself notes that authentication and authorisation must be enforced on the remote endpoint. An app can pass every MASVS control and still sit in front of an API that returns any user’s records to anyone who changes an identifier — because that flaw is in the server, and the standard did not look there.
So a mobile test that stops at the app has tested the half that holds the least. When you scope one, list every API host the app calls, put them in scope with their own authorisation, and make sure the tester has accounts for at least two roles. The OWASP guidance for MASVS verification asks for exactly that: access to at least one user account for each role.
Static, dynamic, and why a tool alone is not a test
A mobile test has two halves. Static analysis takes the app apart without running it: decompiling the package, reading its configuration and permissions, finding hardcoded secrets, weak cryptography and libraries with known vulnerabilities. Dynamic analysis runs it on a device the tester controls, intercepts its traffic, and watches what it writes to storage and logs; the MASTG notes this is done both at the platform layer and against the backend services.
Automated mobile scanners are useful for the first pass and OWASP encourages them. It is equally clear that MASVS verification cannot be completed with automated tools alone, and that running a tool and reporting its failures is not sufficient evidence that a control was tested. The guide also warns about a particular false positive: web scanners pointed at a mobile backend report browser-only issues that do not apply to an app.
One more thing to know before you see a badge. OWASP does not certify vendors, testers or apps against the MASVS. A firm can test against it and report which controls were verified; nobody can issue a certification in OWASP’s name.
Common questions
What is the difference between the OWASP MASVS and the MASTG?
The MASVS is the standard: twenty-four high-level controls in eight groups describing what a secure mobile app does. The MASTG is the testing guide: the techniques and individual Android and iOS tests used to verify each control. A report should cite both — the control and the test that verified it.
What is the latest version of the OWASP MASVS?
Version 2.1.0, released in January 2024. It added the MASVS-PRIVACY group to the seven introduced in version 2.0.0 in April 2023, and its controls carry no levels — those moved to the MASTG as testing profiles.
What are MAS-L1, MAS-L2 and MAS-R?
Testing profiles, each defined by the attacker it assumes. L1 treats other apps on the device as the threat; L2 assumes the operating system cannot be trusted and the attacker may hold the device; R treats the user as the adversary and focuses on reverse engineering and tampering. MAS-P is a separate privacy baseline.
Does the MASVS cover the backend API?
No. OWASP states that the MASVS covers only the mobile app and has no controls for the remote endpoints; the MASTG does not test them either. The API should be tested separately against the ASVS or the Web Security Testing Guide — ideally in the same engagement.
Can an app be MASVS certified?
Not by OWASP, which does not certify vendors, testers or software. A tester can verify an app against the MASVS and report which controls passed and failed. Treat any claim of official OWASP certification with caution.
Is an automated mobile scanner enough?
No. OWASP encourages scanners for efficiency but states that MASVS verification cannot be completed with automated tools alone, because every app’s architecture and business logic differ. A scan is the first pass of a test, not the test.
The bottom line
Ask for three things before you buy a mobile test: the MASVS version, the MAS profile, and the API hosts in scope. Then check the report maps each finding to a MASVS control and a MASTG test — and if the API was left out, know that the half holding your users’ data was not tested.
Related services
Mobile Application Security Testing
Your app tested on a device an attacker controls, against the OWASP mobile standard — and the API behind it tested as well, because that is where the data is.
API Security Testing
Find the request that returns somebody else’s data — the flaw that leads the OWASP API Security Top 10 and the one an automated scanner cannot recognise.
Vulnerability Assessment and Penetration Testing (VAPT)
Find what an attacker would find, ranked by what it would actually cost you — and get a report your auditor and your engineers can both use.
Related insights
Technical testing
The OWASP Testing Guide, and how to tell a real penetration test from a scan
Two tests can cost the same and cover entirely different ground. The methodology is how you tell, and it is checkable before you pay.
Technical testing
NIST SP 800-115: the four phases, and the one that is not a phase
The four-phase shape behind most credible test methodologies — and the phase that is not fourth at all.
Testing
What a CVSS score does and does not tell you about your risk
A shared scale for technical severity — deliberately context-free, which is exactly why it is not your priority order.



