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
- 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.