# FAT 固件分析工具包

> Attify 的固件安全研究工具包，第 2 版改写为以单个镜像项目为中心的 Rust 命令行工具。它可识别未知数据块和固件镜像、提取文件系统，梳理启动脚本、凭据字符串和密码学材料，借助基于 radare2 的反编译与源到汇的污点分析初筛 ELF 二进制，还能检查裸机 MCU 镜像、BMC 闪存、边缘 AI 模型文件和 Android APK。之后可对项目做运行前检查，并通过原生、FirmAE、Firmadyne 或 EMUX 后端进行 QEMU 仿真。

- 类型：工具
- 目标：二进制 · 固件
- 类别：固件工具
- 关联：基础工具
- 来源复核于：2026-10-19
- 收录于：2026-11-02
- 原始资源：<https://github.com/attify/firmware-analysis-toolkit>
- 一手来源：<https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/attify-firmware-analysis-toolkit/>
- 记录 JSON：<https://awesomerea.org/resources/attify-firmware-analysis-toolkit/record.json>
- 英文版：[English](https://awesomerea.org/resources/attify-firmware-analysis-toolkit/index.md)

## 使用条件与局限

- 审阅时最新版本为 v2.0.1，发布于 2026-09-26，提供 macOS（Apple Silicon 与 Intel）、Linux x86-64（需 glibc 2.35+）与 ARM64（需 glibc 2.39+）以及 Windows x86-64 压缩包，另有单独的运行时数据包。所审阅的 master 提交加入了尚未发布的 BMC 检查、原生 JFFS2 恢复、以哈希固定的 BMC 仿真配置，以及 Redfish 会话和进程调试。第 2 版是重写版本；FAT 1.x 的 setup.sh 和 fat.py 流程仅适用于旧版。
- 从源码构建需要 Rust 1.91+ 和 Python 3；安装脚本可安装系统软件包，并构建固定版本的 binwalk-ng 4.0.0 和 Sasquatch。Windows 版只支持原生分析命令，依赖 Linux 文件系统语义或 Unix 工具的流程需在 WSL 中运行。可选流程需要 radare2 与 r2ghidra、Ghidra、Joern、angr、QEMU、GDB、tmux 或 Docker；FirmAE、Firmadyne 和 EMUX 后端需另行配置，fat doctor 会报告缺少的组件。
- 待分析的固件镜像、已提取文件系统、二进制或 APK 由使用者自备。第三方声明称，源码树和发布包均不含固件镜像、内核或 U-Boot 二进制、专有模型文件或已提取的设备文件系统。BMC 仿真配置要求输入与指定 OpenBMC 或 ASUS BMC 镜像的 SHA-256 完全一致；README 提醒，仿真会执行不可信的厂商代码。
- docs/epistemics.md 将结果视为有边界的观察：启动意图不能证明可达性，边缘 AI 命中不能说明模型会实际执行，shell 污点分析有意不追求可靠性、只报告弱候选，仿真验证器也只证明它在该次运行中检查过的内容。测试夹具为合成数据，包括用 arm-none-eabi-gcc 从仓库内 C 源码构建的 Cortex-M 镜像；仓库还附带一个预构建的 MIPS PID-1 跳板程序及其汇编源码。DEVELOPMENT.md 说明了本地运行的 cargo 测试，GitHub 工作流则用于构建发布包并做冒烟测试。
- FAT 2.0 以 FSL-1.1-ALv2 源码可得方式发布，GitHub 将其识别为 NOASSERTION：除商业性的竞争用途外，允许使用、修改和再分发，且每个版本在 Attify 首次提供两年后也可按 Apache-2.0 使用。FAT 1.x 历史仍为 MIT，可选的 QEMU hook 插件源码采用 GPL-2.0-or-later，第三方依赖和外部资源保留各自条款。使用者需获得分析目标的授权。

## 一手来源

1. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/README.md>
2. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/INSTALL.md>
3. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/CHANGELOG.md>
4. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/docs/epistemics.md>
5. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/docs/bmc-emulation.md>
6. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/tests/fixtures/mcu/init-table/Makefile>
7. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/scripts/fat-init-trampoline-mipsel.S>
8. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/DEVELOPMENT.md>
9. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/LICENSE>
10. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/LICENSING.md>
11. <https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/THIRD_PARTY_NOTICES.md>
12. <https://github.com/attify/firmware-analysis-toolkit/releases/tag/v2.0.1>

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

- [FujiHack：Fujifilm 相机固件逆向研究项目](https://awesomerea.org/zh/resources/fujihack/index.md) · 工具
- [efiSeek UEFI 模块 Ghidra 分析器](https://awesomerea.org/zh/resources/efiseek/index.md) · 工具
- [FwAnalyzer 固件文件系统规则检查工具](https://awesomerea.org/zh/resources/fwanalyzer/index.md) · 工具
- [FwHunt 社区版 UEFI 固件规则扫描器](https://awesomerea.org/zh/resources/fwhunt-scan/index.md) · 工具
- [sniffROM 串行闪存被动嗅探重建工具](https://awesomerea.org/zh/resources/sniffrom/index.md) · 工具
- [Pawn Intel 平台 BIOS 固件提取工具](https://awesomerea.org/zh/resources/google-pawn/index.md) · 工具

## 关于此条目

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