MPT
MPT
2. Android Security Design and Architecture: Reviews Android’s security model. Key points:
sandboxing, permissions model, security boundaries.
3. Rooting Your Device: Covers rooting methods and security implications. Key points:
bootloader types, root exploits, NAND locks.
5. Understanding Android’s Attack Surface: Identifies attack vectors. Key points: remote, local,
and physical attack surfaces.
6. Finding Vulnerabilities with Fuzz Testing: Details fuzzing techniques. Key points: input
crafting, broadcast receiver fuzzing, Chrome fuzzing.
7. Debugging and Analyzing Vulnerabilities: Introduces debugging tools. Key points: adb logs,
tombstones, on-device debugging.
8. Exploiting User Space Software: Demonstrates exploitation techniques. Key points: buffer
overflows, heap exploitation, Android browser exploits.
9. Return Oriented Programming (ROP): Explains advanced exploitation. Key points: ARM
architecture, ROP chains, gadget discovery.
10. Hacking and Attacking the Kernel: Focuses on kernel vulnerabilities. Key points: kernel
extraction, custom modules, kernel exploits.
11. Attacking the Radio Interface Layer (RIL): Covers RIL exploitation. Key points: SMS fuzzing,
modem emulation, RIL attacks.
12. Exploit Mitigations: Reviews Android security protections. Key points: ASLR, DEP, stack
canaries, sandboxing.
13. Hardware Attacks: Discusses hardware-level exploits. Key points: JTAG, UART, chip-off
attacks.
This summary highlights key concepts from each chapter to assist with Android PT preparation.
Standard Operating Procedure (SOP) for Android Penetration Testing (PT)
1. Pre-Assessment Phase:
3. Static Analysis:
4. Dynamic Analysis:
5. Exploitation:
Test for privilege escalation (root detection bypass, secure flag bypass).
Conduct intent-based attacks with Drozer.
Inspect data storage (SQLite, shared preferences) for leaks.
Probe APIs for injection vulnerabilities.
6. Post-Exploitation:
7. Reporting:
Provide a comprehensive report (vulnerabilities, PoCs, CVSS scores, and remediations).
Include logs and screenshots.
Present findings to stakeholders.
Checklist for Android PT: ✅ Scope defined and legal clearances obtained ✅ APK and endpoints
collected ✅ Static and dynamic analyses completed ✅ Exploits attempted (intents, API fuzzing,
privilege escalation) ✅ Logs reviewed for sensitive data leaks ✅ Findings documented with PoCs
✅ Target system restored ✅ Final report shared
1. Setup: Configure tools (Kali, Android SDK, ADB, Frida, Drozer, MobSF).
2. Recon: Analyze APK and endpoints.
3. Static Analysis: Review source code and manifest.
4. Dynamic Analysis: Inspect runtime behavior with Frida and Drozer.
5. Exploitation: Attempt privilege escalation and injection attacks.
6. Post-Exploitation: Document findings and restore the target system.
7. Reporting: Deliver a detailed assessment report.
This SOP, checklist, and execution plan are based on methodologies from the Android Hacker's
Handbook and Android PT best practices.
2. Android Security Design and Architecture: Describes Android’s layered architecture, security
enforcement mechanisms (sandboxing, UID isolation), and the role of components like
Dalvik/ART runtime, Linux kernel, and permission models.
3. Rooting Your Device: Discusses rooting techniques, including bootloader exploitation and
kernel vulnerabilities, and explains risks such as data breaches and warranty voiding.
4. Reviewing Application Security: Analyzes common app vulnerabilities such as insecure IPC,
poor encryption practices, and logging issues. Highlights tools like apktool, jadx, and Drozer for
security testing.
5. Understanding Android’s Attack Surface: Breaks down attack vectors: remote (network
attacks), local (app exploits), and physical (USB, NFC) vulnerabilities.
6. Finding Vulnerabilities with Fuzz Testing: Explains fuzzing principles and tools to identify
flaws. Demonstrates fuzzing of IPC endpoints and browser components.
7. Debugging and Analyzing Vulnerabilities: Teaches debugging with adb, tombstones, and on-
device debugging tools, emphasizing root cause analysis and exploitability evaluation.
8. Exploiting User Space Software: Covers exploitation methods (buffer overflows, heap
spraying) and demonstrates exploits like GingerBreak and zergRush.
10. Hacking and Attacking the Kernel: Discusses kernel exploitation methods, building custom
modules, and leveraging known vulnerabilities for privilege escalation.
11. Attacking the Radio Interface Layer (RIL): Focuses on telephony exploits, including SMS
fuzzing and attacking the RIL daemon (rild).
12. Exploit Mitigations: Reviews mitigation techniques like ASLR, DEP, and stack canaries, and
provides methods for bypassing these protections.
13. Hardware Attacks: Explains hardware exploitation techniques such as JTAG debugging,
UART interfacing, and chip-off data extraction.
This expanded breakdown offers a comprehensive understanding of each chapter for Android
Penetration Testing.