Repository navigation
Mobile Runtime
From v0.1.6, pandaward test --profile local-runtime checks what a test build of your app actually stored on an Android emulator (K-003) or in an iOS simulator (L-002). It sends no network traffic, so it needs no scope manifest. Real devices are refused.
Name the test builds in .pandaward/config.yaml:
runtime:
android_package: com.acme.shop # debuggable build installed on the emulator
ios_bundle_id: com.acme.shop # build installed in the booted simulatorStart the emulator or simulator, install the test build, and run the flows that log in or store data. Then:
pandaward test --profile local-runtime-
adb devicesmust list a serial that starts withemulator-and is in thedevicestate. - The emulator must report
ro.kernel.qemu=1(orro.boot.qemu=1). A real phone does neither, so PandaWard stops there. - PandaWard lists
shared_prefswithadb shell run-as <package> ls shared_prefsand reads each.xmlfile the same way.run-asworks only for debuggable builds, which is why a release build is refused.
Runs only on macOS with Xcode.
-
xcrun simctl get_app_container booted <bundle id> datamust return a path insideCoreSimulator/Devices/. - PandaWard converts
Library/Preferences/<bundle id>.plistwithplutil -convert xml1and reads the top-level keys.
| Outcome | Status |
|---|---|
Setting missing, adb or Xcode missing, no emulator or simulator, a real device, a build that is not debuggable |
BLOCKED with the reason |
| A file could not be read | ERROR |
| A non-empty string under a credential-like key (token, password, secret, session, API key, credential, refresh, auth) |
FAIL, one CONFIRMED finding per key |
| Nothing found |
PASS for storage only |
Findings and evidence record the file and the key name, never the value. Transport security on Android and Keychain accessibility on iOS are not tested at runtime; the static checks K-001, K-004, L-001 and L-004 cover what can be seen in the source.
PandaWard is AGPL-3.0-only. Not a certification or signed penetration test. Report a vulnerability.
Getting started
Using
- CLI Reference
- Claude Code Plugin
- Findings Lifecycle
- Retest and Delta
- Coverage and Statuses
- Reports
- Evidence Bundles
- Network Testing
- Mobile Runtime
- Configuration
- CI Integration
Reference