Practical Mobile Application Exploitation (On-demand)

Designed for both beginners and advanced enthusiasts, you'll learn how to reverse engineer and conduct thorough security audits of iOS and Android applications. You'll get a deeper insight into common bug categories, and detailed walkthroughs on how to exploit them. Learn how tools like Ghidra, Frida, LLDB, and more can be used to assist you during Mobile application assessments, or research.

Target audience

This course is for penetration testers, mobile developers or anyone keen to learn mobile application security. It’s also ideal for security enthusiasts who want to explore mobile security concepts, tools, and techniques in greater detail. Level Beginner / Intermediate.



Prerequisites

To successfully participate in this course, attendees should possess the following:

  • Working knowledge of cybersecurity and pentesting fundamentals
  • Basic working knowledge of iOS and Android platforms
  • Basic Linux skills and command-line proficiency
  • Understanding of fundamental programming concepts and looping structures in at least one higher-level language (Java, Kotlin, Objective-C, Swift, C, C++, or similar)
  • Basic ARM/AARCH64 binary assembly knowledge is recommended, but not required
 Se alle kurs innen dette fagområdet

 

Course content:

Key Objectives

  • Learn how to set up your own Lab environment for Mobile application testing
  • Learn how to Reverse engineer iOS and Android binaries (Apps and system binaries)
  • Get PoC applications to perform various exploits on Mobile apps
  • Learn the difference between reversing apps in different languages such as Objective-C, Swift etc
  • Learn how to debug iOS and Android apps
  • Get an intro to common bug categories on Android and iOS systems
  • Understand and bypass anti-debugging and obfuscation techniques
  • Learn how to leverage Frida for dynamic analysis by mastering techniques such as tracing, function hooking, and inspecting app behavior in real-time
  • Learn to audit iOS and Android apps for security vulnerabilities
  • Learn how to Intercept traffic in iOS/Android apps for both native and cross-platform frameworks
  • Learn manual and automated ways of bypassing security mitigations
  • Learn to identify vulnerabilities in native as well as Cross-platform apps
  • Learn to exploit different IPC mechanisms in iOS and Android apps
  • Get a detailed walkthrough on using Hopper, Ghidra, etc
  • Understand how to implement Anti-Fraud techniques in Mobile apps
  • Learn to reverse engineer Android third-party libraries to analyze native code
  • Instrument and create test harnesses to prepare libraries for fuzzing
  • Fuzz libraries to uncover crashes, memory, and logic flaws
  • Secure Mobile apps by implementing custom solutions
  • Become a Certified Mobile Security Engineer (CMSE)

 

01 Course Preview

  • Practical Mobile Application Exploitation - Trailer (12:17)

02 Welcome to the Course

  • Getting Started
  • Ethical Use Note
  • Ask the Instructors

03 Setting up the iOS Testing Environment

  • About this Module
  • Glossary
  • Choosing Device vs. Corellium (07:42)
  • Installing Necessary Tools on Computer (06:01)
  • List of Tools for your Computer
  • Introduction to Corellium (06:25)
  • Quiz 3.1
  • Jailbreaking Your Device (10:11)
  • About Jailbreaks
  • Installing Tools on Device & Installation Process (09:12)
  • Quiz 3.2
  • List of Tools for Device
  • DVIA Apps
  • Homework

04 Intro to iOS Apps

  • About this Module
  • Glossary
  • Types of iOS Apps (04:00)
  • Identifying Swift vs Objective-C Apps (09:04)
  • Identifying Flutter and React Apps (03:56)
  • Quiz 4.1
  • Common iOS App Definitions and Intro to Xcode (13:31)
  • iOS App Structure and the Info.plist file (07:28)
  • Quiz 4.2
  • Homework

05 Debugging iOS Apps

  • About this Module
  • Glossary
  • Introduction to LLDB (02:17)
  • Setting Up the Debug Server (09:37)
  • LLDB Basic Usage (09:51)
  • Memory Patching with LLDB (12:49)
  • Quiz 5.1
  • lldb usage quick cheat sheet
  • Homework
  • Quick Feedback Form

06 Introduction to iOS Reverse Engineering

  • About this Module
  • Glossary
  • Reverse Engineering using Hopper (08:32)
  • Reverse Engineering using Ghidra (07:47)
  • Intro To r2 (07:45)
  • Quiz 6.1
  • Reversing Hello World in Objective-C (08:38)
  • Reversing Hello World in Swift (07:42)
  • Reversing using MCP Servers (14:36)
  • Quiz 6.2
  • Homework

07 iOS App Containers and Data Analysis

  • About this Module
  • Glossary
  • iOS App Containers (09:08)
  • App Data Container Monitoring (10:08)
  • Quiz 7.1
  • Homework

08 iOS App Sideloading and Entitlements

  • About this Module
  • Glossary
  • Sideloading Apps using TrollStore (07:34)
  • Entitlements explained (11:16)
  • Signing Binary with Entitlements (06:25)
  • Downloading ipa without device (04:56)
  • Quiz 8.1
  • Homework

09 Apple's Enhanced Security for iOS Apps

  • About this Module
  • Glossary
  • Understanding and Enabling Enhanced Security (08:40)
  • Checking for Enhanced Security in iOS Apps (04:12)
  • Quiz 9.1
  • Homework

10 Introduction to Frida

  • About this Module
  • Glossary
  • Introduction to Frida (15:47)
  • Using Frida Trace (07:26)
  • Using Frida Trace Handlers (08:12)
  • Frida Trace Web UI (04:31)
  • Quiz 10.1
  • Frida 17+ Migration Guide
  • Frida APIs Module.findGlobalExportByName (04:05)
  • Frida APIs newNativeCallback (05:50)
  • Decrypting iOS apps using Frida (04:08)
  • Swift Strings Inspection with Frida (11:27)
  • Quiz 10.2
  • Homework

11 Frida Labs and Hands-On Solutions

  • About this Module
  • Glossary
  • Introduction to Frida Labs Application (00:38)
  • Frida 17+ Migration Guide
  • Frida Labs Solution - Intercepting Objective C Arguments (01:52)
  • Frida Labs Solution - Intercepting Swift Strings (Small) (02:18)
  • Frida Labs Solution - Intercepting Swift Strings (Large) (01:48)
  • Frida Lab Solution - Modifying Swift and C Functions (07:42)
  • Frida Labs Solution - Bypass Frida Detection (Swift) (02:57)
  • Frida Labs Solution - Hooking into a C function (01:44)
  • Frida Labs Solution - Calling a Different ObjC Class function (02:32)
  • Frida Labs Solution - Calling a Different ObjC Instance method (02:05)
  • Frida Labs Solution - Calling a Different Swift function (02:06)
  • Frida Labs Solution - Brute Forcing Pincode (01:53)
  • Quiz 11.1
  • Homework

12 Advanced Frida Tracing in IM apps

  • About this Module
  • Glossary
  • Telegram Signal Tracing (08:07)
  • Signal Tracing in Objective-C (09:58)
  • Quiz 12.1
  • Homework

13 iOS Side Channel Attacks

  • About this Module
  • Glossary
  • Sensitive Information Leakage via iOS Device Logs (04:48)
  • Sensitive Information Leakage via iOS Pasteboard (06:36)
  • Snapshots Analysis (04:21)
  • Keychain Security (19:52)
  • Quiz 13.1
  • Homework

14 Network Traffic Analysis and Interception

  • About this Module
  • Glossary
  • Intercepting Traffic in iOS Apps (05:18)
  • Certificate Pinning and Bypass (10:32)
  • Certificate Transparency (04:16)
  • App Transport Security (ATS) (08:28)
  • Inspecting iOS Application Flutter Traffic (15:18)
  • Alternative Technique for Apps Interception (04:50)
  • Quiz 14.1
  • Homework

15 Analyzing iOS Flutter Apps

  • About this Module
  • Glossary
  • Flutter Apps Analysis Process (14:11)
  • Symbolicating Flutter Apps (09:14)
  • Runtime Manipulation on a Flutter App (11:06)
  • Quiz 15.1
  • Homework

16 iOS Jailbreak Detection and Bypass

  • About this Module
  • Glossary
  • Jailbreak Detection Explained (10:11)
  • Bypassing Jailbreak Detection using LLDB (05:40)
  • Jailbreak Detection Bypass Tweaks (03:05)
  • Quiz 16.1
  • Homework

17 iOS Broken Cryptography

  • About this Module
  • Glossary
  • Exploiting Broken Cryptography (18:18)
  • Performing Crypto Analysis using Automated tools (04:18)
  • Quiz 17.1
  • Homework

18 iOS Deep Linking and Web Views

  • About this Module
  • Glossary
  • Exploring Deep Links (12:21)
  • Deep Links Continued (10:58)
  • Web View in Details (12:54)
  • Quiz 18.1
  • Homework

19 Application Patching and Exploitation

  • About this Module
  • Glossary
  • Patching an iOS Application (12:07)
  • Quiz 19.1
  • Homework

20 Automation in iOS Pentesting

  • About this Module
  • Glossary
  • Using Automated Tools Part 1 (04:19)
  • Using Automated Tools Part 2 (05:29)
  • Using Automated Tools Part 3 (05:32)
  • Homework

21 Anti-Reversing and Anti-Fraud Techniques

  • About this Module
  • Glossary
  • Introduction to Anti-Reversing/Fraud (03:08)
  • Device Fingerprinting Explained (11:43)
  • Detecting Emulated Locations (03:20)
  • Detecting Frida Hooking (06:37)
  • Detecting Proxy (04:06)
  • Detecting Jailbroken Devices (06:38)
  • Detecting VPNs (04:37)
  • Fraud Prevention using Call Detection (03:45)
  • Quiz 21.1
  • Homework

22 Intro to Android Security

  • About this Module
  • Glossary
  • Overview of Android Ecosystem and Architecture (04:25)
  • Introduction to Android Components (04:14)
  • Setting Up Android Emulator
  • Understanding Android Debug Bridge (ADB) (05:37)
  • Rooting Android emulator (11:01)
  • Quiz 22.1
  • Extract APK using Third Party Sources & Automated Techniques (07:12)
  • Extract APK manually using ADB (02:56)
  • Handling Split APK in Android (13:04)
  • Setting up Physical Devices for Security Research (14:52)
  • Rooting Android Physical Devices (08:33)
  • Quiz 22.2
  • Homework

23 Android OS File System

  • About this Module
  • Glossary
  • File System Monitoring on Android (09:09)
  • Android Sandbox and Filesystem Explained
  • Quiz 23.1
  • Homework

24 Android Development Support

  • About this Module
  • Glossary
  • Introduction To Android Studio and Building Android Code (06:47)
  • Cross Compiling Native Code for Android Platform (07:07)
  • Quiz 24.1
  • Homework

25 Android Reverse Engineering

  • About this Module
  • Glossary
  • Introduction to Android Application Reversing (10:02)
  • Apktool Deep dive (07:43)
  • Smali Bytecode DeepDive (18:11)
  • Quiz 25.1
  • Reverse Engineering Android APK (27:25)
  • Application Patching and Re-signing on Android (13:20)
  • Quiz 25.2
  • Android Accessibility Services & Malwares (36:01)
  • Quiz 25.3
  • Deepdive into Common Android Obfuscation Techniques (14:22)
  • Reverse Engineering Obfuscated Android APK (18:31)
  • Quiz 25.4
  • Homework
  • Share Your Feedback

26 Exploiting Android Local Storage

  • About this Module
  • Glossary
  • Exploiting and securing Android Shared Preferences (11:10)
  • Exploiting and securing Android Databases and SQLCipher (12:47)
  • Quiz 26.1
  • Homework

27 Exploiting Android Activities

  • About this Module
  • Glossary
  • Exploiting Android Activities - Unauthorized Access (36:17)
  • Quiz 27.1
  • Exploiting Android Activities - Data Leakage (14:23)
  • Exploiting Android Activities - Intent Spoofing (07:43)
  • Mitigating Vulnerabilities In Android Activities (04:17)
  • Quiz 27.2
  • Homework

28 Exploiting Content Providers

  • About this Module
  • Glossary
  • Exploiting and securing Android Content Providers (54:52)
  • Quiz 28.1
  • Homework

29 Exploiting Android Insecure Cryptography

  • About this Module
  • Glossary
  • Exploiting Android Insecure Cryptography (32:19)
  • Quiz 29.1
  • Homework

30 Frida on Android

  • About this Module
  • Glossary
  • Introduction to Frida and Setup on Android (10:18)
  • Basic Frida Commands (01:59)
  • Frida Repl and Introduction to Frida API (11:55)
  • Hooking and Printing Class Information using Frida (06:33)
  • Printing Method Names using Frida (03:24)
  • Quiz 30.1
  • Printing Arguments & Return value using Frida (13:53)
  • Modifying Arguments & Return value using Frida (14:49)
  • Invoke Arbitrary Functions Using Frida (14:10)
  • Quiz 30.2
  • Frida Trace DeepDive (09:37)
  • Dynamic Instrumentation of Android Native Code using Frida - Part 1 (12:30)
  • Dynamic Instrumentation of Android Native Code using Frida - Part 2 (17:17)
  • Quiz 30.3
  • Additional Information for Frida 17+
  • Homework

31 Root Detection & Bypass in Android

  • About this Module
  • Glossary
  • Deepdive into Platform and Root Detection techniques (07:36)
  • Bypassing Multiple Platform and Root Detection Checks in Android (24:57)
  • Automated Root Detection Bypass (06:33)
  • Quiz 31.1
  • Homework

32 Exploiting Android Biometrics

  • About this Module
  • Glossary
  • Android Biometric Authentication Implementation & Bypasses (21:17)
  • Quiz 32.1
  • Homework

33 Exploiting Android Deep Links

  • About this Module
  • Glossary
  • Exploiting Android Deep Links (12:06)
  • Quiz 33.1
  • Homework

34 Exploiting Android Network Communication

  • About this Module
  • Glossary
  • Network Communication & Proxying Traffic on Android (21:44)
  • Deep dive into Android Certificate Stores (08:26)
  • Android HTTPS Traffic Interception
  • Android Certificate Pinning (02:49)
  • Automated SSL Pinning Bypass (07:35)
  • Quiz 34.1
  • Homework

35 Exploiting Cloud Authentication

  • About this Module
  • Glossary
  • Exploiting Amazon Cognito Authentication (17:22)
  • Quiz 35.1
  • Homework

36 Android Side Channel Attacks

  • About this Module
  • Glossary
  • Exploiting Android Application Backgrounding (07:56)
  • Sensitive Information Leakage via Device Logs (09:43)
  • Quiz 36.1
  • Homework

37 Android Debugging

  • About this Module
  • Glossary
  • Technical Implications of Leaving Applications Debuggable (09:06)
  • Using run-as to exploit Debuggable Applications (08:24)
  • Introduction to LLDB on Android (02:59)
  • LLDB process debugging (11:41)
  • Quiz 37.1
  • LLDB Commands Deep dive & Application debugging using LLDB (32:35)
  • Live Debugging and Patching Smali Code using Jadx-Gui (09:06)
  • Tracing Native Android Library Code (06:10)
  • Quiz 37.2
  • Homework

38 Exploiting Android Flutter

  • About this Module
  • Glossary
  • Flutter Application Traffic Interception - An Introduction (01:56)
  • Flutter TLS verification and manual bypass (14:00)
  • Flutter TLS Verification and Pinning Bypass using Frida (05:20)
  • Quiz 38.1
  • Homework

39 Securing Android Applications

  • About this Module
  • Glossary
  • VPN Detection in Android (09:47)
  • Proxy Detection in Android (08:18)
  • Deep dive into Google Play Integrity API (16:31)
  • Integrity Verdicts in Google Play Integrity API (08:17)
  • Google Play Integrity API Implementation (01:40)
  • Quiz 39.1
  • Homework

40 Reverse Engineering and Fuzzing Android Third-Party Libraries

  • About this Module
  • Glossary
  • Reverse Engineering Android Third-Party Libraries with Ghidra (27:49)
  • Instrumenting Third-Party Library Functions and Fuzz Preparation (48:01)
  • Quiz 40.1
  • Fuzzing Android Third-Party Libraries (50:29)
  • Quiz 40.2
  • Homework

41 Android Permission Model

  • About this Module
  • Glossary
  • The Complete Guide to Android Permission Model (23:43)
  • Quiz 41.1
  • Homework

42 Understanding and Preventing OTP Scams

  • About this Module
  • Glossary
  • The Truth About OTP Scams (05:31)
  • Mitigating OTP Scams in Code (17:24)
  • Quiz 42.1
  • Homework

43 Understanding and Preventing Device Reset Attacks

  • About this Module
  • Glossary
  • Anatomy of Device Reset Attacks and Protection (05:18)
  • Securing against Device Reset Attacks (16:43)
  • Quiz 43.1
  • Homework

44 Android Location Privacy & Runtime Attacks

  • About this Module
  • Glossary
  • Android Location Tracking & Runtime Bypass using Frida (14:11)
  • Quiz 44.1
  • Homework

45 Hardware-Assisted Memory Safety for Android Applications

  • About this Module
  • Glossary
  • Hardware-Assisted Memory Safety & Detection (05:23)
  • Detecting Hardware-Assisted Memory Safety in Android applications (15:40)
  • Quiz 45.1
  • Homework

46 AI Driven Reverse Engineering for Applications and Obfuscated Malwares

  • About this Module
  • Glossary
  • Introduction to AI and MCP Driven Malware Reversing (02:49)
  • APKTool MCP Essentials (03:48)
  • JADX MCP Essentials (05:07)
  • Quiz 46.1
  • Setting up and using APKTool MCP for Android App Analysis & Patching (22:42)
  • Setting up and using Jadx MCP for Android Malware Analysis (16:29)
  • Quiz 46.2
  • Homework

47 Intercepting and Tampering Network Traffic of Proxy-Unaware Applications

  • About this Module
  • Glossary
  • Interception Architecture Insight (05:18)
  • Network Traffic Interception on Proxy-Unaware Android Apps (Java/Kotlin/Flutter) (13:32)
  • Certificate Pinning Bypass in Proxy-Unaware Apps (05:25)
  • Quiz 47.1
  • Homework

48 Flutter App Reverse Engineering Fundamentals and Exploitation

  • About this Module
  • Glossary
  • Key Concepts Behind Android Flutter App Reverse Engineering (16:19)
  • Reverse Engineering & Exploiting Flutter based Game using Dynamic Instrumentation (25:09)
  • Quiz 48.1
  • Homework

49 CMSE Mock Exam

  • CMSE Mock Exam

50 Certified Mobile Security Engineer (CMSE) Exam

  • CMSE Exam details
  • Next steps
  • Schedule Exam
  • Certificate of Completion

Certification

This course leads to the CMSE (Mobile Security Engineer) certification delivered by 8KSec. The exam is included in the course. 

 

FAQ – Practical Mobile Application Exploitation (On-Demand)

How much does the course cost?
The course costs NOK 16,500 excluding VAT. Norwegian VAT of 25% applies, bringing the total price to NOK 20,625 including VAT. The Certified Mobile Security Engineer (CMSE) certification exam is included.

How is the course delivered?
The course is delivered as self-paced, on-demand e-learning through 8kSec Academy. Participants can access recorded lessons, practical exercises and self-assessments, allowing them to study according to their own schedule.

How long does the course take?
The course includes approximately 30 hours of video content across 170 videos. The estimated completion time is 5–8 months, depending on previous experience and study pace.

How long will I have access to the course?
Participants receive 365 days of access after purchase, providing time to complete lessons, work through practical exercises and prepare for certification.

Who should attend this course?
The course is designed for security professionals, developers and enthusiasts who want to learn how to assess, reverse engineer and secure Android and iOS applications.

  • Penetration testers and ethical hackers
  • Mobile application security engineers
  • Android and iOS developers
  • Application security specialists
  • Security researchers and vulnerability analysts
  • Software developers interested in secure mobile development
  • Cybersecurity professionals looking to specialise in mobile application security

What prerequisites are required?
Participants should have a working knowledge of cybersecurity and penetration testing fundamentals, basic familiarity with Android and iOS, Linux command-line skills and an understanding of programming concepts in a language such as Java, Kotlin, Objective-C, Swift, C or C++.

Do I need experience with ARM64 assembly?
Basic knowledge of ARM or AARCH64 assembly is recommended but not required. The course focuses primarily on practical mobile application security testing and reverse engineering.

What will I learn during the course?
You will learn how to analyse, test and secure mobile applications across Android and iOS environments. After completing the course, you will be able to:

  • Set up practical mobile application security testing environments
  • Reverse engineer Android and iOS applications
  • Analyse application code written in Objective-C, Swift and other languages
  • Debug applications using specialised security tools
  • Identify and assess common mobile application vulnerabilities
  • Use Frida for dynamic instrumentation and runtime analysis
  • Inspect and analyse mobile application network traffic
  • Assess authentication, local storage and cryptographic implementations
  • Evaluate application protection mechanisms and security controls
  • Analyse native libraries and conduct fuzz testing
  • Recommend and implement measures to improve mobile application security

Is the course hands-on?
Yes. The training includes practical demonstrations, labs, reverse-engineering exercises, vulnerability assessments and mobile application exploitation scenarios using dedicated testing environments.

Which topics are covered?
The course covers a broad range of mobile application security topics, including:

  • iOS and Android application architecture
  • Mobile application testing environment setup
  • Static and dynamic application analysis
  • Reverse engineering with Ghidra, Hopper and other tools
  • Debugging with LLDB
  • Dynamic instrumentation using Frida
  • Application data storage and sensitive information exposure
  • Mobile network traffic interception and certificate pinning
  • Authentication, biometrics and cryptographic weaknesses
  • Deep links, WebViews and application components
  • Root and jailbreak detection mechanisms
  • Code obfuscation and anti-reversing techniques
  • Android activities, content providers and permissions
  • Flutter and cross-platform mobile application security
  • Reverse engineering and fuzzing native Android libraries
  • AI-assisted reverse engineering and malware analysis
  • Anti-fraud mechanisms and mobile application hardening

Does the course cover both Android and iOS?
Yes. The programme includes dedicated training on both platforms, covering application architecture, security mechanisms, reverse engineering, vulnerability testing and practical techniques for identifying weaknesses in mobile applications.

What is the difference between this course and Offensive Mobile Reversing and Exploitation?
Practical Mobile Application Exploitation focuses on security assessments, reverse engineering and vulnerabilities within mobile applications. Offensive Mobile Reversing and Exploitation focuses more deeply on operating system internals, kernel security, low-level vulnerability research and exploitation.

Which tools are used during the course?
The training covers security research and testing tools including Frida, Ghidra, Hopper, LLDB, Apktool, JADX, Android Debug Bridge (ADB), and tools for network analysis, dynamic instrumentation and fuzz testing.

Does the course cover mobile application reverse engineering?
Yes. Reverse engineering is a central part of the programme. Participants explore Android and iOS binaries, analyse application logic, investigate obfuscated code and use static and dynamic analysis techniques to understand application behaviour.

Does the course cover mobile application security testing?
Yes. Participants learn to assess mobile applications for vulnerabilities involving data storage, authentication, cryptography, network communication, application components, permissions and platform-specific security mechanisms.

What equipment do I need?
Participants need a laptop with at least 8 GB RAM, 40 GB of available disk space and administrative access. For iOS labs, a jailbroken device running iOS 16 or later, or a suitable virtualized environment such as Corellium, is required. For Android labs, a rooted device running Android 12 or later, or a suitable emulator or virtualized environment, is required.

What language is the course delivered in?
The video instruction is in English. Subtitles are available in English, German, Spanish, French, Arabic and Japanese.

Does the course prepare me for certification?
Yes. The course prepares participants for the Certified Mobile Security Engineer (CMSE) certification from 8kSec Academy. The certification validates practical skills in mobile application security, vulnerability analysis and security research.

Is the certification exam included?
Yes. One attempt at the Certified Mobile Security Engineer (CMSE) certification exam is included in the course price.

How is the certification exam structured?
The CMSE certification exam is a 48-hour practical assessment designed to evaluate mobile application security knowledge and hands-on testing skills. Participants must successfully complete the exam to earn the certification.

Will I receive a certificate of completion?
Yes. Participants receive a certificate of course completion. The CMSE certification is awarded separately after successfully passing the certification exam.

Can the course be purchased for a team or organisation?
Yes. Group enrolment is available for organisations wishing to train multiple employees. The training provider offers group pricing and optional learner progress tracking for larger teams.

What makes this course valuable?
The course provides practical, in-depth training across the mobile application security lifecycle. Participants learn to identify vulnerabilities, understand application behaviour through reverse engineering, perform security assessments and implement effective protection measures for Android and iOS applications.