Communitygithub.com

radare2

Binäre Analysefähigkeit für die `radare2`-CLI – Schwerpunkt auf Aufklärung, Analyse, Lokalisierung, Export und leichten Modifikationen ohne GUI.

Was ist radare2?

Diese Skill-Anleitung für AI-Agenten beschreibt die Nutzung der `radare2`-Werkzeugkette (r2, rabin2, rasm2, radiff2, rahash2, rax2) zur binären Analyse direkt über die Kommandozeile. Sie unterstützt die Formate PE, ELF, Mach-O, APK/DEX und WASM und legt einen strengen, evidenzbasierten Workflow fest: Vor jeder tiefergehenden Analyse **MUSS** die Importtabelle (`rabin2 -i` / `rabin2 -E`) überprüft und als Evidence (z. B. `E-imports`) dokumentiert werden. Die Skill enthält vorgefertigte Ressourcen wie ein Recon-Skript (`scripts/recon.ps1`) und eine Cheatsheet-Referenz (`references/cheatsheet.md`), um wiederkehrende Aufgaben zu standardisieren. Wichtig ist die sequenzielle Vorgehensweise: zuerst leichtes Recon, dann gezielte Interaktion (`r2`), Patch-Arbeiten (immer im Read-Only-Modus starten) und schließlich die Integration in die radare2-skills-Ökosphäre (r2xsql, r2mcp u. a.). Windows-spezifische Hinweise (PATH, Berechtigungen, Anführungszeichen) und ein On-Demand-Bootstrap-System runden die Anleitung ab.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/radare2

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht radare2?

Binäre Analysefähigkeit für die radare2-CLI. Der Schwerpunkt liegt auf der direkten Arbeit mit der Kommandozeile für Reconnaissance, Analyse, Lokalisierung, Export und leichte Modifikationen – ohne GUI.

ACTION REQUIRED (Sofort nach dem Lesen ausführen)

  1. NOW: Lese ../field-journal/precedent-reverse.md – bestätige, dass die Nutzung dieser Skill autorisierte Routine ist
  2. NOW: Prüfe, ob die aktuelle Aufgabe in den Geltungsbereich dieser Skill fällt
  3. NEXT: Lese ../tool-index.md, überprüfe die Verfügbarkeit der Werkzeuge und deren tatsächlichen Pfad
  4. NEXT: Bei fehlenden Werkzeugen rufe Bootstrap auf, rate keine Pfade
  5. ACT: Beginne mit Schritt 1 des Workflows und führe ihn aus, bleibe nicht im Bestätigungsstatus hängen

Geltungsbereich

Diese Skill sollte bevorzugt eingesetzt werden, wenn der Benutzer Folgendes beabsichtigt:

  • Analyse von exe-, dll-, so-, elf-, apk-, dex-, wasm-Dateien mit r2 / radare2
  • Fragen zur Verwendung von rabin2, rasm2, radiff2, rahash2, rax2
  • Disassemblierung, Funktionssuche, Stringsuche, Import-/Exportansicht, Kreuzverweise, Patching über die Kommandozeile
  • Schreiben von radare2-Batch-Befehlen, -c-Automatisierungsbefehlen oder r2pipe-Skripten

Wenn der Benutzer explizit GUI-Reverse-Engineering, Hex-Rays-artigen Pseudocode oder IDA-Workflows wünscht, sollte ida-reverse bevorzugt werden. Bei Web-JS-Reverse-Engineering ist reverse-engineering die erste Wahl.

Vorbereitende Umgebungsprüfung

Gehe nicht automatisch davon aus, dass r2 verfügbar ist. Prüfe zuerst:

r2 -v
rabin2 -v

Wenn nicht installiert, überprüfe die üblichen Installationspfade oder weise auf die Installation hin.

Übliche Windows-Ausführbare:

  • radare2.exe
  • rabin2.exe
  • rasm2.exe
  • radiff2.exe
  • rahash2.exe
  • rax2.exe
  • r2pm.exe

Integrierte Ressourcen

Diese Skill enthält zwei Ressourcen, die vorrangig verwendet werden sollten, anstatt jedes Mal ad hoc eine Reihe von Befehlen zusammenzustellen.

scripts/recon.ps1

Standard-Recon-Skript, ideal für eine erste Übersichtsanalyse. Es liefert:

  • Basisinformationen
  • Sektionen
  • Importe
  • Exporte
  • Strings
  • Optionale Zusammenfassung der r2 -A-Autoanalyse

Aufruf:

powershell -File "<skill-root>\radare2\scripts\recon.ps1" -TargetPath "C:\path\to\sample.exe"

Mit r2-Autoanalyse:

powershell -File "<skill-root>\radare2\scripts\recon.ps1" -TargetPath "C:\path\to\sample.exe" -RunAnalysis

references/cheatsheet.md

Wenn weitere Befehlsdetails, Vorlagen für häufige Szenarien oder eine schnelle Erinnerung an die Syntax benötigt werden, lies dieses Cheatsheet – rate nicht aus dem Gedächtnis.

Bekannte Phänomene

Gelegentliche .sdb-Fehlermeldungen unter Windows

Bei der Reconnaissance mit rabin2 für bestimmte PE-Dateien können folgende Warnungen auftreten:

ERROR: Cannot find ...\share\format\dll\*.sdb

Wenn die Hauptausgabe dennoch korrekt zurückgegeben wird, beeinträchtigt dies normalerweise die grundlegende Reconnaissance nicht. Fahre zunächst fort. Aufgrund solcher Nebenerscheinungen sollte die Analyse nicht sofort als fehlgeschlagen betrachtet werden.

Grundprinzipien

1. Erst Recon, dann tief graben

Starte nicht sofort eine vollumfängliche Autoanalyse. Prüfe zuerst mit leichten Befehlen Dateityp, Architektur, Einstiegspunkt, Strings und Importtabelle, bevor du aaa, aaaa oder eine gezielte Analyse durchführst.

2. Bevorzuge minimal ausreichende Befehle

radare2 bietet sehr viele Befehle – der Benutzer benötigt meist nur den kürzesten Weg:

  • Dateiinformationen: rabin2 -I
  • Strings anzeigen: rabin2 -z
  • Importe/Exporte anzeigen: rabin2 -i / rabin2 -E
  • Interaktive Analyse: r2 <datei> und dann lokale Befehle ausführen

3. Vorsicht vor Änderungen

Wenn der Benutzer einen Binärpatch durchführen möchte:

  • Standardmäßig zuerst im Nur-Lese-Modus öffnen: r2 <datei>
  • Nur wenn explizit eine Änderung erforderlich ist, den Schreibmodus verwenden: r2 -w <datei> oder in der Sitzung oo+
  • Vor der Änderung auf die Risiken hinweisen, um ein versehentliches Überschreiben der Originaldatei zu vermeiden

Übliche Workflows

Workflow 1: Schnelles Recon

Geeignet, wenn du gerade eine Binärdatei erhalten hast.

Harte Zutrittsschranke (MUST – ohne Erfüllung ist Workflow 2 und folgende nicht erlaubt)

Für Binärdateien mit Importtabellen (PE/ELF/Mach-O) MUSS vor der funktionsbezogenen Analyse oder dynamischen Schritten zuerst die Importtabelle überprüft und als Evidence dokumentiert werden:

  1. Führe rabin2 -i <sample> aus (oder den imports-Bereich der recon.ps1-Ausgabe); für DLL/SYS zwingend auch rabin2 -E ausführen und als E-exports notieren
  2. Schreibe das vollständige oder kategorisierte Ergebnis der Importtabelle als Evidence (empfohlene ID: E-imports oder E-triage-imports), mindestens:
    • Reproduktionsbefehl (repro_command)
    • Kategorisierte Zusammenfassung der wichtigsten Importe: Netzwerk / Datei / Kryptografie / Prozessinjektion / Registry / andere verdächtige APIs
    • Wenn die Importtabelle leer ist, die Analyse fehlschlägt oder das Werkzeug einen Fehler meldet: MUSS das Fehlverhalten und die ursprüngliche Ausgabe dennoch als Evidence dokumentiert werden – nicht stillschweigend überspringen
    • Bei einer „zu sauberen“ Importtabelle (nur Basis-DLLs): MUSS der Verdacht auf dynamisches Laden vermerkt werden, SOLLTE zur dynamischen API-Erfassung übergegangen werden
  3. .NET (ohne traditionelle IAT): MUSS über eine gleichwertige Verankerung (dnSpy/IL/Metadaten-Zusammenfassung) im selben Evidence-Slot dokumentiert werden – nicht leer durchgehen
  4. IAT-Reparatur bei gepackten Samples: x86 mit ImportREC (oder gleichwertig), x64 mit Scylla (oder gleichwertig). Bei fehlgeschlagener Reparatur MUSS E-iat-repair-fail dokumentiert und dann zu dynamischen API-Breakpoints übergegangen werden; verboten ist das endlose Verharren auf der statischen IAT (siehe reverse-engineering/references/re-agent-workflow.md §1.2)
  5. Wenn der Benutzer explizit eine „Wiederholung der Importtabellenprüfung / erneute Überprüfung der Importtabelle / Wiederholung der IAT“ anfordert: MUSS der benannte Schritt selbst wiederholt werden (bei Blockade zuerst die Machbarkeitsprüfung durchführen: Voraussetzungen erklären + um Bestätigung bitten; bei Erzwingung quality=unreadable setzen) – verboten, den Schritt durch einen nicht verwandten Schritt zu ersetzen und als erledigt auszugeben

Bis die Importtabelle (oder eine gleichwertige Verankerung / IAT-Fehlerumgehung) als Evidence dokumentiert ist: MUST NOT behaupten, die „Basis-Reconnaissance sei abgeschlossen“, MUST NOT in die tieferen Schlussfolgerungen von Workflow 2+ einsteigen.

Führe vorzugsweise direkt das integrierte Skript aus:

powershell -File "<skill-root>\radare2\scripts\recon.ps1" -TargetPath "sample.exe"

Wenn nur manuelle Minimalbefehle benötigt werden, verwende:

rabin2 -I sample.exe
rabin2 -z sample.exe
rabin2 -i sample.exe
rabin2 -E sample.exe

Schwerpunkte:

  • Dateiformat, Bitanzahl, Architektur, Plattform
  • Adresse des Einstiegspunkts
  • Verdächtige Strings: URL, Pfade, Fehlermeldungen, Registry, Kommandozeilenparameter
  • Importierte Funktionen: Netzwerk, Datei, Kryptografie, Prozessinjektion, Registry-Operationen (MUSS als Evidence dokumentiert werden, siehe harte Zutrittsschranke oben)

Workflow 2: Interaktive Funktionsanalyse

r2 sample.exe

Im interaktiven Modus häufig verwendet:

aaa          # Standard-Autoanalyse
afl          # Funktionen auflisten
iz           # Strings auflisten
iS           # Sektionen auflisten
is           # Symbole auflisten
s entry0     # Zum Einstiegspunkt springen
pdf          # Aktuelle Funktion disassemblieren
VV           # Visuellen Modus betreten (wenn Terminal geeignet)
q            # Beenden

Hinweise:

  • Standardmäßig aaa bevorzugen, nicht gleich mit dem schwereren aaaa beginnen
  • Wenn das Sample sehr groß oder die Analyse langsam ist, kann nur die Umgebung des Einstiegspunkts analysiert und dann manuell erweitert werden

Workflow 3: main / Kernlogik lokalisieren

afl~main
afl~sym.
iz~http
iz~error
axt <addr>

Vorgehensweise:

  • Zuerst von main, Einstiegspunkt und String-Referenzen ausgehen
  • Mit axt prüfen, wer auf einen String oder eine Adresse verweist
  • Nach dem Finden der Referenzstelle s <addr>, dann pdf

Workflow 4: Hexadezimal- und Speicheransicht

px 64        # 64 Bytes ab aktueller Adresse hexadezimal
pd 20        # 20 Instruktionen disassemblieren
psz          # String an aktueller Adresse lesen
pxa          # Benutzerfreundlichere Hexadezimalansicht

Workflow 5: Binärpatch

Nur verwenden, wenn der Benutzer explizit die Datei ändern möchte:

r2 -w sample.exe

Im interaktiven Modus z. B.:

s 0x401000
wa nop
wa jmp 0x401050
wq

Häufige Schreiboperationen:

  • wa <asm>: Assemblierung schreiben
  • wx <hex>: Rohbytes schreiben
  • wq: Schreiben und beenden

Es ist ratsam, vor der Änderung eine Sicherungskopie der Originaldatei zu erstellen. Wenn der Benutzer keine Sicherung erwähnt, weise mindestens einmal darauf hin.

Workflow 6: Nicht-interaktive Automatisierung

Geeignet für einmalige Ergebnisausgabe:

r2 -A -q -c "afl;iz;ii;q" sample.exe

Häufig verwendete Parameter:

  • -A: Autoanalyse beim Start
  • -q: Leiser Modus
  • -c: Befehlsstring ausführen

Bei vielen Befehlen sollten diese in einer leicht lesbaren Reihenfolge angeordnet werden, anstatt einen unübersichtlich langen String zu verwenden.

Es wird empfohlen, zunächst das integrierte Recon-Skript zu verwenden und dann zu entscheiden, ob benutzerdefinierte Befehle ergänzt werden sollen.

Häufig verwendete Unterwerkzeuge

rabin2

Geeignet für die Extraktion statischer Informationen:

rabin2 -I sample.exe   # Basisinformationen
rabin2 -S sample.exe   # Sektionen
rabin2 -s sample.exe   # Symbole
rabin2 -i sample.exe   # Importe
rabin2 -E sample.exe   # Exporte
rabin2 -z sample.exe   # Strings
rabin2 -zz sample.exe  # Detailliertere Strings

rasm2

Geeignet für schnelles Assemblieren/Disassemblieren:

rasm2 -d "9090"
rasm2 -a x86 -b 64 "xor eax, eax"

radiff2

Geeignet zum Vergleichen zweier Binärdateien:

radiff2 old.exe new.exe
radiff2 -C old.exe new.exe

rahash2

Geeignet zum Berechnen von Hashes:

rahash2 -a md5 sample.exe
rahash2 -a sha256 sample.exe

rax2

Geeignet für Zahlenbasis- und Kodierungsumrechnungen:

rax2 0x401000
rax2 4198400
rax2 -s hello

Empfohlene Analysereihenfolge

Bei unbekannten Samples in dieser Reihenfolge vorgehen:

  1. rabin2 -I: Format, Architektur, Einstiegspunkt prüfen
  2. rabin2 -z: Strings prüfen
  3. rabin2 -i: Importierte Funktionen prüfen – MUSS + Evidence (harte Zutrittsschranke, siehe Workflow 1)
  4. Falls interaktive Analyse erforderlich, dann in r2 einsteigen (nur wenn Evidence aus Schritt 3 dokumentiert wurde)
  5. Zuerst aaa, dann afl / iz / pdf
  6. Über String-Referenzen, Import-Aufrufe und Einstiegspunkt-Ablauf schrittweise die kritischen Funktionen lokalisieren

Der Vorteil dieser Reihenfolge ist geringes Rauschen und eine schnelle Orientierung. Schritt 3 ist keine optionale Optimierung, sondern eine harte Zutrittsschranke vor dem tieferen Einstieg.

Windows-Hinweise

  • Bei Pfaden mit Leerzeichen müssen die Befehle korrekt in Anführungszeichen gesetzt werden
  • Wenn r2 im aktuellen Terminal nicht gefunden wird, wurde möglicherweise gerade die PATH-Variable aktualisiert – ein neues Terminal öffnen und erneut versuchen
  • Einige Samples benötigen Administratorrechte zum Lesen, aber standardmäßig keine Rechteerweiterung anfordern, es sei denn, der Benutzer benötigt es explizit
  • Vor dem dynamischen Debuggen verdächtiger Samples zuerst die Absicht des Benutzers klären, um Fehlbedienungen zu vermeiden

Ausgabestil

Wenn der Benutzer nicht nur einen Befehl, sondern eine tatsächliche Dateianalyse wünscht:

  • Zuerst eine Zusammenfassung der Reconnaissance-Ergebnisse geben
  • Dann die wichtigsten Beweise auflisten: Strings, Importe, Funktionen, Adressen
  • Abschließend einen nächsten Schritt vorschlagen oder die tiefergehende Analyse fortsetzen

Nicht einfach Befehle auflisten, ohne zu erklären, warum sie ausgeführt werden.

Typische Anfragebeispiele

Beispiel 1: Analyse einer exe

Benutzer: „Sieh dir bitte an, was diese exe macht, radare2 reicht.“

Vorgehen:

  1. Zuerst rabin2 -I/-z/-i ausführen
  2. Prüfen, ob ein Einstieg in r2 erforderlich ist
  3. Mit aaa, afl, pdf den Einstiegspunkt und die Verweise auf kritische Strings tiefer analysieren

Beispiel 2: Finden, wo ein String aufgerufen wird

Benutzer: „In welcher Funktion wird dieser Fehlerstring ausgelöst?“

Vorgehen:

  1. Mit iz~Schlüsselwort die String-Adresse finden
  2. Mit axt <addr> die Verweise finden
  3. Zur Verweisstelle springen (s <addr>) und dann pdf ausführen

Beispiel 3: Sprung ändern

Benutzer: „Ändere dieses jne in je.“

Vorgehen:

  1. Zuerst die Zieladresse bestätigen
  2. Explizit mitteilen, dass in den Schreibmodus gewechselt wird
  3. wa je <target> verwenden oder direkt wx
  4. Nach der Änderung erneut disassemblieren, um zu überprüfen

Zu vermeidende Vorgehensweisen

  • radare2 nicht als Werkzeug betrachten, das nur einen Befehl (aaa) kennt
  • Die Datei des Benutzers nicht ohne Risikoaufklärung im Schreibmodus öffnen
  • Keine Schlussfolgerungen ziehen, bevor die grundlegende Reconnaissance durchgeführt wurde
  • Die Prüfung der Importtabelle nicht überspringen (rabin2 -i / recon imports): Ohne dokumentiertes Evidence darf kein nächster Schritt erfolgen; bei Aufforderung zur Wiederholung der Importtabelle ist es verboten, einen anderen Schritt durchzuführen
  • Nach fehlgeschlagener IAT-Reparatur nicht statisch verbohren: E-iat-repair-fail dokumentieren und dann zum dynamischen Ansatz übergehen; bei 64-Bit-Samples nicht nur ImportREC verwenden
  • Keine Web-JS-Reverse-Engineering-Aufgaben fälschlicherweise dieser Skill zuweisen; das fällt in den Bereich reverse-engineering

Referenzen

  • Befehls-Cheatsheet: references/cheatsheet.md
  • Standard-Recon-Skript: scripts/recon.ps1

radare2-skills-Ökosystem

Das radare2-skills-Projekt (radareorg/radare2-skills) bietet eine umfassendere Tool- und Workflow-Umgebung:

  • r2xsql: SQL-Abfragen der Importtabelle / Strings / Funktionen einer Binärdatei
  • r2mcp / r2http: MCP-Tool und HTTP-basierter zustandsbehafteter Befehlskanal
  • radius2: Symbolische Ausführung, symbolische dynamische Analyse
  • r2pm: Plugin-Verwaltung, Erweiterungen
  • Decompiler-Plugins: Plug-in-Mechanismus von radare2

Verwendungsstrategie:

  • Wenn der Benutzer r2xsql, r2mcp, r2http, radius2, r2pm, rabin2, rasm2, radiff2, rahash2, rax2 erwähnt, wird die Anfrage vorrangig an diese Skill (radare2/SKILL.md) weitergeleitet
  • Diese Werkzeuge sind nur Beschleuniger des Ökosystems und dürfen nicht umgehen: Autorisierungshürden, tool-index-Prüfung, Evidence-Import, Bestätigung des Schreibmodus
  • Gib minimale reproduzierbare Befehlsbeispiele:
    • r2xsql -s <file> -q "SELECT ..."
    • curl.exe -sS --data-binary 'aaa' http://127.0.0.1:9393/cmd
    • radius2 -p <binary> ...
    • r2pm -ci <plugin>

Diese Skill behält die harten Zutrittsschranken und die Integrität der Beweiskette bei – es ist nicht erlaubt, Autorisierungs- oder Evidence-Schritte zu überspringen.


Routing-Kontext

Eingang: skills/SKILL.md (Hauptsteuerung), routing.md Alternativen: ida-reverse/ (bei Bedarf an Dekompilierung/Pseudocode auf IDA hochstufen) Ausgänge:

  • Bei Bedarf an dynamischer Analyse → reverse-engineering/tools-dynamic.md (Frida/GDB)
  • Bei Bedarf an tiefergehender Dekompilierung → ida-reverse/
  • Wenn PAT interessante Strings findet und Kreuzverweise benötigt → ida-reverse/ (IDAs xref ist leistungsfähiger)

Schwestermodule auf gleicher Ebene: ida-reverse/ (komplementär: r2 schnelle Recon, IDA tiefe Dekompilierung)

On-Demand-Bootstrap

Das Einstiegsskript dieser Skill ist an das einheitliche Bootstrap-System angebunden. Wenn radare2 fehlt, wird nicht sofort ein Fehler gemeldet, sondern automatisch versucht, es zu installieren.

Automatisierungsfähigkeiten

WerkzeugAutomatisch installierbarInstallationsmethodeHinweis
r2✓GitHub Release ZIP (w64)Automatischer Download und Extraktion nach %USERPROFILE%\Tools\radare2\
rabin2✓Wie oben (im radare2-Release-Paket enthalten)–
rasm2✓Wie oben–
radiff2✓Wie oben–
rahash2✓Wie oben–
rax2✓Wie oben–

Bootstrap-Auslösepunkte

  • scripts/recon.ps1: Bei fehlendem rabin2 oder r2 wird automatisch bootstrap-reverse.ps1 aufgerufen

Bei Bootstrap-Fehlern

Wenn die automatische Installation fehlschlägt (Netzwerkfehler, GitHub-API-Rate-Limiting usw.), gibt das Skript einen klaren Fehler aus und fügt einen Link zur manuellen Installation bei.

Manuelle Installation: Lade radare2-*-w64.zip von https://github.com/radareorg/radare2/releases herunter, extrahiere es nach %USERPROFILE%\Tools\radare2\ und stelle sicher, dass das bin\-Verzeichnis im PATH ist.

Selbstprüfung vor Abschluss (MUST vor Behauptung „erledigt“)

  • Habe ich jeden Schritt des Workflows ausgeführt (nicht nur gelesen)?
  • Wurde die Importtabelle überprüft und als Evidence dokumentiert (E-imports / E-triage-imports oder .NET-Äquivalent)? Enthalten DLL/SYS E-exports?
  • Wurde ein fehlgeschlagener IAT-Reparaturversuch als E-iat-repair-fail dokumentiert und zum dynamischen Ansatz übergegangen? Führt eine Wiederholungsanforderung zum gleichen Schritt zurück?
  • Habe ich basierend auf tool-index die tatsächlichen Werkzeugpfade verwendet?
  • Habe ich reproduzierbare Beweise erzeugt (Befehl/Skript/Screenshot/Bericht)?
  • Habe ich die von RULES geforderten Checklistenpunkte abgeschlossen und zurückgeschrieben?

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

binary-ninja-reverse

Use for authorized binary analysis in Binary Ninja, including HLIL/MLIL/LLIL inspection, strings/imports/exports, cross-references, types, patch review, Python API automation, and optional Binary Ninja MCP or localhost HTTP integration.

browser-automation

|

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

edr-bypass-re

|

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

ghidra-reverse

Use for free/open reverse engineering with Ghidra (headless or GUI), including decompile, cross-refs, and optional Ghidra MCP workflows when IDA is unavailable.

Verwandte Skills