# rbasefind 固件基址搜索工具

> 一个多线程 Rust 命令行工具，以暴力搜索推算平面 32 位固件镜像的加载基址，是 mncoppola 的 basefind.py 和 rsaxvc 的 basefind.cpp 的重新实现。它记录 ASCII 字符串的偏移，把每个 32 位字都当作可能的指针，再按候选基址能让多少字符串成为指针目标来排序。README 称这只是一个简单的启发式方法，对部分 ARM（非 Thumb）二进制效果相当好，但不会创造奇迹。

- 类型：工具
- 目标：固件
- 类别：固件工具
- 关联：基础工具
- 来源复核于：2026-10-27
- 收录于：2026-11-03
- 原始资源：<https://github.com/sgayou/rbasefind>
- 一手来源：<https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/rbasefind/>
- 记录 JSON：<https://awesomerea.org/resources/rbasefind/record.json>
- 英文版：[English](https://awesomerea.org/resources/rbasefind/index.md)

## 使用条件与局限

- 审阅时最新标签为 v0.1.3，位于所审阅的 master 分支 2020-09-27 提交上；GitHub 上没有发布二进制，crates.io 上也没有对应软件包。需用 Cargo 从源码构建；Cargo.toml 未声明 edition，Cargo.lock 被忽略，因此 clap 2.33、regex 1.3 等依赖会在构建时按版本范围解析。README 的待办事项列出一种自动模式：根据最大交集判断字节序，并在最佳匹配附近自动缩小步长。
- 输入是使用者提供的平面 32 位镜像，默认按小端解释，-b 选项改为大端；仓库不含任何固件或样例。默认情况下，它提取至少 10 个字符、以 NUL 结尾的可打印 ASCII 字符串，从文件开头按 4 字节对齐读取每个字作为指针，并以 0x1000 字节为步长在整个 32 位地址空间测试候选基址，按 CPU 核心数分配线程划分搜索范围。整个文件会被读入内存。
- 结果是带匹配数的候选基址排序列表（默认 10 个），需要分析人员确认。README 示例中，在 8 线程下处理一个镜像约用 41 秒，并展示把最小字符串长度提高到 100 可大幅缩短耗时，但会牺牲一定准确性。单元测试只覆盖线程间的地址范围划分，没有 CI。
- 采用 MIT 许可证（2017 年，Scott Gayou）。被分析的固件适用其自身条款。

## 一手来源

1. <https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/README.md>
2. <https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/src/lib.rs>
3. <https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/src/main.rs>
4. <https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/Cargo.toml>
5. <https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/.gitignore>
6. <https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/LICENSE>
7. <https://github.com/sgayou/rbasefind/releases/tag/v0.1.3>

## 同分区更多条目：固件与硬件

- [Aptio V UEFI 设置编辑器](https://awesomerea.org/zh/resources/aptio-v-uefi-editor/index.md) · 工具
- [FirmLoader 微控制器固件内存布局 IDA 插件](https://awesomerea.org/zh/resources/firmloader/index.md) · 工具
- [IFDA IoT 固件深度分析工具](https://awesomerea.org/zh/resources/ifda-iot-firmware-deep-analysis/index.md) · 工具
- [basefind2 快速固件基址扫描器](https://awesomerea.org/zh/resources/basefind2/index.md) · 工具
- [JTAGulator 片上调试接口识别工具](https://awesomerea.org/zh/resources/jtagulator/index.md) · 工具
- [BIOSUtilities 厂商 BIOS/UEFI 更新包提取工具集](https://awesomerea.org/zh/resources/biosutilities/index.md) · 工具

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
