工具

UEFI Firmware Parser 固件结构解析工具

Python 库及 uefi-firmware-parser 命令行工具,用于识别、解析和提取 PC 固件镜像:UEFI 固件卷、胶囊(capsule)、固件文件系统、文件与节(section),以及 Intel PCH Flash Descriptor、Intel ME 模块和 Dell PFS 更新包。AutoParser 可自动判断格式,暴力扫描模式则在未识别的数据块中查找固件卷及其他已知对象;结果可打印为对象层级或导出为文件,Tiano/EFI 与 LZMA 压缩的节由内置 C 扩展解压。附带的脚本可按 GUID 替换固件卷中的节或文件,根据解析出的固件卷生成 FDF 闪存描述文件,并输出供 IDA 脚本使用的 GUID 标签。

使用条件与局限

  • 审阅时最新版本为 v1.16,于 2026-06-04 在 GitHub 和 PyPI 发布,提供适用于 Linux、Windows 和 macOS 的 abi3 wheel。所审阅的 master 提交日期为 2026-10-12,领先该版本三个提交:新增 AMI 胶囊支持和用于导出文件路径的安全路径工具,并移除了 future 依赖,这些改动尚未发布。
  • 需要 Python 3.10+。从源码安装时会编译内置的 efi_compressor C 扩展,README 称这需要 Python 开发头文件和 gcc;该软件包未声明其他运行时依赖。CI 在 Ubuntu 上用 Python 3.12 运行单元测试。
  • 输入为使用者自备的固件文件,例如厂商 BIOS/UEFI 更新包或闪存转储。README 提醒,并非每个厂商更新包都能解析,有些需要先从更新机制(通常是 PE 可执行文件)中解压或解包;--test 会报告识别出的类型,-b 在数据块中搜索固件卷头,--superbrute 则逐字节检查任何已知对象。README 列出 ASRock、Dell、Gigabyte、Intel、Lenovo、HP、MSI、VMware、Apple 和 Qualcomm 的更新包为已测试来源,但没有按版本给出结果。
  • fv_injector.py 的 GUID 注入只能替换已有的节或文件,不能增删;向固件文件注入时会交互式询问要替换哪个节。它负责解析容器结构并提取内容,分析提取出的模块仍需另用反汇编器或反编译器。CI 还会解析一个另行托管的样本仓库,本合集未审阅该仓库。
  • LICENSE 文件为 MIT 式授权文本,并提示贡献代码另附内联许可证;而 setup.py 和 PyPI 元数据声明的是 BSD-3-Clause。内置的 Intel Tiano 压缩源码采用 BSD-2-Clause-Patent,LZMA SDK 文件属于公有领域。本次未安装,也未解析任何固件。

关于此条目

类型
工具
类别
固件工具
关联
基础工具
目标
固件

来源复核于

说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。

报告条目过时 建议修正翻译

一手来源

  1. README.rst GitHub · theopolis/uefi-firmware-parser · 修订 c4b8c64
  2. setup.py GitHub · theopolis/uefi-firmware-parser · 修订 c4b8c64
  3. uefi_firmware/__init__.py GitHub · theopolis/uefi-firmware-parser · 修订 c4b8c64
  4. bin/uefi-firmware-parser GitHub · theopolis/uefi-firmware-parser · 修订 c4b8c64
  5. scripts/fv_injector.py GitHub · theopolis/uefi-firmware-parser · 修订 c4b8c64
  6. .github/workflows/ci.yml GitHub · theopolis/uefi-firmware-parser · 修订 c4b8c64
  7. LICENSE GitHub · theopolis/uefi-firmware-parser · 修订 c4b8c64
  8. uefi_firmware/compression/Tiano/Decompress.c GitHub · theopolis/uefi-firmware-parser · 修订 c4b8c64
  9. https://github.com/theopolis/uefi-firmware-parser/releases/tag/v1.16
  10. https://pypi.org/project/uefi_firmware/1.16/

同分区更多条目:固件与硬件

固件与硬件分区全部 30 项资源