Hacking Android and IoT apps by Example (Part 1)

## 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 apps in various countries
– Many other excitingly vulnerable real-world apps
– IoT apps controlling Toys, Drones, etc.
– Digital copies of all training material
– Custom Build Lab VMs
– Purpose Build Vulnerable Test apps
– Source code for test apps
– A USB pendrive with materials

## Topics Included ##

1. Review of Common Flaws in Source Code and at Runtime
2. Modification of App Behavior Through Code/Configuration Changes
3. Interception of Network Communication aka MitM
4. Root Detection Bypasses and App Review from a Privileged Standpoint
5. Instrumentation (Review and Modification of App Behavior)
6. CTF Challenges for Attendants to Test Their Skills

## Why should you take this course? ##

This is more than a physical attendance course: You get the physical course but also lifetime access to a training portal with step-by-step video recordings, slides and lab exercises, including all future updates for free.

Students can take the course at their own pace and training portal access ensures topics can be reviewed on an ad-hoc basis as required by the student online after the course.

This training has been built from real issues seen in real applications, not fabricated vulnerabilities that you will never see in practice.

The goal is to start from the basics and ensure that each student comes out of the training with a significantly higher level of proficiency in the artistry of mobile pentesting.

Students will be taught ways to identify the attack surface of mobile apps, exploit interesting vulnerabilities and means to fix them. Ranging from fun defeating root detection, pinning, modifying app behaviour at runtime to inspecting what apps are doing in real time. The training also covers effective identification and exploitation of common vulnerability patterns, modification of Android apps at rest and at runtime, and more.

As the course has been written and carefully created by professional mobile app penetration testers, after many years of experience, many practical tips will be shared to leverage automation and make penetration testing more efficient as soon as the student goes back to their office.

## Top 3 takeaways students will learn ##

– 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.
## Upon Completion of this training, attendees will know ##

Completing this training ensures attendees will be competent and able to:
– Intercept mobile app network communications
– Bypass certificate and public key pinning protections
– Bypass 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 Content (ToC) ##

### Morning: 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

# Prerequisite of Training Class #

## Hardware & 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 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
– Optional but useful: One of the following BurpSuite, ZAP or Fiddler (for MitM)

## Student / Prerequisites for attendees ##

This course has no 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 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:
– Linux command line basics
– Android basics

# 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 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 day, you will likely also attempt to complete some exercises from home 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 a physical attendance course: You get the physical course but also 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 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.


Session info:

Speaker: Abraham Aranguren


Date: 9 May 2023

Time: 09:00 - 12:30

Relevant tags:
Android Security

See all speakers

See all videos