Training Details

Training Duration: 3 Days

This course is a 100% hands-on deep dive into the OWASP Mobile Security Testing Guide (MSTG) and relevant items of the OWASP Mobile Application Security Verification Standard (MASVS). We have structured this course around the OWASP Mobile Security Testing Guide (MSTG) and relevant items of the OWASP Mobile Application Security Verification Standard (MASVS), so this course covers and goes beyond the OWASP Mobile Top Ten. This course provides participants with actionable skills that can be applied immediately from day 1.

Please note our courses are 100% hands-on, we do not lecture students with boring bullet points and theories, instead we give you practical challenges and help you solve them, teaching you how to troubleshoot common issues and get the most out of this training. As we try to keep both new and advanced students happy, the course is very comprehensive and we have not met any student able to complete all challenges during the class, therefore training continues after the course through our frequently updated training portal, for which you keep lifetime access, as well as unlimited email support.

Get a FREE taste for this training, including access to video recording, slides and vulnerable apps to play with:
4 hour workshop – https://7asecurity.com/free-workshop-mobile-practical

Each day starts with a brief introduction to the mobile platform for that day and then continues with a look at static analysis, moves on to dynamic checks finishing off with a nice CTF session to test the skills gained.

 

Agenda:

Day 1: Hacking Android & IoT Apps by Example

  • Part 0 – Android Security Crash Course
    • The state of Android Security
    • Android security architecture and its components
    • Android apps and the filesystem
    • Android app signing, sandboxing and provisioning
    • Recommended lab setup tips
  • Part 1 – Static Analysis with Runtime Checks
    • Tools and techniques to retrieve/decompile/reverse and review APKs
    • Identification of the attack surface of Android apps and general information gathering
    • Identification of common vulnerability patterns in Android apps:
      • Hardcoded secrets
      • Logic bugs
      • Access control flaws
      • Intents
      • Cool injection attacks and more
  • The art of repackaging:
    • Tips to get around not having root
    • Manipulating the Android Manifest
    • Defeating SSL/TLS pinning
    • Defeating root detection
    • Dealing with apps in foreign languages and more
  • Part 2 – Dynamic Analysis
    • Monitoring data: LogCat, Insecure file storage, Android Keystore, etc.
    • The art of MitM: Intercepting Network Communications
    • The art of Instrumentation: Hooking with Xposed
    • App behaviour monitoring at runtime
    • Defeating Certificate Pinning and root detection at runtime
    • Modifying app behaviour at runtime
  • Part 3 – Test Your Skills
    • CTF time, including finding IoT vulnerabilities through app analysis

Day 2: Hacking iOS & IoT Apps by Example

  • Part 0 – iOS Security Crash Course
    • The state of iOS Security
    • iOS security architecture and its components
    • iOS app signing, sandboxing and provisioning
    • iOS apps and the filesystem
    • Recommended lab setup tips
  • Part 1 – Static Analysis with runtime checks
    • Tools and techniques to retrieve/decompile/reverse and review IPAs
    • Identification of the attack surface of iOS apps and general information gathering
    • Identification of common vulnerability patterns in iOS apps:
      • Hardcoded secrets
      • Logic bugs
      • Access control flaws
      • URL handlers
      • Cool injection attacks, and more
    • Patching and Resigning iOS binaries to alter app behaviour
    • Tips to test without a jailbreak
  • Part 2 – Dynamic Analysis
    • Monitoring data: caching, logs, app files, insecure file storage, iOS keychain, etc.
    • Crypto flaws
    • The art of MitM: Intercepting Network Communications
    • Defeating certificate pinning and jailbreak detection at runtime
    • The art of Instrumentation: Introduction to Frida, Objection
    • App behaviour monitoring at runtime
    • Modifying app behaviour at runtime
  • Part 3 – Test your Skills
    • CTF time, including finding IoT vulnerabilities through app analysis
 

Day 3: Leveling Up your Android & IOS Instrumentation Kung-fu

  • Part 1: In-depth instrumentation on Android
    • Focus on Dynamic Analysis
    • Useful Xposed modules and labs
    • Practical Frida scripts and labs
    • Useful Objection labs and modules
    • Scenarios with radare2, r2frida and other tools to improve your instrumentation workflows
    • Defeating certificate pinning with instrumentation
    • Root detection bypasses with instrumentation
    • Multiple practical instrumentation exercises
  • Part 2: In-depth instrumentation on iOS
    • Focus on Dynamic Analysis
    • Hooking with Frida
    • Practical Frida scripts and labs
    • Useful Objection labs and modules
    • Useful RMS labs and modules
    • Scenarios with radare2, r2frida and other tools to improve your instrumentation workflows
    • Defeating certificate pinning with instrumentation
    • Jailbreak detection bypasses with instrumentation
    • Multiple practical instrumentation exercises
  • Part 3 – Test your Skills
    • CTF time

 

Training Objectives:

This course will take any student and make sure that:
– The general level of proficiency is much higher than when they came
– The skills acquired can be immediately applied to modern Web and Desktop app security assessments
– Skills can be sharpened via continued education in our training portal for free
– The student is equipped to defeat common Web and Desktop app assessment challenges
– Everybody will learn a lot in this training.
– Advanced students will come out with enhanced skills and more efficient workflows – The skills gained are highly practical and applicable to real-world assessments

 

Who Should Attend:

Any mobile developer, penetration tester or person interested in mobile security will benefit from attending this training regardless of the initial skill level

This course is for beginners, intermediate and advanced level students. While beginners are introduced to the nuances of mobile app security from scratch, intermediate and advanced level learners get to perfect both their knowledge and skills on the subject. Extra mile challenges are available in every module to help more advanced students polish their skills.

The course is crafted in a way that regardless of your skill level you will significantly improve your mobile security auditing skills:

If you are new and cannot complete the labs during the class, that is OK, as you keep training portal access, you will learn a lot in the class but can continue from home with the training portal.

If you are more advanced you can try to complete the labs in full and then take the CTF challenges we have for each day, you will likely also attempt to complete some exercises from home later 🙂

 

Training Prerequisites:

This course has no prerequisites as it is designed to accommodate students with different skills:

  1. Advanced students will enjoy comprehensive labs, extra miles and CTF challenges
  2. Less experienced students complete what they can during the class, and can continue at their own pace from home using the training portal.

This said, the more you learn about the following ahead of the course, the more you will get out of the course:

  1. Linux command line basics
  2. Android Basics
  3. IOS Basics

A laptop with the following specifications:
– Ability to connect to wireless and wired networks.
– Ability to read PDF files
– Administrative rights: USB allowed, the ability to deactivate AV, firewall, install tools, etc
– Knowledge of the BIOS password, in case VT is disabled.
– Minimum 8GB of RAM (recommended: 16GB+)
– 60GB+ of free disk space (to copy a lab VM and other goodies)
– VirtualBox 6.0 or greater, including the “VirtualBox Extension Pack”
– Genymotion (can be the free version)
– A mobile phone capable of receiving text messages
– A jailbroken iPhone / iDevice with iOS >=9 (ideally: iOS 12-14) for the iOS labs
– Optional but useful: One of the following BurpSuite, ZAP or Fiddler (for MitM)
– Optional but useful: A Mac/Hackintosh with the latest XCode installed, for iOS code review & labs