跳到主要内容
知仓学习社ZHICANG

go-rust-reverse

Reverse engineer stripped Go and Rust binaries: runtime recognition, pclntab/module metadata recovery, panic-string analysis, and idiomatic decompil…

不碰外部(只输出文字)无严重或高危命中sickn33/agentic-awesome-skills

它会碰到什么

扫了多少2 个文本文件,2 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

Go / Rust Binary Reverse Engineering

When to Use

  • Analyzing a stripped Go or Rust binary where symbols are absent.
  • Recovering function boundaries and names from language-specific metadata.

适用场景

  • 剥离符号的 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 栈与调度
□ 优先日志与配置字符串驱动断点

工具链

| 工具 | 用途 |

|------|------|

| GoReSym | Go 元数据 |

| 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?

Limitations

  • New compiler versions change metadata layouts; tooling must be kept current.
  • Aggressive inlining still yields large, hard-to-read decompilation.

> Adapted from zhaoxuya520/reverse-skill (MIT).

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。

同名技能的其他版本

有 3 个不同仓库或目录里都有叫 go-rust-reverse 的技能。它们内容并不相同,别混用: