0xdea/augur

GitHub: 0xdea/augur

一款基于 IDA Pro 9.x 的无头 Rust 插件,用于从二进制文件中自动提取字符串及其相关函数的伪代码,并按字符串组织输出。

Stars: 98 | Forks: 6

# augur [![](https://img.shields.io/github/stars/0xdea/augur.svg?style=flat&color=yellow)](https://github.com/0xdea/augur) [![](https://img.shields.io/crates/v/augur?style=flat&color=green)](https://crates.io/crates/augur) [![](https://img.shields.io/crates/d/augur?style=flat&color=red)](https://crates.io/crates/augur) [![](https://img.shields.io/badge/ida-9.3-violet)](https://hex-rays.com/ida-pro) [![](https://img.shields.io/badge/twitter-%400xdea-blue.svg)](https://twitter.com/0xdea) [![](https://img.shields.io/badge/mastodon-%40raptor-purple.svg)](https://infosec.exchange/@raptor) [![build](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/238d15dc33053249.svg)](https://github.com/0xdea/augur/actions/workflows/build.yml) [![doc](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/60e2a46e6d053251.svg)](https://github.com/0xdea/augur/actions/workflows/doc.yml) Augur 是一个极速的 IDA Pro 无头(headless)插件,用于从二进制文件中提取字符串及其相关的伪代码。 它将引用字符串的函数的伪代码存储在有组织的目录树中。 ![](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/157cea8165053252.png) ## 功能 * 得益于 IDA Pro 9.x 和 Binarly 的 idalib Rust 绑定,提供极速的无头用户体验。 * 支持 IDA Pro Hex-Rays 反编译器实现的任何架构的二进制目标。 * 反编译功能基于 [haruspex](https://github.com/0xdea/haruspex) 导出的 `decompile_to_file` API。 * 引用特定字符串的每个函数的伪代码都存储在单独的目录中。 ## 博客文章 * * ## 另见 * * * * ## 安装 获取最新版本最简单的方法是通过 [crates.io](https://crates.io/crates/augur): 1. 下载、安装并配置 IDA Pro(见 )。 2. 安装 LLVM/Clang(见 )。 3. 在 Linux/macOS 上,按如下方式安装: export IDADIR=/path/to/ida # 如果未设置,构建脚本将检查常见位置 cargo install augur 在 Windows 上,则使用以下命令: $env:LIBCLANG_PATH="\path\to\clang+llvm\bin" $env:PATH="\path\to\ida;$env:PATH" $env:IDADIR="\path\to\ida" # 如果未设置,构建脚本将检查常见位置 cargo install augur ## 编译 或者,你可以从 [源代码](https://github.com/0xdea/augur) 构建: 1. 下载、安装并配置 IDA Pro(见 )。 2. 安装 LLVM/Clang(见 )。 3. 在 Linux/macOS 上,按如下方式编译: git clone --depth 1 https://github.com/0xdea/augur cd augur export IDADIR=/path/to/ida # 如果未设置,构建脚本将检查常见位置 cargo build --release 在 Windows 上,则使用以下命令: git clone --depth 1 https://github.com/0xdea/augur cd augur $env:LIBCLANG_PATH="\path\to\clang+llvm\bin" $env:PATH="\path\to\ida;$env:PATH" $env:IDADIR="\path\to\ida" # 如果未设置,构建脚本将检查常见位置 cargo build --release ## 用法 1. 确保已使用有效许可证正确配置 IDA Pro。 2. 按如下方式运行: augur 3. 在 `binary_file.str` 目录中找到每个反编译函数的提取伪代码,按字符串组织: vim .str code .str ## 兼容性 * IDA Pro 9.0.241217 - 最新兼容版本:v0.2.3。 * IDA Pro 9.1.250226 - 最新兼容版本:v0.6.2。 * IDA Pro 9.2.250908 - 最新兼容版本:v0.7.5。 * IDA Pro 9.3.260213 - 最新兼容版本:当前版本。 ## 更新日志 * [CHANGELOG.md](CHANGELOG.md) ## 待办事项 * 与 [oneiromancer](https://github.com/0xdea/oneiromancer) 集成。 * 允许用户选择即使反编译器不可用也处理字符串交叉引用。 * 考虑将 `traverse_xrefs` 转换为迭代遍历,以避免潜在的栈溢出和无限循环。 * 考虑集成 [proptest](https://proptest-rs.github.io/proptest/intro.html) 以补充单元测试。 * 实现类似于 的功能。
标签:Hakrawler, Headless, Hex-Rays, idalib, IDA Pro, Rust, URL提取, 二进制分析, 云安全监控, 云安全运维, 云资产清单, 伪代码提取, 反编译, 可视化界面, 字符串提取, 恶意代码分析, 情报收集, 插件, 漏洞研究, 网络流量审计, 网络调试, 自动化, 逆向工程, 通知系统, 配置文件, 静态分析