mobile-security
Provides resources and techniques for mobile game reverse engineering and security research.
Install
mkdir -p .claude/skills/mobile-security && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/1109" && unzip -o skill.zip -d .claude/skills/mobile-security && rm skill.zipInstalls to .claude/skills/mobile-security
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Guide for Android and iOS game security, reversing, and anti-cheat-adjacent platform research. Use this skill when working with APK or IPA analysis, IL2CPP mobile titles, Frida, Zygisk or Magisk, jailbreak or root detection bypass, Android kernel modules, emulator detection, or mobile anti-cheat systems.Key capabilities
- →Decompile and analyze APK and IPA structures
- →Implement dynamic instrumentation using Frida
- →Bypass root and jailbreak detection mechanisms
- →Analyze native libraries and IL2CPP game structures
- →Manage memory manipulation via custom tools or debuggers
How it works
It utilizes static analysis tools for code decompilation and dynamic instrumentation frameworks to hook functions and bypass security checks at runtime.
Inputs & outputs
When to use mobile-security
- →Analyzing APK/IPA structures
- →Bypassing root/jailbreak detection
- →Researching mobile anti-cheat systems
About this skill
Mobile Game Security
Overview
This skill covers mobile security resources from the awesome-game-security collection, focusing on Android and iOS game security research, reverse engineering, and protection bypass techniques.
Mobile behavior is strongly version-, OEM-, entitlement-, signing-, kernel-,
and policy-dependent. Verify the exact device/build and use
research-rigor before treating a root, hook,
emulator, or integrity signal as attribution.
README Coverage
Cheat > MagiskCheat > XposedCheat > FridaCheat > Hook ART(android)Cheat > Hook syscall(android)Cheat > Android Terminal EmulatorCheat > Android File ExplorerCheat > Android Memory ExplorerCheat > Android Application CVECheat > Android Kernel CVECheat > Android Bootloader BypassCheat > IoT / Smart devicesCheat > Android ROMCheat > Android Device TreesCheat > Android Kernel SourceCheat > Android RootCheat > Android Kernel driver developmentCheat > Android Kernel ExplorerCheat > Android Kernel DriverCheat > Android Network ExplorerCheat > Android memory loadingCheat > IOS jailbreakCheat > IOS Memory ExplorerCheat > IOS File ExplorerCheat > IOS App PackagingCheat > Injection:AndroidCheat > Injection:IOSAnti Cheat > Detection:Android rootAnti Cheat > Detection:MagiskAnti Cheat > Detection:FridaSome Tricks > AndroidAndroid EmulatorIOS Emulator
Android Security
APK Analysis
Tools
- apktool: Decompile/recompile APKs
- jadx: DEX to Java decompiler
- APKiD: Identify packers/protectors
- Frida: Dynamic instrumentation
- APKLab: VS Code integration
Workflow
# Decompile APK
apktool d game.apk
# Analyze DEX files
jadx -d output game.apk
# Identify protection
apkid game.apk
Native Library Analysis
IL2CPP Games (Unity)
1. Extract libil2cpp.so from APK
2. Use IL2CPP Dumper to generate headers
3. Analyze with IDA/Ghidra
4. Hook using Frida or native hooks
Native Games
1. Identify target libraries (.so files)
2. Analyze with reverse engineering tools
3. Pattern scan for functions
4. Apply hooks/patches
Memory Manipulation
Tools
- GameGuardian: Memory editor
- Cheat Engine (ceserver): Remote debugging
- Custom memory tools: Direct /proc/pid/mem access
Access Methods
// Via /proc filesystem
int fd = open("/proc/pid/mem", O_RDWR);
pread64(fd, buffer, size, address);
pwrite64(fd, buffer, size, address);
Hooking Frameworks
Frida
// Basic function hook
Interceptor.attach(Module.findExportByName("libgame.so", "function_name"), {
onEnter: function(args) {
console.log("Called with: " + args[0]);
},
onLeave: function(retval) {
retval.replace(0);
}
});
Native Hooks
- Substrate: Inline hooking framework
- And64InlineHook: ARM64 inline hooks
- xHook: PLT hook library
- Dobby: Multi-platform hook framework
Modern Root Solutions
KernelSU
- Kernel-based root solution, works at kernel level (no /system modification)
- Module system compatible with Magisk modules via KSU module API
- Stealth advantage: no su binary on filesystem, harder to detect
- Requires custom kernel or GKI (Generic Kernel Image) patching
- APatch: newer alternative, patches boot.img with KernelPatch
APatch
- Patches Android kernel at boot via KernelPatch
- No need for custom kernel source (works on stock GKI kernels)
- Module support similar to Magisk/KernelSU
- Root process runs within kernel context
Root Solution Comparison
| Solution | Level | Stealth | GKI Support | Module System |
|-----------|-------------|---------|-------------|---------------|
| Magisk | User/Init | Medium | Yes | Mature |
| KernelSU | Kernel | High | Yes | Growing |
| APatch | Kernel | High | Yes | Growing |
Managed Dynamic Instrumentation on Rooted Android
Methodology (KSU/Magisk module + single binary engine):
- Package injector + loader + agent into one ARM64 binary
to reduce footprint and version mismatch risk
- Expose a local HTTP RPC control plane (127.0.0.1:<port>) for
low-latency script management, session listing, and function calls
- Keep boot path safe: do NOT start instrumentation engine in
post-fs-data/service early stage; use delayed manual start after
boot_completed to avoid zygote/module startup contention
Injection modes:
- Attach: ptrace into running process, inject bootstrap shellcode,
resolve libc symbols, dlopen agent, then run JS
- Spawn: zygote-hijack path to pause child at fork and inject before
app initialization (covers Application.onCreate / class init)
- Watch-SO: eBPF-based dlopen monitor that triggers injection when
target native library is loaded
Stealth tiers:
- NORMAL: direct RWX patching (fastest, easiest to detect)
- WXSHADOW: shadow-page patching to reduce /proc memory visibility
- RECOMP: function recompile/relocation with minimal inline patch
Operational pattern:
- Lifecycle commands: start/stop/restart/status
- Analysis mode: temporarily disable conflicting zygisk modules,
reboot, instrument, then restore and reboot back to normal mode
- Troubleshooting-first logging: keep manager and engine logs separate
Root Detection Bypass
Common Checks
- /system/bin/su existence
- /system/xbin/su existence
- Build.TAGS contains "test-keys"
- ro.build.selinux property
- Magisk files/folders
- Package manager checks
Bypass Methods
- Magisk DenyList / Shamiko: Modern root hiding (replaces MagiskHide)
- LSPosed/EdXposed: Xposed framework hooks
- Frida scripts: Hook detection functions
- APK patching: Remove detection code
- KernelSU SU isolation: Process-level root visibility control
Zygisk Modules
// Zygisk module structure
class Module : public zygisk::ModuleBase {
void onLoad(zygisk::Api *api, JNIEnv *env) override {
this->api = api;
this->env = env;
}
void preAppSpecialize(zygisk::AppSpecializeArgs *args) override {
// Before app loads
}
void postAppSpecialize(const zygisk::AppSpecializeArgs *args) override {
// After app loads - inject here
}
};
Android Protections
Common Protectors
- Tencent ACE: Chinese market protection
- AppSealing: Commercial protection
- DexGuard/ProGuard: Obfuscation
- Arxan: Enterprise protection
iOS Security
Analysis Tools
- Hopper: Disassembler
- IDA Pro: Industry standard
- class-dump: Objective-C header extraction
- Frida: Dynamic instrumentation
- Clutch/dumpdecrypted: App decryption
Jailbreak Tools
- H5GG: iOS cheat engine
- Flex: Runtime patching
- Cycript: Runtime manipulation
- ceserver-ios: Cheat Engine for iOS
Hooking (Jailbroken)
// Using Logos (Theos)
%hook TargetClass
- (int)targetMethod:(int)arg {
int result = %orig;
return result * 2; // Modify return
}
%end
Non-Jailbreak Techniques
- Sideloading: Modified IPAs
- Enterprise certificates: Custom signing
- AltStore: Self-signing tool
Unity Mobile Games
IL2CPP Analysis
1. Locate libil2cpp.so (Android) or UnityFramework (iOS)
2. Find global-metadata.dat
3. Run IL2CPPDumper
4. Generate SDK/headers
5. Hook target functions
Mono Analysis
1. Extract managed DLLs
2. Decompile with dnSpy/ILSpy
3. Modify and repackage
4. Or hook at runtime
Common Targets
- Currency/coins values
- Player stats (health, damage)
- Inventory manipulation
- Premium unlocks
- Ad removal
Unreal Mobile Games
Analysis Approach
1. Identify UE version
2. Dump SDK using appropriate tool
3. Locate GObjects, GNames
4. Find target functionality
5. Apply memory patches or hooks
Overlay Rendering (Android)
Surface-Based
// Native surface overlay
ANativeWindow* window = ANativeWindow_fromSurface(env, surface);
// Render using OpenGL ES or Vulkan
ImGui Integration
- Zygisk + ImGui modules
- Surface hijacking
- Direct framebuffer access
Network Analysis
Tools
- mitmproxy: MITM proxy
- Charles Proxy: Traffic analysis
- Frida SSL bypass: Certificate pinning bypass
Certificate Pinning Bypass
// Frida universal SSL bypass
Java.perform(function() {
var TrustManager = Java.registerClass({
implements: [X509TrustManager],
methods: {
checkClientTrusted: function() {},
checkServerTrusted: function() {},
getAcceptedIssuers: function() { return []; }
}
});
// Install custom TrustManager
});
Anti-Cheat on Mobile
Common Systems
- Tencent ACE: Chinese games
- NetEase Protection: NetEase games
- Custom solutions: Per-game implementations
Detection Methods
- Root/jailbreak detection
- Frida detection
- Emulator detection
- Integrity checks
- Debugger detection
- Hook detection
Bypass Strategies
1. Static analysis of detection code
2. Hook detection functions
3. Hide injection footprint
4. Timing attack consideration
5. Clean environment emulation
eBPF-Based Tools
Tracing & Hooking
- stackplz: eBPF-based stack trace tool for Android
- eDBG: eBPF-powered debugger for Android processes
- tracee: Aqua Security's eBPF runtime security tool (Linux/Android)
- eBPF hooking: attach to tracepoints, kprobes, uprobes without kernel module
Advantages Over Traditional Approaches
- No kernel module compilation required (runs in eBPF VM)
- May work on compatible GKI kernels when BPF features, BTF, privileges,
SELinux policy, lockdown state, and required attach points permit it
- Can avoid a custom kernel module, but progra
---
*Content truncated.*
When not to use it
- →Production environment security testing
- →Developing legitimate mobile applications
Prerequisites
Limitations
- →Requires specific device states like root or jailbreak
- →Effectiveness depends on the target's protection mechanisms
How it compares
It centralizes specialized mobile-specific research workflows and bypass techniques that would otherwise require manual integration of disparate reverse engineering tools.
Compared to similar skills
mobile-security side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| mobile-security (this skill) | 14 | 3mo | Review | Advanced |
| apktool | 7 | 2mo | Review | Intermediate |
| mobile-security-coder | 8 | 4mo | No flags | Intermediate |
| firebase-apk-scanner | 1 | 2mo | Review | Advanced |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by gmh5225
View all by gmh5225 →You might also like
apktool
BrownFineSecurity
Android APK unpacking and resource extraction tool for reverse engineering. Use when you need to decode APK files, extract resources, examine AndroidManifest.xml, analyze smali code, or repackage modified APKs.
mobile-security-coder
sickn33
Expert in secure mobile coding practices specializing in input validation, WebView security, and mobile-specific security patterns. Use PROACTIVELY for mobile security implementations or mobile security code reviews.
firebase-apk-scanner
trailofbits
Scans Android APKs for Firebase security misconfigurations including open databases, storage buckets, authentication issues, and exposed cloud functions. Use when analyzing APK files for Firebase vulnerabilities, performing mobile app security audits, or testing Firebase endpoint security. For authorized security research only.
mfa-on-mobile
almasumdev
Multi-factor authentication on mobile — TOTP, push-based MFA, and recovery UX. Use when adding or reviewing a second factor.
security-hardener
Mithrandir21
MASVS-aligned Android security audit — encrypted storage, TLS and certificate pinning, exported component exposure, deep-link hijacking, WebView config, biometric/Keystore use, and debug/root posture trade-offs. Use whenever the user mentions "security", "MASVS", "MASTG", "OWASP Mobile", "pentest fi
reverse-engineering-tools
gmh5225
Guide for reverse engineering tools and techniques used in game security research. Use this skill when working with debuggers, disassemblers, memory analysis tools, binary analysis, or decompilers for game security research.