Project Sanitizer & Analysis Assistant
Overview
This skill provides a workflow for reviewing projects that contain reverse-engineering artifacts. It assists in the initial analysis of binaries and automates the subsequent redaction pass before internal review or public sharing.
Workflow
Phase 1: Analysis & Recovery (Optional)
Use this phase to extract core information needed for "narrative reconstruction".
# Analyze a binary to extract strings/symbols
./local-skills/project-sanitizer/scripts/analyze_target.sh ./binaries/my-app
Methodology guidance lives in references/:
references/analysis-methodology.md — eight transferable
techniques (function fingerprinting, XREF chokepoint heuristic,
Swift/ObjC metadata + C++ RTTI exploitation, dynamic hooking choices,
backtrace-at-symptom, string xrefs incl. Swift SSO inline imm,
differential analysis, observation-system awareness), a
"when the target resists analysis" section (macOS anti-debug,
Frida/anti-DBI detection, self-hashing watchdogs), safe runtime
mutation of C++ container fields (why blind-writing a std::string
corrupts the heap; swap-the-assignment-source hijack primitive),
plus the five-layer verification protocol and the subtleties that bite
first-timers (universal binary offsets, ASLR slide arithmetic,
/etc/hosts bypass by userspace DNS, codesign --deep sealed
resources, Hardened Runtime vs App Sandbox, iOS FairPlay encryption,
jailbreak-detection obstacles).
references/analysis-checklist.md — condensed cheat sheet of
the same material; keep open during an audit.
references/deobfuscation.md — recovery playbook for
OLLVM-family protected ARM64 dylibs (Hikari/O-MVLL/goron/Pluto
variant identification, layered bcf→fla→sub deflattening, tool
selection, MBA simplification). Commercial iOS/macOS apps ship these.
references/packaged-app-analysis.md — unwrapping hybrid macOS
desktop apps (Electron ASAR, Tauri Brotli, Node native modules)
before the Mach-O methodology applies; runtime introspection of
obfuscated JS.
Read the methodology before reaching for a disassembler. Most
"this binary behaves weirdly" tickets resolve at the configuration
layer; binary inspection is for when cheap layers cannot explain
the behaviour.
Phase 2: Sanitization (Essential)
Run this phase before sharing with Claude Code or uploading to GitHub.
# Scrub RE traces and rebrand
./local-skills/project-sanitizer/scripts/sanitize_project.sh .
# Preview changes without modifying files
./local-skills/project-sanitizer/scripts/sanitize_project.sh --dry-run .
Phase 3: Provenance Review & Upload
- Update
README.md to accurately describe the project provenance and remaining third-party material.
- Initialize a fresh Git repository.
- Push to GitHub using
gh.
Resources
scripts/sanitize_project.sh
- Deletes
analysis/, binaries/, pseudocode/, etc.
- Recursively deletes lines containing cracking指纹 (e.g.,
CRACKED, fake_, 破解).
- Globally replaces RE-related terms with neutral identifiers (e.g.,
反汇编 -> 源码分析).
scripts/analyze_target.sh
- Extracts strings, exported symbols, and library dependencies from a target binary.
- Outputs results to an
analysis/ folder (which is later scrubbed by the sanitizer).
references/analysis-methodology.md
- Long-form methodology for binary analysis (security audit, legacy
archaeology, third-party SDK due diligence, crash investigation).
- Covers when to start binary work vs. exhaust configuration-layer
investigation, the eight technique catalogue, five-layer
verification protocol, and common subtleties.
references/analysis-checklist.md
- Operational cheat sheet for an analyst doing an audit: initial
recon commands, function-finding decision tree, patch verification
matrix, Mach-O section reference, universal-binary offset arithmetic.
references/deobfuscation.md
- Recovery playbook for OLLVM-family protected ARM64 dylibs: variant
identification (Hikari/O-MVLL/goron/Arkari/Pluto/Polaris), the three
core passes (fla/bcf/sub), layered deflattening order, tool decision
table with a cloud-upload sensitivity caveat, and MBA identities.
references/packaged-app-analysis.md
- Unwrapping hybrid macOS desktop apps before the Mach-O methodology
applies: Electron ASAR extraction, obfuscated-JS runtime
introspection, Tauri Brotli asset recovery, and a "where the logic
actually lives" map so you don't reverse the launcher.
1---2name: project-sanitizer3description: Binary analysis methodology + project sanitization workflow. Phase 1 covers the analysis playbook (function fingerprinting, XREF chokepoint heuristic, Swift/ObjC metadata + C++ RTTI exploitation, dynamic hooking trade-offs, backtrace at symptom, string xrefs incl. Swift small-string-optimization, differential analysis, observation-system awareness, anti-analysis awareness for Frida/self-hashing/PT_DENY_ATTACH, iOS FairPlay decryption, AI-assisted signature recovery), the five-layer verification protocol, OLLVM-family deobfuscation (Hikari/O-MVLL/goron/Pluto), and packaged desktop app analysis (Electron ASAR, Tauri Brotli). Phase 2 removes sensitive analysis artifacts and replaces internal RE terminology with neutral project language before sharing. Use for binary analysis, RE workflows, security audits, deobfuscation, '反汇编', '逆向', '脱敏'.4---56# Project Sanitizer & Analysis Assistant78## Overview910This skill provides a workflow for reviewing projects that contain reverse-engineering artifacts. It assists in the initial analysis of binaries and automates the subsequent redaction pass before internal review or public sharing.1112## Workflow1314### Phase 1: Analysis & Recovery (Optional)15Use this phase to extract core information needed for "narrative reconstruction".16```bash17# Analyze a binary to extract strings/symbols18./local-skills/project-sanitizer/scripts/analyze_target.sh ./binaries/my-app19```2021Methodology guidance lives in `references/`:2223- **`references/analysis-methodology.md`** — eight transferable24 techniques (function fingerprinting, XREF chokepoint heuristic,25 Swift/ObjC metadata + C++ RTTI exploitation, dynamic hooking choices,26 backtrace-at-symptom, string xrefs incl. Swift SSO inline imm,27 differential analysis, observation-system awareness), a28 "when the target resists analysis" section (macOS anti-debug,29 Frida/anti-DBI detection, self-hashing watchdogs), safe runtime30 mutation of C++ container fields (why blind-writing a std::string31 corrupts the heap; swap-the-assignment-source hijack primitive),32 plus the five-layer verification protocol and the subtleties that bite33 first-timers (universal binary offsets, ASLR slide arithmetic,34 `/etc/hosts` bypass by userspace DNS, `codesign --deep` sealed35 resources, Hardened Runtime vs App Sandbox, iOS FairPlay encryption,36 jailbreak-detection obstacles).37- **`references/analysis-checklist.md`** — condensed cheat sheet of38 the same material; keep open during an audit.39- **`references/deobfuscation.md`** — recovery playbook for40 OLLVM-family protected ARM64 dylibs (Hikari/O-MVLL/goron/Pluto41 variant identification, layered bcf→fla→sub deflattening, tool42 selection, MBA simplification). Commercial iOS/macOS apps ship these.43- **`references/packaged-app-analysis.md`** — unwrapping hybrid macOS44 desktop apps (Electron ASAR, Tauri Brotli, Node native modules)45 before the Mach-O methodology applies; runtime introspection of46 obfuscated JS.4748Read the methodology before reaching for a disassembler. Most49"this binary behaves weirdly" tickets resolve at the configuration50layer; binary inspection is for when cheap layers cannot explain51the behaviour.5253### Phase 2: Sanitization (Essential)54Run this phase before sharing with Claude Code or uploading to GitHub.55```bash56# Scrub RE traces and rebrand57./local-skills/project-sanitizer/scripts/sanitize_project.sh .5859# Preview changes without modifying files60./local-skills/project-sanitizer/scripts/sanitize_project.sh --dry-run .61```6263### Phase 3: Provenance Review & Upload641. Update `README.md` to accurately describe the project provenance and remaining third-party material.652. Initialize a fresh Git repository.663. Push to GitHub using `gh`.6768## Resources6970### scripts/sanitize_project.sh71- Deletes `analysis/`, `binaries/`, `pseudocode/`, etc.72- Recursively deletes lines containing cracking指纹 (e.g., `CRACKED`, `fake_`, `破解`).73- Globally replaces RE-related terms with neutral identifiers (e.g., `反汇编` -> `源码分析`).7475### scripts/analyze_target.sh76- Extracts strings, exported symbols, and library dependencies from a target binary.77- Outputs results to an `analysis/` folder (which is later scrubbed by the sanitizer).7879### references/analysis-methodology.md80- Long-form methodology for binary analysis (security audit, legacy81 archaeology, third-party SDK due diligence, crash investigation).82- Covers when to start binary work vs. exhaust configuration-layer83 investigation, the eight technique catalogue, five-layer84 verification protocol, and common subtleties.8586### references/analysis-checklist.md87- Operational cheat sheet for an analyst doing an audit: initial88 recon commands, function-finding decision tree, patch verification89 matrix, Mach-O section reference, universal-binary offset arithmetic.9091### references/deobfuscation.md92- Recovery playbook for OLLVM-family protected ARM64 dylibs: variant93 identification (Hikari/O-MVLL/goron/Arkari/Pluto/Polaris), the three94 core passes (fla/bcf/sub), layered deflattening order, tool decision95 table with a cloud-upload sensitivity caveat, and MBA identities.9697### references/packaged-app-analysis.md98- Unwrapping hybrid macOS desktop apps before the Mach-O methodology99 applies: Electron ASAR extraction, obfuscated-JS runtime100 introspection, Tauri Brotli asset recovery, and a "where the logic101 actually lives" map so you don't reverse the launcher.