Corellium Class: iOS Reverse Engineering

This course provides students with the fundamental skills of iOS reverse engineering. Students will get first-hand experience using the Corellium Virtual Hardware platform with virtual iOS devices.

 

Who is this for?

The target audience for this training consists of beginner-intermediate level security researchers and developers interested in iOS internals and runtime analysis. Students should have:

Basic understanding of operating systems architecture (userland/kernel separation)

Working knowledge of C (Objective-C experience would be helpful)

Basic familiarity with debuggers (LLDB/GDB basic commands)

Basic JavaScript skills (for Frida)

Understanding of process memory layout (heap, stack, registers)

Students who take this course should be looking to transfer research skills from Linux/Windows/Android to iOS or to begin/advance their research journey by learning about iOS internals and research tools.


They want to understand how to investigate iOS applications and system services at runtime, trace inter-process communication, and build custom instrumentation for security research or advanced development.

Course Content

Over four days, we’ll dive into the following topics. For a detailed breakdown of each day, please Download the Syllabus.
  • Foundations & Dynamic Instrumentation
    Understand the iOS security model and gain initial access to our target process, imagent, using dynamic instrumentation.
  • Static Analysis & Debugging
    Learn to analyze compiled code, triage a crash log, and inspect a process with a debugger.
  • CoreFoundation and IPC
    Introduction to fundamental Apple frameworks.
  • Exploring the “Nickname” Vulnerability
    Synthesize all learned skills to perform a full analysis of the “Nickname” vulnerability and analyze Apple’s fix.

Contact us for pricing

Interested in scheduling a course? Contact us for pricing and more information.