Contact Details

Hacking and Cyber Security Briefing
manu
Manu Zacharia
+91-98470-96355
thomas
Thomas Kurian Ambattu
+91-94470-22081
akash
Akash Joseph Thomas
+91-94974-65363

WS - 3

Attacking Android and iOS apps

WS - 3

Attacking Android and iOS apps

 

Workshop Objective:

This course is ideal for those intending to expand their knowledge about mobile app security as it covers a large number of topics: People relatively new to mobile security will benefit from the practical deep dive while more advanced students can polish their skills in specific areas and perhaps complete more CTF challenges.

This course has been prepared after years of research and experience gained through pentesting mobile applications. It is structured to follow the OWASP Mobile Top Ten and the OWASP Mobile Security Testing Guide. This is a hands-on practical course, the skills gained can be applied to mobile security assessments immediately. 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.

Day 1 includes but is not limited to a brief introduction to Android security, a series of techniques focused on static analysis, followed by dynamic analysis covering both monitoring and modifying app behavior at runtime. The day ends with beautiful CTF challenges to entertain even advanced mobile app penetration testers.

Day 2 begins with a brief iOS security crash course, static analysis techniques, followed by dynamic analysis including both monitoring and modifying app behaviour at runtime. The day ends with more lovely CTF challenges.

This is a basic outline of the course; it will contain various other components and details that will help the students understand and perform better. This will be a learning experience from which people relatively new to the ever-growing world of mobile security will benefit, while the advanced students will polish their skills in specific areas and perhaps complete more or the CTF challenges.

Course Content (ToC):

    Day 1: Attacking Android 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 – Emphasis on 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 pinning, defeating root detection, translating APKs in funny languages and more
    • Part 2 - Focus on 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 and Frida
      • 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
  • Day 2: Attacking iOS 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 - Focus on 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 - Focus on 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: Hooking with Cycript, Frida, Objection
      • App behaviour monitoring at runtime
      • Modifying app behaviour at runtime
    • Part 3 - Test your Skills - CTF time

What to expect:

This is a hands-on practical course, the skills gained can be applied to mobile security assessments immediately. A much greater proficiency in mobile assessments should be expected

What not to expect:

While nobody is going to become a mobile security ninja in 2 days, our 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

Hardware, Software and Prerequisites

Attendees will be provided with

  • Digital copies of all training material
  • Lab VM
  • Test apps
  • Source code for test apps

Hardware/Software Prerequisites

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.
  • Minimum 8GB of RAM (recommended: 16GB+)
  • 40GB+ of free disk space (to copy a lab VM and other goodies)
  • VMWare Player (ideally VMWare Workstation)
  • At least one of the following (ideally both): + A jailbroken iPhone / iDevice with iOS >=9 (ideally: iOS for the iOS labs + A Mac/Hackintosh with the latest XCode installed, for iOS code review & labs
  • Optional but useful: Genymotion, BurpSuite

Speaker Profile:

Abraham Aranguren , CEO, 7ASecurity

After 13 years in itsec and 20 in IT Abraham is now the CEO of 7ASecurity (7asecurity.com), a company specializing in penetration testing of web/mobile apps, infrastructure, code reviews and training. Former senior penetration tester / team lead at Cure53 (cure53.de) and Version 1 (www.version1.com). Creator of “Practical Web Defense” - a hands-on eLearnSecurity attack / defense course (www.elearnsecurity.com/PWD), OWASP OWTF project leader, an OWASP flagship project (owtf.org), Major degree and Diploma in Computer Science, some certs: CISSP, OSCP, GWEB, OSWP, CPTS, CEH, MCSE:Security, MCSA:Security, Security+. As a shell scripting fan trained by unix dinosaurs, Abraham wears a proud manly beard. He writes on Twitter as @7asecurity @7a_ @owtfp or http://7-a.org. Some presentations, pentest reports and recordings can be found at https://7asecurity.com/#publications