I. Overview

%%{init: { 'theme': 'base', 'themeVariables': { 'edgeLabelBackground': '#fff' }}}%%
flowchart LR
    A["Mobile releases shipped with\nfunctional QA, not security testing"] -- "Need for platform-specific\nsecurity validation" --> B["Formal Secure Mobile\nApp Testing Tracker"]
    style A fill:#f9f9f9,stroke:#333,stroke-width:3px
    style B fill:#e1f5fe,stroke:#01579b,stroke-width:3px

Definition: A Secure Mobile App Testing Tracker records which security tests have been run against a mobile application build — insecure storage checks, transport security validation, reverse-engineering resistance, and platform-specific permission review — and the status of any findings.

Features:
( Ownership ) Maintained jointly by the AppSec team and the mobile engineering team.
( Mobile-Specific Risk ) Exists because mobile apps carry risks web apps do not — client-side binaries can be decompiled, and local storage and keychains can be inspected on a jailbroken or rooted device.
( Beyond Store Review ) App-store review does not substitute for a security assessment.
( Prevents False Confidence ) Without a tracker, mobile releases ship on the assumption that “it works” is the same as “it is safe.”

II. Structure & Process

sequenceDiagram
    participant Mobile as "Mobile Engineering"
    participant AppSec as "AppSec / Mobile Tester"
    participant QA as "Release QA"
    participant Lead as "AppSec Lead"

    Mobile->>AppSec: "Submit release candidate build for testing"
    AppSec->>AppSec: "Run static and dynamic security tests"
    AppSec->>Mobile: "Log findings in tracker"
    Mobile->>Mobile: "Remediate flagged issues"
    Mobile->>AppSec: "Request retest"
    AppSec->>Lead: "Confirm closure or escalate blockers"
    Lead->>QA: "Approve build for store submission"
FieldDescription
App Version / BuildIdentifier of the build under test
PlatformiOS or Android, with minimum OS version tested
Test Categorye.g. Insecure Data Storage, Transport Layer Security, Reverse Engineering / Tampering, Authentication, Permission Scope
Test MethodStatic binary analysis, dynamic instrumentation (e.g. on a rooted/jailbroken device), or manual review
FindingDescription of the weakness identified, if any
SeverityRisk rating of the finding
StatusOpen, In Remediation, Retested, or Closed
TesterIndividual or vendor who performed the assessment

Testing runs on every major release and on any build introducing new storage, networking, or authentication logic; the tracker is reviewed by the AppSec lead before store submission.

III. Comparison & Application

Test MethodBest FitWeakness
Static binary analysisDecompiled-code review, hardcoded secrets, insecure API usageCannot observe actual runtime behavior
Dynamic instrumentation (rooted/jailbroken device)Local storage, keychain, and certificate-pinning bypass testingRequires a prepared test device and more tester time
Manual reviewBusiness logic and permission-scope misuseSlowest, least repeatable method

Testing only on a clean, unmodified device is the most common shortcut mobile teams take, and it is the one that produces false confidence — controls like certificate pinning and local storage encryption often hold on a stock device and fail the moment a tester roots or jailbreaks it, which is exactly the environment a motivated attacker actually uses. Dynamic instrumentation on a rooted device is not optional hardening of the test plan; it is the test that matters most.

Related: Web Application Vulnerability Tracker, Static Code Analysis Log

Last updated 18 Aug 2026, 00:00 UTC. history