Overview of Gum capabilities
mainGum is a cross-platform instrumentation and introspection library written in C. It is primarily consumed by frida-core via GumJS bindings.
Key functional areas include:
Instrumentation Core
- Inline hooking: via
Interceptor - Stealthy code tracing: via
Stalker - Memory monitoring: via
MemoryAccessMonitor
Cross-platform Introspection
- Process state (running threads, etc.)
- Loaded modules (imports, exports, symbols)
- Memory scanning and
DebugSymbollookups Backtracerimplementations- Kernel state (currently iOS only)
Code Generation and Relocation
Gum provides architecture-specific writers and relocators for:
- X86
- Arm
- Thumb
- Arm64
- Mips
Specialized Developer Helpers
- Heap allocation tracking and leak checking.
- Profiling with a
worst-case inspectorcallback.