Rev Ios DumpBLOCK
Reverse engineering skills for Claude Code | 逆向工程 Claude Code Skills 插件
Overview
Reverse engineering skills for Claude Code | 逆向工程 Claude Code Skills 插件
85f1794347efOBSERVED · 2026-10-23Install
Commands as the repository documents them. They are shown, not run.
git clone https://github.com/P4nda0s/frida-ios-dump.git
npm install --ignore-scripts
What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
---
name: rev-ios-dump
description: Dump decrypted iOS app binaries (砸壳) from jailbroken devices using frida-ios-dump. Activate when the user wants to decrypt an iOS app, dump an IPA from a device, or extract a decrypted Mach-O binary for reverse engineering.
---
# rev-ios-dump - iOS App Decryption (砸壳)
Dump decrypted iOS application binaries from jailbroken devices for security analysis and reverse engineering.
---
## Overview
iOS apps distributed via the App Store are encrypted with Apple's FairPlay DRM. To perform static analysis (IDA/Ghidra/Hopper), the binary must first be decrypted at runtime — commonly called "砸壳" (dumping the shell). This skill uses Frida to instrument the running process and dump the decrypted Mach-O from memory.
---
## Prerequisites
| Requirement | Details |
|-------------|---------|
| Jailbroken iOS device | With SSH access enabled |
| frida-server | Installed and running on the device |
| Python 3 | On the host machine |
| frida + frida-tools | `pip3 install frida frida-tools` |
| USB or network access | SSH connection to the device |
### Verify frida-server is Running
```bash
# Check frida-server on device via SSH
ssh mobile@<device_ip> "ps aux | grep frida-server"
# If not running, start it
ssh mobile@<device_ip> "/usr/sbin/frida-server -D &"
# Verify from host
frida-ls-devices
frida-ps -H <device_ip>
```
---
## Tool: frida-ios-dump
Repo: `https://github.com/P4nda0s/frida-ios-dump`
### Installation
```bash
git clone https://github.com/P4nda0s/frida-ios-dump.git
cd frida-ios-dump
pip3 install -r requirements.txt
# Build the TypeScript agent (required before first run)
npm install --ignore-scripts
npx frida-compile dump.ts -o dist/dump.js
```
Note: This version uses a TypeScript-based Frida agent. The `dist/dump.js` must be compiled before `dump.py` can run.
---
## Step-by-Step Workflow
### Step 1: Identify Target App Bundle ID
Use one of these methods on the device:
```bash
# Method 1: List running apps via Frida
frida-ps -H <device_ip> -a
# Method 2: SSH into device and check
ssh mobile@<device_ip> "find /var/containers/Bundle/Application -name Info.plist -exec plutil -p {} \; 2>/dev/null | grep CFBundleIdentifier"
```
Or use CocoaTop on the device to identify the running process and its Bundle ID.
### Step 2: Ensure Target App is Running
The target app **must be running** on the device. frida-ios-dump attaches to the live process to dump decrypted memory.
### Step 3: Execute Dump
```bash
cd frida-ios-dump
python3 dump.py -H <device_ip> -u mobile -P <password> <bundle_id>
```
**Parameters:**
| Flag | Description |
|------|-------------|
| `-H` | Device IP address |
| `-u` | SSH username (typically `mobile`) |
| `-P` | SSH password (typically `alpine` on fresh jailbreak) |
| `<bundle_id>` | Target app Bundle ID (e.g., `app.ish.iSH`) |
**Example:**
```bash
python3 dump.py -H 192.168.1.100 -u mobile -P alpine app.ish.iSH
```
### Step 4: Verify Output
A successful dump produces a `.ipa` file in the current directory:
```bash
ls -la *.ipa
# Unzip to inspect
unzip -o <app_name>.ipa -d dumped_app/
# Verify decryption — cryptid should be 0
otool -l dumped_app/Payload/<AppName>.app/<BinaryName> | grep -A4 LC_ENCRYPTION_INFO
```
If `cryptid 0` is shown, the binary is successfully decrypted.
---
## Troubleshooting
| Error | Cause | Fix |
|-------|-------|-----|
| `Failed to spawn` | App not installed or wrong Bundle ID | Verify Bundle ID with `frida-ps -H <ip> -a` |
| `Unable to connect to remote frida-server` | frida-server not running or port blocked | Start frida-server on device, check firewall |
| `SSH connection refused` | SSH not enabled or wrong credentials | Verify SSH access: `ssh mobile@<ip>` |
| `Timeout waiting for process` | App crashed or not fully launched | Launch app manually first, then retry |
| `frida.ServerNotRunningError` | frida-server version mismatch | Match frida-server version to host frida version |
| `cryptid 1` in output | Dump failed, binary still encrypted | Ensure app is running during dump, retry |
| `Permission denied` | SSH key/password issue | Check `-u` and `-P` flags, or use SSH key auth |
### Version Mismatch Fix
frida-server and host frida must be the same major version:
```bash
# Check host version
frida --version
# Download matching frida-server from:
# https://github.com/frida/frida/releases
# Choose: frida-server-<version>-ios-arm64.xz
```
---
## Output Usage
After obtaining the decrypted IPA:
1. **Static analysis** — Load the decrypted Mach-O into IDA/Ghidra/Hopper
2. **Class dump** — Extract ObjC headers: `class-dump <binary> > headers.h`
3. **String analysis** — Search for sensitive strings, URLs, keys
4. **Frida hooking** — Use with `rev-frida` skill for dynamic analysis
5. **Symbol recovery** — Use with `rev-symbol` skill for stripped binary analysis
---
## Notes
- The device must remain unlocked and the app must stay in the foreground during the dump process.
- For apps with multiple frameworks, frida-ios-dump will dump all encrypted frameworks within the app bundle.
- Some apps with advanced jailbreak detection may terminate before the dump completes — consider bypassing jailbreak detection first.Trust audit
BLOCKgrade D · trust 69/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | NA |
| L2 | Instruction surface (what it tells the agent) | FAIL |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (3)
| `-P` | SSH password (typically `alpine` on fresh jailbreak) |
- Some apps with advanced jailbreak detection may terminate before the dump completes — consider bypassing jailbreak detection first.
Gates applied: instruction_override, no_behavioural_pass, no_license.
85f1794347effull audit observations/trust-audit/skill/p4nda0s__rev-ios-dump.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-23 | 85f1794347ef | BLOCK | D | 69 | first audit |
Questions
What does the rev-ios-dump — p4nda0s/reverse-skills skill do?
Reverse engineering skills for Claude Code | 逆向工程 Claude Code Skills 插件
Is rev-ios-dump — p4nda0s/reverse-skills safe to install?
No — not without reading the findings first. The audit graded it D (69/100) and found 2 critical or high issues in the source. Each one is listed on this page with the file and line it is on.
What can rev-ios-dump — p4nda0s/reverse-skills access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
How current is this page?
The grade is for one exact copy of the source (85f1794347ef), read on 2026-10-23. The repository is watched, and a new audit runs when it changes — this is the first audit.
Add this badge to your README
Shows this page's audit result and links back to it. It updates when the audit does.
[](https://modelsatlas.com/skills/p4nda0s/rev-ios-dump/)
Not your listing, or something out of date? Claim or update your listing.