re-fp-runtime
Installation
SKILL.md
函数式运行时逆向(Haskell / OCaml)
何时使用 / 何时不用
- 用:Haskell/OCaml 产物(GHC RTS 符号、OCaml block 头特征),需要还原闭包/堆对象、求值顺序、模式匹配分支
- 用:OCaml 原生/字节码产物判别与字节码分析(ocamlrun 脚本头特征)
- 不用:命令式语言产物(各归各技能:C++ → [[re-cpp-abi]]、Go → [[re-go]]、Rust → [[re-rust]])
- 不用:只需函数逻辑且控制流完整(函数式产物控制流打散,直接反编译收益低,见步骤 4)
工具准备
readelf / llvm-nm(符号分析)
- 安装与验证见 [[re-cpp-abi]] 工具准备
ghc 工具链(Haskell 侧,可选)
- Linux/macOS: GHC 安装包(
apt install ghc/brew install ghc/ ghcup);Windows: ghcup(winget install ghcup或官网安装器);验证:ghc --version - 用途: 同版本编译对照产物,验证 closure/info table 形态(GHC 版本差异大)