Page cover
For the complete documentation index, see llms.txt. This page is also available as Markdown.

Android

00. Basic

## ------------------| Android Pentest Workflow
01. Scope validation
02. APK acquisition
03. App metadata extraction
04. Manifest review
05. Static code review
06. Secrets and endpoint discovery
07. Network security config review
08. Repack/sign/tamper test
09. Dynamic instrumentation
10. Traffic interception
11. Exported component testing
12. Deeplink and intent abuse testing
13. Local storage review
14. Crypto and Keystore review
15. WebView review
16. Root/debug/emulator/frida detection review
17. Framework-specific review: Flutter / React Native / Xamarin
  • Secret Codes

  • Modem commands

00.1 ADB Commands

01. Static Analysis

01.1 APK Acquisition and Metadata Check

01.2 Manifest Triage Check

android:exported="true" means another app can launch that component by exact class name unless access is protected by permissions.

01.3 Network Security Config Review

01.4 Exported Component Testing

Deep links directly open app content and expand the attack surface when they route to sensitive functionality, especially when input validation and auth checks are weak. Android App Links improve this by verifying association between the app and website.

01.6 Local Storage Review

Auto Backup applies to apps targeting and running Android 6.0/API 23+ unless configured otherwise, and Android can back up app data to the user’s Google Drive; this makes allowBackup and backup rules security-relevant, especially for tokens/PII.

01.7 WebView Security Review

WebView debugging should be disabled in production. OWASP recommends setting WebView.setWebContentsDebuggingEnabled(false) or enabling it only when the app is debuggable. Android also warns that native WebView bridges using addJavascriptInterface can create risks like XSS-driven manipulation of the host app and Java code execution with app permissions.

01.8 Crypto and Android Keystore Review

he Android Keystore is designed to keep key material non-exportable and restrict key usage conditions, including user authentication requirements and allowed crypto modes. Your notes should distinguish between keys stored in Keystoreand hardcoded keys in APK code/resources; those are completely different risk levels.

01.9 Repacking and Tamper Testing

01.10 Flutter / React Native / Xamarin Checks

02. Dynamic Analysis

02.1 Emulator Setup

Android Studio Emulator on Apple Silicon

  • Method I (Google Play API with Magisk Modules)

  • Method II (Google Play API Native Flash)

Install Anbox on kali linux

Installing Android on VMWare Workstation

Install BurpSuite Certificate

Errors

  • Auto start frida-server

  • Fix NET::ERR_CERT_AUTHORITY_INVALID Issue

02.2 Frida Framework

Basic

Scripts

Best Scripts


02.3 Magisk

Best Magisk Modules

Name
Usage

Zygisk‑based Xposed framework. Install module ZIP via Magisk, activate it in Zygisk > DenyList, then enable per-app hooks in the LSPosed app.

Systemlessly installs Burp Suite’s CA cert. Flash the Magisk ZIP, reboot, and trust the Burp CA for HTTPS interception.

Spoofs system props (e.g. fingerprint, device model). Install ZIP, use its GUI to set “safetynet” or “pixel” profiles, reboot.

Run apps with elevated privileges via ADB or root. Install Shizuku APK, activate service (via Magisk module or ADB), grant permissions in-app.

Extends Zygisk control/system patching. Install ZIP via Magisk, enable it, configure filters in its app.

Bypasses SSL pinning automatically. Flash the ZIP, reboot, enable module in Zygisk and it hooks SSL at runtime.

Hides developer/dev debug flags. Flash ZIP, reboot, and it suppresses “developer” checks in apps.

Fixes SafetyNet attestation. Install release ZIP via Magisk, reboot, test with SafetyNet API.

Spoofs/bypasses Play Integrity API responses. Flash ZIP, reboot, and it hooks Play Integrity at runtime.

Hides selected apps from detection. Install module, open its interface and pick which apps to conceal, reboot.

UI manager for Zygisk modules. Flash module via Magisk, then use its app to order, enable/disable modules easily.

Kernel-level root alternative. Flash custom KernelSU ZIP (replacing Magisk), reboot to get root without Magisk footprints.

Runtime app patching via Zygisk. Flash module, enable in Zygisk, use its interface to apply live patches (e.g. bypass checks).

Last updated