Communitygithub.com

Go/Rust 二進制逆向工程

用於逆向工程已剝離符號的 Go 和 Rust 二進制檔案,包括運行時識別、pclntab/moduel 數據恢復、panic 字串以及慣用反編譯恢復。

Rust 二進制逆向工程 是什麼?

此技能專為逆向工程已剝離符號的 Go 和 Rust 二進制檔案而設計,這是惡意軟體分析與通用逆向工程中的常見挑戰。它提供了一個結構化工作流程,用於識別運行時特徵(例如 Go 的 buildid 和 pclntab,或 Rust 的 panic 字串),並使用 GoReSym 等專用工具恢復函數名稱與元數據。該技能強調語言特有的結構,例如 Go 的 interface、slice 和 string,以及 Rust 的泛型實例化和 tokio 狀態機,這些在通用反編譯器中常常難以處理。它結合了靜態分析(IDEA/Ghidra 搭配插件、radare2)與動態分析(Frida,注意 Go 調度器),並包含任務完成自檢清單,以確保關鍵函數和運行時證據已恢復。此技能適用於 Claude Code、Cursor 和 Codex 等 AI 代理平台,可與包含 precedent-reverse.md 和 go-reverse.md 的 field-journal 知識庫無縫整合。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/go-rust-reverse

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Go / Rust 二進制逆向工程

行動要求(讀完後立刻執行)

  1. NOW: 讀取 ../field-journal/precedent-reverse.md
  2. NOW: 確認樣本為 Go/Rust 編譯產物(file/字串/運行時特徵)
  3. NEXT: GoReSym / 相關插件是否可用
  4. ACT: 運行時識別 → 符號/元數據恢復 → 業務邏輯

適用場景

  • 剝離符號的 Go 惡意軟體/工具
  • Rust 發行二進制、panic 字串驅動分析
  • 與通用 ida/ghidra 互補的語言專用方法

工作流

Go

□ 識別 go.buildid、runtime 符號殘留、pclntab
□ GoReSym / redress / IDA Go 插件恢復函數名
□ 注意 interface、slice、string 結構在反編譯中的形態
□ 網路/加密庫路徑:crypto/* net/http

Rust

□ panic 字串、rust_begin_unwind、crate 路徑暗示
□ 泛型實例化導致的代碼膨脹;先定位字串 xref
□ 異步/tokio 狀態機需結合交叉引用

動態

□ 仍可用 Frida;注意 Go 棧與調度
□ 優先日誌與配置字串驅動斷點

工具鏈

工具用途
GoReSymGo 元數據
IDA/Ghidra + Go/Rust 插件反編譯
radare2快速字串
strings / rabin2分診

參考

  • references/go-rust-notes.md
  • ../reverse-engineering/go-reverse.md ../ida-reverse/ ../ghidra-reverse/
  • seed: field-journal/seed-002_go-malware-stripped.md

路由上下文

上游: MASTER R33
下游: 惡意樣本流程 malware-analysis;通用 RE reverse-engineering

任務完成自檢

  • 是否恢復關鍵函數名或等價映射?
  • 是否標註語言運行時證據?
  • Checklist?

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.

相關技能