Back to Pre-Conference Training Page
Hacking Android, iOS, and IoT Apps by Example
Two-Day Interactive (Classroom) Training - OWASP New Zealand Day 2023
Abstract
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). This course covers - and goes beyond - the OWASP Mobile Top Ten.
Learn about Android, iOS, and IoT app security, by improving your mobile security testing Kung-Fu. Ideal for Penetration Testers, Mobile Developers, and everybody interested in mobile app security.
All action, no fluff, improve your security analysis workflow and immediately apply these gained skills in your workplace, packed with exercises, extra-mile challenges and CTF, self-paced and suitable for all skill levels, with continued education via unlimited email support, lifetime access, step-by-step video recordings and interesting apps to practice, including all future updates for free.
Get a FREE taste for this training, including access to video recording, slides, and vulnerable apps to play with:
Key Topics Covered
- Review of Common Flaws in Source Code and at Runtime
- Modification of App Behavior Through Code/Configuration Changes
- Interception of Network Communication (a/k/a MitM)
- Jailbreak/Root Detection Bypasses and App Review from a Privileged Standpoint
- Instrumentation (Review and Modification of App Behavior)
- CTF Challenges for Attendees to Test Their Skills
Key Takeaways
- Learn how to find IoT vulnerabilities without even access to the physical device via mobile app analysis only.
- Identify and exploit mobile app security vulnerabilities as efficiently as possible
- Improve your mobile security testing process leveraging a number of open source tools, as well as lots of tips and tricks shared by the instructors after years of mobile app penetration testing.
Course Details
Dates: Tuesday and Wednesday, 4-5 July 2022
Time: 8:45 a.m. to 5:30 p.m. (NZST)
Instructor: Abhishek J.M., 7A Security
Course Fee: NZ $1,000.00 (plus GST and ticketing fees)
Registration Site: https://events.humanitix.com/owaspnz2023-training
Maximum Enrolment: 36 attendees
Prerequisites for This Class
This course has no specific knowledge prerequisites, as it is designed to accommodate students with different skills:
- Advanced students will enjoy comprehensive labs, “extra miles,” and CTF Challenges
- Less-experienced students complete what they can during the class, and can continue at their own pace using the training portal
That being said, the more you’ve learned about the following before the class, the more you will be able to get out of it:
- Linux command-line basics
- Android basics
- iOS basics
Hardware and Software: Attendees should bring:
- 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 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
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.
The 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 such a way that, regardless of your skill level, you will significantly improve your mobile security 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 in mobile security you can try to complete the labs in full and then take the CTF Challenges we have for each part, you will likely also attempt to complete some exercises on your own later.
What to Expect
A fully practical class that will seriously improve your mobile security knowledge and skills, regardless of the skill level you come in with.
Battle-tested tips and tricks that take your abilities to the next level and that you can apply as soon as you go back to your workplace, making security testing of mobile apps as efficient as possible.
Intensive hands-on exercises that challenge you to deep dive into the world of mobile security.
Lifetime access to training portal (including all future updates), unlimited email support, access to private groups to communicate with other students, mandated, police, IoT and otherwise interesting apps from various countries.
What Not to Expect
This is more than your usual short course: You get lifetime access to a training portal with step-by-step video recordings, slides and lab exercises, including all future updates for free.
The course does not cover: Android or iOS 0-day, exploits against the platforms themselves, ARM exploit writing, writing buffer or heap overflows.
Do not expect the teachers to be talking through slides most of the time: This class is practical not theoretical, the teachers don’t bore you with slides all the time, instead you do exercises all the time and the teachers help you solve the challenges you face as you complete them.
Course 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 mobile app security assessments
- Skills can be sharpened via continued education in our training portal for free
- The student is equipped to defeat common mobile app assessment challenges
- People who are new to mobile security 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
Attendees will be provided with:
- Lifetime access to training portal, with all course materials
- Unlimited access to future updates and step-by-step video recordings
- Unlimited email support, if you need help while you practice at home later
- Government-mandated and police applications in various countries
- Many other excitingly vulnerable real-world apps
- IoT apps controlling toys, drones, etc.
- Digital copies of all training material
- Custom-built Lab VMs
- Purpose-built vulnerable Test apps
- Source code for test apps
Upon completing this training, attendees will have learned to:
- Intercept mobile app network communications
- Bypass certificate and public key pinning protections
- Bypass jailbreak/root detection
- Reverse engineer and analyze mobile apps from a blackbox perspective
- Review mobile app source code to identify security flaws
- Perform a mobile app security review
Course Outline
Day 1 - Hacking Android and 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 and IoT Apps by Example
Part 0 - iOS Security Crash Course
- The state of iOS Security
- iOS security architecture and its components
- iOS apps and the filesystem
- iOS 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 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
- The art of Instrumentation: Cydia tweaks, Cycript, FLEX, PassionFruit, and Frida
- App behaviour monitoring at runtime
- Defeating certificate pinning and jailbreak detection at runtime
- Modifying app behaviour at runtime
Part 3 - Test Your Skills
- CTF time, including finding IoT vulnerabilities through app analysis
Your Instructor
Abhishek J.M. is a Lead Security Engineer at CRED with primary research focus in mobile security. With years of experience in security, he leads two projects - Adhrit and EVABS - and has presented his work at prominent conferences like BlackHat Asia 2023, BlackHat US 2022, BlackHat Europe 2021, OWASP Seasides 2019, ThreatCon 2019 and BlackHat Asia 2020 where his tool (Adhrit) was featured PortSwiggers The Daily Swig. He has also delivered talks at community Meetups like Cysinfo & bi0s Meetup, and was an assisting trainer at the International Summer School for Information Security and Protection, 2016. As a trainer with 7ASecurity, he has conducted training at notable conferences like the 2012 AppSec New Zealand Conference, 44Con 2020 & 2022, ThreatCon 2021, c0c0n 2019 & 2022, and Shu-ha-ri Labs 2020.