BIOS 编辑和修改的需求;编辑和修改 BIOS 的工具。以下是几款常见的同类工具BIOS‑UEFI 修改工具栈 现代平台约束:Intel Boot‑Guard、AMD‑PSB/PSP、Pluton、SPI Flash Descriptor 锁、OEM 固件签名、Capsule 签名校验
AwardBIOSEditor (AWDBEdit) 完整演进史
项目原名 Award BIOS Editor,简称 AWDBEdit;原生作者 bpoint,2004‑04‑11 发布 1.0 正式版,GPL 开源托管 SourceForgeGitHub。官方主线到此停止,不再有官方新版本;后续全部为社区 Fork 修改版,无官方 2.x、3.x 版本。
一、工具链时代演进总时间轴(DOS 工具链 → AWDBEdit → 项目停滞 → 社区 Fork)
| 时期 | 代表工具 | 环境 | 核心局限 |
|---|---|---|---|
| 1996‑2000 | MODBIN、MODBIN6、CBROM | 纯 DOS 实模式 | 无 GUI;操作繁琐;依赖外部 LHA 解压;容易破坏 BootBlock;校验手动处理 |
| 2001‑2003 | AWDBEdit RC‑预发布版 | Win32(Windows98/2000/XP) | 闭源;功能不全,Setup‑Table 解析 bug 较多,仅小范围流传 |
| 2004‑04‑11 | AWDBEdit‑1.0 正式版发布 | Win32 MFC 程序;转为 GPL 开源 | 里程碑版本;内置 LH5‑LHA 编解码;图形解析 Setup‑Table;自动双校验修复;保护 BootBlock 只读;支持 Award 4.5xPG /6.00PG |
| 2005‑2015 | 官方项目停滞,源码不再维护 | — | Award 公司被 Phoenix 收购;Phoenix‑Award 新固件格式改变,原生 AWDBEdit 无法识别;原作者停止开发,SourceForge 项目归档只读 |
| 2018‑至今 | Github/Codeberg 社区 Fork 二次修改版 | WinXP‑Win11(XP‑SP3 兼容模式) | 爱好者修复部分 Bug,微调解析逻辑,不支持 Phoenix‑Award、UEFI |
二、版本迭代细节
1)预发布阶段(RC 版本,闭源,2002‑2003)
- 闭源 MFC 原型,仅小圈子传播;
- 已经实现 LH5 模块扫描、模块提取替换;
- Setup‑Table 解析不稳定,大量 4.51PG BIOS 解析异常;校验计算存在错误,修改固件后经常刷写失败;
- 依赖部分外部辅助工具,没有完整内置 LHA 引擎。
2)AWDBEdit‑1.0(2004‑04‑11,正式开源版,基准版本)
- 由闭源切换 GPL 开源,全部 C++ MFC 源码放出;SourceForge 托管 CVS 版本库;
- 完整内置 LH5 (LHA‑lh5) 压缩解压引擎,彻底摆脱外部 CBROM/LHA.EXE 依赖;
- Setup‑Table 解析器重构,可图形浏览、修改 BIOS Setup 菜单字符串、默认选项;
- BootBlock 设置只读保护,禁止 GUI 编辑 BootBlock 区域;
- 双校验和自动计算:主 BIOS 校验 + BootBlock 校验,保存时自动回填,解决 DOS 工具容易校验失效问题;
- 模块树视图:完整枚举全部 LH5 模块(original.tmp、epa、option‑rom、语言包),支持替换、提取、Hex 编辑;
- 支持 Award Modular BIOS v4.5xPG、v6.00PG;
限制:不识别后期 Phoenix‑Award 融合格式 BIOS,完全不支持 UEFI。
此版本是后世所有 fork 的基准源码。
3)官方:此后无 1.1/1.2 官方版本
原作者个人原因停止迭代,SourceForge 项目归档。Award 公司被 Phoenix 收购,BIOS 固件架构发生变化,工具开发失去现实驱动力。
4)社区 Fork 衍生版本(非官方,爱好者维护)
- consp/awdbedit(Github)1.0.1 预发布版GitHub
- 修复部分 4.50PG 固件模块定位偏移 bug;
- 修复部分固件 LH5 头部扫描漏模块;
- 二进制包提供两份:original 原版、修改增强版;
- 没有新增重大功能,仅 Bug 修复,仍然不支持 Phoenix‑Award。
- Codeberg 镜像仓库 KOLANICH‑mirrors/awdbedit
源码镜像,无编译发布,仅用于归档源码,无新功能开发。
⚠️网络流传的所谓 AWDBEdit‑1.1、2.0 全部为网友改名打包,不存在官方新版本。
三、底层架构演进对比(DOS 工具链 vs AWDBEdit‑1.0)
DOS 时代(CBROM+MODBIN6)
外部程序链:
CBROM → 调用外部LHA.EXE解压模块 → MODBIN6修改original.tmp → LHA重新压缩 → 手动修复校验和
风险点:外部工具版本不兼容,压缩块大小对齐错误;没有BootBlock保护,容易误写;校验经常遗忘。
AWDBEdit‑1.0 架构演进带来的变化
- 全部 LH5 编解码移入程序内部,消除外部工具依赖;
- 内存式工作流:固件读入内存 → 内存解压全部模块;修改在内存缓冲区;保存时重新压缩回填镜像;磁盘仅输出最终 bin,减少中间文件出错;
- 内置 Setup‑Table 二进制解析器,不用跳转到 DOS MODBIN;
- BootBlock 只读隔离;双校验自动重算;
- MFC GUI,Windows 直接操作,不再必须切换 DOS 环境。
四、工具链的消亡原因
- 商业层面:Award Software 被 Phoenix 收购,后续主板固件改为 Phoenix‑Award 混合格式,模块封装规则改动,原有 LH5 归档模型不再适用,AWDBEdit 解析直接失效;
- 技术层面:PC 行业转向 UEFI BIOS;传统 Award Modular BIOS 退出消费级主板市场;
- 社区层面:原作者放弃维护;爱好者仅做小 bug 修复,无力完成对 Phoenix‑Award、UEFI 完整解析重构。
五、现存现实局限(即使是最新社区 fork)
- 仅支持原版 Award Modular BIOS v4.5x /v6.00PG;
- Phoenix‑Award(2005 年后主板)完全不支持;UEFI 完全不支持;
- MFC 老程序,Win10/11 必须设置兼容模式 Windows XP SP3,否则解压异常、GUI 崩溃;
- 没有处理部分厂商 OEM 自定义补丁模块,部分修改后模块压缩尺寸溢出问题仍要人工干预。
六、演进链路总简图
MODBIN+CBROM(DOS实模式工具链)
↓ 缺陷:DOS环境、外部LHA依赖、校验手动、无BootBlock保护
AWDBEdit RC(闭源原型 2002‑2003)
↓
AWDBEdit‑1.0(2004‑04‑11,GPL开源,里程碑正式版)【基准】
↓ 原作者停止维护,SourceForge归档
├─> consp fork‑1.0.1:Bug修复,无新大功能
└─> Codeberg源码镜像归档
↓
现代场景:仅用于老工控、老主板Award‑4.5/6.00PG固件修改;Phoenix‑Award/UEFI改用 UEFITool
AwardBIOSEditor(AWDBEdit)完整解构
AWDBEdit,开源 Win32 工具 (C/C++ 开发),专门解析Award Modular BIOS v4.5x / v6.00PG固件镜像(.bin/.rom),替代 DOS 下MODBIN、CBROM,在 Windows 图形界面完成模块解析、解压‑修改‑重打包、校验和修复。⚠️仅支持传统 Award BIOS;不支持 UEFI、Phoenix‑Award 后期版本。
一、底层原理:Award BIOS 固件物理结构
- BootBlock(启动块)
位于固件头部,永不压缩;上电最先执行,完成基础芯片组初始化、固件校验、BIOS 损坏软盘恢复。AWDBEdit 只读,禁止修改 BootBlock,改坏直接变砖。
- LH5 (LHA) 压缩模块归档区
固件主体,多个带
‑lh5‑标记头的 LHA 压缩模块拼接而成:模块 说明 original.tmpSystem BIOS 主模块(128KB);POST 代码、BIOS Setup 菜单、CMOS 配置表、中断服务,绝大多数修改都针对该模块 awardext.rom扩展模块,硬件检测、OEM 信息、POST 屏幕文字 _en_code.binSetup 英文字符串资源 epa*.binEPA 开机 Logo 图形模块 Option ROM 网卡 / 显卡 / RAID 卡扩展 ROM ACPI、DMI 模块 电源管理、SMBIOS 数据表
核心原理:AWDBEdit 识别固件内全部‑lh5‑压缩头 → 将每个模块内存解压 → 提供编辑;修改完成后重新 LHA‑LH5 压缩回填固件镜像,重新计算 2 种 BIOS 校验和(主固件校验、BootBlock 校验),输出可烧写 bin 文件。
二、程序内部模块分层(AWDBEdit 自身软件架构)
GUI层(MFC Win32窗口)
↓
固件解析核心引擎(AwardImage.dll内置逻辑,单exe无分离dll)
├─固件格式识别器:识别Award4.5x /6.00PG,定位BootBlock边界,扫描全部‑lh5‑模块头
├─LH5(LHA)解压/压缩引擎:内置移植版LHA‑LH5算法,**不需要外部lha.exe**(区别CBROM)
├─模块管理器:内存维护解压后的全部模块副本(original.tmp等)
├─Setup‑Table解析器:解析original.tmp内部的CMOS Setup选项二进制表,GUI展示BIOS设置项
├─校验和计算器:①主BIOS8bit累加校验;②BootBlock区块校验(修改固件必须重算,否则主板拒绝运行)
├─二进制Hex编辑器组件:内置十六进制视图,直接编辑解压模块内存
↓
IO层:读入*.bin/*.rom镜像;输出修改后固件镜像到磁盘
三、依赖文件清单
1)程序本体(awdbedit‑1.0_bin.zip)
AWDBEdit.exe:主可执行文件,全部逻辑内置,不依赖外部 CBROM/MODBIN,内置 LH5 编解码、校验计算、SetupTable 解析。- 无配套 dll;依赖系统 Win32 MFC 库(老 Windows 自带;Win10/11 运行需要兼容模式 WinXP‑SP3)。
2)运行时临时文件(程序运行时动态生成)
*.tmp:解压出来的original.tmp等完整模块;修改就是操作该临时二进制文件。
关闭工程不保存,临时文件直接丢弃;保存时,将修改后的 tmp 模块重新 LH5 压缩回填进固件镜像,再修复校验和。
3)外部配套工具(AWDBEdit 本身不调用,但完整修改流程必须)
| 工具 | 用途 |
|---|---|
| AWDFLASH.EXE(DOS) | 把 AWDBEdit 输出修改后的.bin刷写进主板 SPI Flash 芯片;AWDBEdit 本身不能刷写固件,只编辑镜像文件 |
| CBROM.EXE | 交叉验证;提取 EPA Logo、OptionROM 模块 |
| MODBIN6 | 对比参考,解析 Setup 表;AWDBEdit 已经实现同类功能 |
⚠️AWDBEdit不依赖外部 LHA.EXE,LH5 压缩解压全部内置;CBROM/MODBIN 属于辅助验证工具,非强制依赖。
四、完整逻辑链路(打开 BIOS→修改→保存输出时序)
1. File‑Open 加载xxx.bin固件镜像
└─AWDBEdit读入完整固件二进制到内存
├─识别BootBlock边界,校验BootBlock签名
├─内存扫描全部`‑lh5‑`标记,枚举所有压缩模块
└─内存解压每一个LH5模块,在内存构建模块树视图(GUI左侧树)
└‑把original.tmp、_en_code.bin、epa模块全部解压至内存;同时输出临时*.tmp到磁盘
2. 用户编辑(两类编辑路径)
路径A:GUI Setup‑Table编辑器
解析解压后的original.tmp内部二进制Setup表 → 图形展示BIOS Setup菜单;修改选项文字、默认值、掩码;修改写回内存内original.tmp缓冲区。
路径B:Hex十六进制编辑 / Replace File替换模块
①直接对解压模块内存做字节修改;
②或者Action‑>Replace File:使用外部修改好的tmp文件替换内存中的模块(经典注入修改手法)。
3. File‑Save保存修改,生成修改后的BIOS镜像
├─遍历所有被修改过的模块,调用内置LH5压缩引擎重新压缩模块数据
├─将压缩后模块回填固件镜像对应的偏移位置;**BootBlock保持原样不改动**
├─【关键】计算并写入两处校验和
·主BIOS镜像累加校验和
·BootBlock区块校验(BootBlock会在校验失败触发软盘恢复)
└─输出新的xxx_mod.bin磁盘文件
4. 后续外部环节:AWDFLASH在DOS下将xxx_mod.bin烧写主板FlashROM芯片
五、典型使用场景
- 修改 BIOS Setup 显示字符串,解锁 Setup 隐藏选项;
- 替换 EPA 开机 Logo 模块;
- 修改
original.tmp,注入补丁,修改硬件初始化参数; - 替换 Option‑ROM 模块(网卡 / RAID ROM);
- 提取 ACPI、DMI 二进制模块用于逆向分析。
六、关键坑点(底层风险)
- BootBlock 禁止修改:AWDBEdit 不允许编辑 BootBlock,一旦手动 Hex 篡改 BootBlock 校验,主板上电直接进入 BIOS 灾难恢复,必须软盘救援。
- LH5 压缩块大小对齐:替换模块后,压缩后尺寸不能超过固件原始模块预留空间;溢出会破坏后面其他模块。
- 校验和必须重算:很多人修改 bin 后直接保存忘记校验,刷入主板直接拒绝启动,AWDBEdit 保存时自动重算;第三方 Hex 编辑 bin 后必须手动补校验。
- Win10/11 兼容性:AWDBEdit 是老 MFC 程序,必须设置兼容模式 Windows XP SP3,否则模块解压异常、GUI 崩溃。
- 版本限制:不能处理 Phoenix‑Award 晚期固件,不能处理任何 UEFI BIOS。
七、对比传统 DOS 工具
| 项目 | AWDBEdit(AwardBIOSEditor) | CBROM+MODBIN6 (DOS 工具链) |
|---|---|---|
| 运行环境 | Win32 图形界面 | 纯 DOS 实模式 |
| LH5 编解码 | 内置,不依赖外部程序 | 依赖 DOS 下 LHA 引擎 |
| SetupTable 解析 | 图形可视化编辑 Setup 菜单 | MODBIN6 实现,操作繁琐 |
| 校验和修复 | 自动双校验修复 | 需要手动工具修复 |
| BootBlock 处理 | 只读保护 | 无保护,容易误改 |
- original.tmp 内部 Setup‑Table 二进制数据结构解析;
- LH5 (-lh5‑) 模块头部二进制字段拆解样例;
- AWDBEdit 配合代码注入的实操流程。
AwardBIOSEditor 是一种用于编辑和修改基于 Award BIOS(Basic Input/Output System)的工具。BIOS 是计算机主板上的一个固件,它在计算机启动过程中扮演关键角色,负责硬件初始化以及操作系统启动前的准备工作。
特点与功能:
- BIOS 修改: AwardBIOSEditor 允许用户查看和修改 BIOS 设置,包括启动顺序、硬件配置、系统时钟等。
- 高级设置: 通过这个工具,用户可以访问一些通常在标准 BIOS 设置界面中不可见的高级选项。这使得高级用户能够进行更深入的系统调整和优化。
- 微代码更新: 用户可以使用该工具更新处理器的微代码,从而提升系统兼容性和性能。
- 模块添加或删除: AwardBIOSEditor 允许添加或删除 BIOS 模块,例如自定义启动画面或特定硬件支持模块。
- 用户界面: 通常提供一个图形化用户界面,使得 BIOS 编辑变得更加直观和用户友好。
优点:
- 灵活性: 提供高度的灵活性,使用户能够根据特定需求对 BIOS 进行深度定制。
- 性能优化: 高级用户可以通过调整 BIOS 设置来优化系统性能。
- 兼容性提升: 更新微代码和驱动程序可以提高系统的兼容性和稳定性。
缺点:
- 风险高: BIOS 修改存在一定风险,错误的设置或操作可能导致系统无法启动或硬件损坏。
- 技术要求高: 需要用户具备相当的技术知识和经验,不适合非专业用户。
为什么使用:
- 系统优化: 高级用户和爱好者希望通过 BIOS 调整来最大化系统性能或者启用某些隐藏功能。
- 兼容性需求: 某些情况下,特定硬件需要通过 BIOS 调整才能正常工作。
- 定制需求: 某些企业或个人用户可能有特定的 BIOS 定制需求,比如修改启动画面或嵌入特定固件功能。
AwardBIOSEditor 是一款强大的 BIOS 编辑工具,但其使用需要谨慎和专业知识,以避免潜在的风险和问题。
BIOS/UEFI 修改工具全景对比
覆盖:AWDBEdit (AwardBIOSEditor)、AMIBCP、Phoenix BIOS Editor、UEFITool、MMTool、H2OUVE‑H2OInsider、Flashrom、BIOS‑Patcher。区分:传统 Legacy BIOS 工具、UEFI 厂商私有工具、开源通用解析工具、硬件烧写工具、二进制补丁工具GitHub。
总览对比简表
| 工具 | 目标固件类型 | 闭源 / 开源 | 核心定位 | 主要能力 | 关键限制 |
|---|---|---|---|---|---|
| AwardBIOSEditor(AWDBEdit) | Award Modular BIOS v4.5x /6.00PG(Legacy) | GPL 开源 | Award 固件解析编辑器 | LH5 模块解压替换;图形编辑 Setup 表;自动双校验修复;BootBlock 只读保护 | 不支持 Phoenix‑Award、UEFI;MFC 老程序,Win10/11 需要 XP‑SP3 兼容模式GitHub |
| AMIBCP | AMI Legacy BIOS / Aptio‑4 UEFI | 闭源商业工具(AMI 原厂) | AMI 固件配置编辑器 | 图形修改 Setup 菜单、默认选项、隐藏选项;修改 Setup‑IFR;输出修改固件 | 不支持 Aptio‑V 新版本;民间流通为泄漏版本;不做 FFS 模块替换,不处理微码注入 |
| Phoenix BIOS Editor | Phoenix Legacy BIOS(SCT) | 闭源商业 | Phoenix 传统 BIOS 编辑器 | 解析 Phoenix 压缩模块;编辑 Setup 字符串、Logo、OptionROM | 仅老 Legacy Phoenix;不支持 Phoenix‑Award 混合固件、UEFI |
| MMTool | AMI Aptio‑4 / Aptio‑V UEFI | 闭源原厂工具 (AMI) | AMI‑UEFI 模块操作工具 | FFS 模块提取 / 插入 / 替换;更新 CPU 微码、GOP、OptionROM;模块删除 | 只识别 AMI Aptio 系列;Insyde/Phoenix UEFI 完全无法打开;无 Setup 配置编辑能力;泄漏版存在保存 bug |
| UEFITool | 通用 UEFI(AMI Aptio、InsydeH2O、Phoenix、Coreboot) | 开源 Qt 跨平台 | UEFI FV/FFS 通用解析器 | 遍历 FirmwareVolume、FFS‑File、Section;提取、替换、导出模块;查看 IFR;查看固件树;搭配 IFRExtract 解析 Setup 文本 | 不自动修复校验、签名;不做图形化 Setup 配置;不能直接保存修改后部分加密 OEM 固件;仅解析,不烧写芯片GitHub |
| H2OUVE + H2OInsider | Insyde H2O UEFI(绝大多数笔记本) | 闭源系微原厂工具 | Insyde 私有固件编辑器 | 解析 Insyde 封装容器;修改 Setup 变量、替换模块;处理 H2O 压缩块;Insyde 专属补丁逻辑 | 仅 InsydeH2O;几乎没有公开正版,极少流出;OEM 经常做固件加密;民间修改难度极高GitHub |
| Flashrom | SPI Flash 芯片读写,不限制固件类型 | 开源跨平台 (Linux 为主) | 硬件读写烧录工具 | 读取 SPI Flash、写入固件镜像、校验;支持 CH341A/FT2232H 编程器;支持板载主板 SPI;备份原始固件 | 本身不编辑固件镜像,只负责读 / 写芯片;Windows 支持差,优先 Linux;部分主板 BIOS 写保护锁死无法写入flashrom |
| BIOS‑Patcher | 各类 Legacy BIOS 二进制镜像 | 开源脚本集合 | 二进制补丁工具集 | 基于偏移 / 特征码做二进制打补丁;校验和修复;补丁脚本批量处理 | 无图形界面;依赖固件版本匹配;版本稍有差异补丁直接失效;不解析上层模块结构 |
逐个工具底层原理、逻辑链路拆解
1. AwardBIOSEditor(AWDBEdit)
- 固件模型:
BootBlock(原始不压缩) + LH5(LHA‑lh5)压缩模块归档 - 链路:读入完整 bin 镜像 → 扫描
‑lh5‑标记解压全部模块到内存 → GUI 编辑 Setup 表 / Hex 编辑模块 → 修改完成重新 LH5 压缩回填 → 自动计算 BootBlock 校验 + 主 BIOS 校验和 → 输出 bin。 - 工作模式:内存解压,磁盘输出最终镜像,不执行烧写。
2. AMIBCP(AMI BIOS Configuration Program)
AMI 原厂配置工具,区分 Legacy‑AMI 与 Aptio‑4 UEFI。
- 底层:解析固件内部 IFR(Internal Forms Representation)二进制表单,把 Setup 菜单翻译成 GUI 界面;修改选项掩码、默认值、可见性,写回 IFR 区块。
- 链路:打开
.bin→ 提取 Setup IFR 资源 → 图形界面修改表单参数 → 写回固件镜像,重算固件校验。 - 局限:不处理 FFS 模块增删替换;微码、OptionROM 替换交给 MMTool 完成;Aptio‑V 新版本支持有限。
3. Phoenix BIOS Editor
- 固件模型:Phoenix 自定义压缩容器,不同于 Award LH5。
- 链路:识别 Phoenix 压缩块 → 解压模块;修改 Setup 字符串、Logo、OptionROM;重打包,修复 Phoenix 私有校验。
2005 年后 Phoenix‑Award 混合固件格式变更,该工具失效。
4. MMTool (AMI Modify Tool)
AMI 原厂 UEFI 模块工具,只服务 Aptio4/Aptio‑V。
- 底层:直接操作 UEFI 标准 FV(Firmware Volume)、FFS File、Section。
- 典型用途:替换 CPU 微码、替换 GOP 驱动、插入 NVMe OptionROM、删除不需要 DXE 驱动。
- 链路:打开 AMI UEFI bin → 遍历 FV/FFS 树 → 提取 / 替换指定 FFS 模块 → 重算 FV 校验,输出修改固件。
⚠️不解析 / 编辑 Setup 表单;Insyde、Phoenix UEFI 直接拒绝打开。
5. UEFITool(开源通用 UEFI 解析器)
现代固件逆向的基础工具,跨 Windows/macOS/Linux。
- 底层:严格遵循 UEFI PI 规范解析 FV‑FFS 模型,不绑定任何厂商私有逻辑。
- 链路:加载固件镜像 → 解析 Firmware Volume → 解析 FFS File → 解析 Section(PE32、Raw、Freeform 等);可导出、替换模块。
- 配套生态:
- IFR‑Parser:提取 Setup 菜单文本;
- UEFIPatch:文本规则批量补丁;
重要:很多 OEM 固件外层带加密封装,UEFITool 只能看到加密 blob,看不到内部 FFS,必须先解密。
6. H2OUVE / H2OInsider(Insyde H2O BIOS Tools)
系微 Insyde H2O 笔记本 BIOS 的原厂工具,极少对外流出。
- Insyde 固件会在外层套私有压缩 / 加密容器,直接用 UEFITool 打开看到乱码容器,看不到内部 FV。
- H2OUVE 作用:解开 Insyde 外层私有容器,暴露内部标准 UEFI FV;可以修改 Setup 配置、替换模块;完成修改后重新打包回 Insyde 容器。
绝大多数消费级 Insyde 笔记本固件被 OEM 加密锁,民间修改门槛极高。
7. Flashrom
不属于固件编辑器,是 SPI Flash 芯片读写工具。
- 工作对象:物理 SPI Flash 芯片,不是
.bin文件。 - 链路:
- 读:编程器 (CH341A) ↔ SPI Flash → flashrom 读取全部内容保存为 bios.bin;
- 写:flashrom 把修改完成的 bios.bin 写入 Flash 芯片,并校验。
典型工作流:flashrom读取备份 → AWDBEdit/MMTool/UEFITool修改镜像 → flashrom写回芯片GitHub。
8. BIOS‑Patcher
脚本式二进制补丁工具集。
- 原理:搜索固件二进制特征码,按偏移打二进制 patch,修复各类 Legacy BIOS 校验和。
- 无固件结构解析,只认字节序列。固件版本一旦发生微小改动,补丁直接失效。多用于老主板解锁、校验修复。
工具链选型速记(场景对应工具)
- 老 Award 4.5x /6.00PG 主板:AWDBEdit;刷写用 flashrom / AWDFLASH。
- 老 AMI Legacy BIOS:AMIBCP;
- AMI Aptio‑4 / Aptio‑V UEFI 主板:
- 修改 Setup 选项 → AMIBCP;
- 替换微码、GOP、OptionROM → MMTool;
- 逆向、导出模块、查看结构 → UEFITool。
- Insyde H2O 笔记本(联想 / 惠普 / 宏碁等):优先 UEFITool,遇到外层加密则需要 H2OUVE 解密容器。
- 固件芯片读写备份烧录:Flashrom + CH341A 编程器。
- 批量二进制打补丁、校验修复:BIOS‑Patcher。
典型完整工作流示例
示例 1:老 Award 主板修改 Logo
flashrom读取备份固件 → AWDBEdit打开bin,替换EPA Logo模块 → AWDBEdit保存修复校验 → flashrom写回SPI Flash示例 2:AMI Aptio V 主板注入 NVMe 模块
导出主板固件 → MMTool打开,插入NVMe OptionROM模块 → 保存修改固件 → 编程器flashrom刷写示例 3:Insyde 笔记本固件分析
flashrom dump固件 → H2OUVE解开Insyde外层容器 → UEFITool查看内部UEFI模块 → 修改后H2OUVE重新封装 → flashrom写回芯片关键风险提醒
- 原厂闭源工具(AMIBCP、MMTool、H2OUVE)网络流传大多是泄漏版本,存在保存 bug,修改前务必备份原始固件。
- UEFI 修改后部分主板启用安全校验 / Signed Capsule,修改镜像会被板载 BIOS 刷写程序拒绝,只能使用外部编程器 flashrom 硬刷。
- 工具只是编辑镜像;烧写操作才会真正改变主板固件,操作失误直接变砖,必须保留原始备份 bin。
除了 AwardBIOSEditor 之外,还有一些其他用于编辑和修改 BIOS 的工具。以下是几款常见的同类工具:
-
AMI BIOS Editor (AMIBCP):
- 简介: 主要用于编辑 American Megatrends Inc. (AMI) BIOS。
- 功能: 允许用户修改 BIOS 设置、添加或删除模块、更新微代码等。
- 特点: 提供图形界面,较为友好,但同样需要用户具备一定的技术知识。
-
Phoenix BIOS Editor:
- 简介: 用于编辑 Phoenix 和 Phoenix-Award BIOS。
- 功能: 支持查看和修改 BIOS 设置、更新模块、调整系统参数等。
- 特点: 界面直观,支持大多数 Phoenix BIOS 版本。
-
UEFITool:
- 简介: 用于解析、查看和修改 UEFI 固件文件。
- 功能: 支持提取、修改和重组 UEFI 固件中的模块和驱动程序。
- 特点: 专为 UEFI 固件设计,适用于现代系统。
-
MMTool:
- 简介: AMI 提供的另一款 BIOS 固件编辑工具。
- 功能: 允许用户修改 AMI BIOS,包括微代码更新、模块替换等。
- 特点: 强大的功能和灵活性,但需要专业知识。
-
H2OUVE & H2OInsider (Insyde H2O BIOS Tools):
- 简介: 用于 Insyde H2O BIOS 的编辑工具。
- 功能: 主要用于 OEM 和高级用户进行 BIOS 定制和微调。
- 特点: 提供命令行界面和部分图形界面,功能强大。
-
Flashrom:
- 简介: 一个开源的固件读写工具。
- 功能: 支持多种硬件平台和 BIOS 类型的读写操作。
- 特点: 开源软件,社区支持广泛,但需要命令行操作经验。
-
BIOS Patcher:
- 简介: 专为修改 Award 和 AMI BIOS 的工具。
- 功能: 主要用于 BIOS 固件的补丁和修改,适合高级用户和开发者。
- 特点: 功能专注于补丁和修复,适合特定需求的修改。
这些工具各有特点,选择哪一款取决于你所使用的 BIOS 类型以及你的具体需求和技术水平。务必注意,修改 BIOS 有一定风险,需要谨慎操作,并确保在进行任何修改之前备份原始 BIOS。
-
CBROM:
- 简介: 用于编辑和管理 Award 和 AMI BIOS 中的 ROM 模块。
- 功能: 允许用户添加、删除和提取 BIOS ROM 模块。
- 特点: 主要用于处理 ROM 模块,适合对 BIOS 进行精细化调整的用户。
-
Universal BIOS Backup Toolkit:
- 简介: 用于备份和还原计算机上安装的 BIOS。
- 功能: 支持从计算机中提取原始 BIOS,并在需要时进行还原。
- 特点: 便于用户在进行其他 BIOS 操作之前备份原始 BIOS。
-
UEFI BIOS Updater:
- 简介: 用于更新 UEFI BIOS 的工具。
- 功能: 支持更新 UEFI BIOS 固件,包括微代码、驱动程序等。
- 特点: 适用于需要更新 UEFI BIOS 的用户,提供相对简单的操作界面。
这些工具提供了丰富的选择,以满足不同用户对 BIOS 编辑和修改的需求。无论选择哪个工具,都需谨慎操作,并遵循相关的指南和建议,以避免对系统造成不可逆的损坏。
当然,以下是一些额外的工具和相关建议,以帮助你更全面地了解 BIOS 编辑和修改的选项:
-
Intel FIT (Flash Image Tool):
- 简介: 由英特尔提供的工具,用于创建和修改 Intel 固件镜像。
- 功能: 允许用户定制 Intel Platform Controller Hub (PCH) 固件,包括 BIOS、ME、TXE 等模块。
- 特点: 针对 Intel 平台,提供专业级功能,适用于开发人员和高级用户。
-
Intel FPT (Flash Programming Tool):
- 简介: 用于在 Intel 平台上编程和修改 BIOS 固件的工具。
- 功能: 支持读取、写入和验证 BIOS 镜像。
- 特点: 强大的命令行工具,适合需要深度控制和修改 BIOS 的用户。
-
AFU (AMI Firmware Update Utility):
- 简介: AMI 提供的固件更新工具。
- 功能: 支持 BIOS 的备份、更新和恢复。
- 特点: 适用于 BIOS 更新,提供图形界面和命令行版本。
-
WinFlash:
- 简介: 一款 Windows 环境下的 BIOS 刷新工具,常见于各种品牌的主板和笔记本电脑。
- 功能: 允许用户直接在 Windows 系统中刷新 BIOS。
- 特点: 操作简便,但需要确保电源稳定,避免更新过程中断电。
-
PLAT (Phoenix Limited Access Tool):
- 简介: 用于编辑和修改 Phoenix BIOS 设置的工具。
- 功能: 允许访问和修改 BIOS 设置,适用于 OEM 和高级用户。
- 特点: 专门针对 Phoenix BIOS,提供详细的修改选项。
使用 BIOS 编辑工具的建议:
-
备份原始 BIOS:
- 在进行任何修改之前,务必使用适当的工具备份原始 BIOS。这可以防止在修改过程中出现问题时,无法恢复系统。
-
了解你的硬件:
- 确保你对所使用的计算机硬件有足够的了解,尤其是主板的型号和 BIOS 类型。不兼容的 BIOS 修改可能导致系统无法启动。
-
遵循指导和教程:
- 在使用这些工具之前,查阅相关的文档、教程和社区论坛。许多工具都有详细的使用指南和操作步骤。
-
测试环境:
- 如果可能的话,先在测试环境中进行 BIOS 修改,避免对主要工作或学习系统造成影响。
-
小心修改关键设置:
- 某些 BIOS 设置(如 CPU 微代码、内存时序等)对系统稳定性有重大影响。修改这些设置时需格外谨慎。
-
保持电源稳定:
- 在 BIOS 更新或修改过程中,确保电源稳定,避免因电源问题导致 BIOS 更新失败。
通过以上工具和建议,你可以更安全地进行 BIOS 编辑和修改,提升系统性能或添加特定功能。但请注意,BIOS 修改具有一定风险,必须谨慎操作。
BIOS/UEFI 工具完整整理、勘误、底层定位与选型说明
基于你提供的工具清单,补充纠错、底层定位、能力边界、典型误区,区分「固件镜像编辑器」、「刷写 / 备份工具」、「OEM 原厂工程工具」三大类,便于查阅。
分类总览
① Legacy‑BIOS 镜像编辑工具(修改 bin 镜像内容,不烧写芯片)
| 工具 | 适用固件 | 核心作用 | 重要勘误 & 局限 |
|---|---|---|---|
| AwardBIOSEditor(AWDBEdit) | Award Modular v4.5x /6.00PG | LH5 模块解压替换、Setup 表图形编辑、双校验自动修复 | ❌不支持 Phoenix‑Award、UEFI;MFC 老程序,Win10/11 需 XP‑SP3 兼容模式 |
| CBROM | Award Legacy BIOS(4.5x/6.00PG) | 模块提取 / 插入 / 删除(EPA Logo、OptionROM) | DOS 工具;依赖外部 LHA‑LH5;不编辑 Setup 表单,不自动修复校验;容易破坏模块对齐 |
| AMIBCP | AMI‑Legacy / Aptio‑4 UEFI | 解析 IFR,修改 BIOS Setup 菜单、选项默认值、隐藏选项 | ❌不能增删 FFS 模块、不能替换微码;Aptio‑V 支持差;网络流传为泄漏版 |
| Phoenix BIOS Editor | Phoenix SCT Legacy BIOS | 修改 Phoenix 私有压缩模块、Logo、字符串 | ❌不支持 Phoenix‑Award 混合固件,不支持 UEFI |
| PLAT(Phoenix Limited Access Tool) | Phoenix Legacy BIOS | 底层访问 Phoenix Setup 配置,OEM 工程工具 | 极少流出,普通用户几乎获取不到 |
| BIOS Patcher | Award / AMI Legacy BIOS | 特征码二进制补丁、校验和修复 | 无固件结构解析;固件版本稍有差异补丁失效;纯二进制打补丁 |
② UEFI 镜像编辑工具(现代固件,操作 FV‑FFS 结构)
| 工具 | 适用固件 | 核心作用 | 重要勘误 & 局限 |
|---|---|---|---|
| MMTool | AMI Aptio‑4 / Aptio‑V UEFI | FFS 模块提取 / 替换;更新 CPU 微码、GOP、OptionROM | 只认 AMI Aptio;Insyde、Phoenix UEFI 无法打开;不编辑 Setup 表单;泄漏版存在保存 Bug |
| UEFITool | 通用 UEFI(AMI/Insyde/Phoenix/Coreboot) | 解析 FV/FFS/Section;导出替换模块;查看 IFR | 不自动修复校验、不处理 OEM 外层加密;无图形化 Setup 修改界面 |
| H2OUVE + H2OInsider | Insyde H2O UEFI 笔记本 | 解开 Insyde 私有外层容器,修改模块 / Setup,重新封装 | 原厂 OEM 工具,公开资源极少;多数笔记本固件带加密锁 |
| UEFI BIOS Updater(UBU) | AMI Aptio UEFI | 脚本化更新微码、NVMe GOP、OEFI 驱动 | 基于 MMTool/UEFITool 做脚本封装,仅 AMI UEFI 友好;不支持 Insyde |
| Intel FIT(Flash Image Tool) | Intel 平台固件镜像 | 定制 PCH、BIOS、ME、TXE 复合镜像,Intel 原厂工程工具 | 面向 OEM 开发,普通用户无正式授权,不面向消费级玩家 |
③ 备份 / 刷写工具(读写 Flash 芯片,不修改镜像内部内容)
⚠️这类工具只负责把 bin 读出来或者写进芯片,本身不会编辑 BIOS 设置、替换模块。| 工具 | 作用 | 备注 ||---|---|---||Flashrom | 跨平台 SPI Flash 读写;配合编程器 CH341A/FT2232H,也支持部分主板板载 SPI|Linux 为主;Windows 支持有限;受主板 BIOS 写保护制约 ||Universal BIOS Backup Toolkit|Windows 下尝试从 BIOS 内存 dump 固件 |dump 出来的镜像经常残缺、不完整,可靠性远低于编程器 + flashrom,仅作临时参考,不能当作可靠备份 ||AFU (AMI Firmware Update Utility)|AMI 原厂固件更新工具,DOS/Windows 版本 | 主板内部 Capsule 校验锁会拒绝修改过的第三方 bin;适合原厂官方固件升级,不适合修改后固件刷写 ||WinFlash|Windows 环境主板刷写工具,各厂商定制版本 |风险极高,Windows 下断电直接变砖;多数新版主板不再支持 Windows 下刷写修改版固件 ||Intel FPT (Flash Programming Tool)|Intel 平台命令行固件读写,访问 SPI Flash+ME 区域 | OEM / 工厂工具;消费主板 ME 锁保护,普通用户很难完整读写全部 Flash 区域 |
关键误区澄清(来自原始文本中的不准确点)
- AMIBCP 不能做模块增删、微代码更新
AMIBCP 只处理 Setup IFR 表单(菜单、选项、默认值);模块替换、微码更新要交给 MMTool,二者分工明确。
- Phoenix BIOS Editor ≠ 支持 Phoenix‑Award
Phoenix‑Award 是 Award 被收购后的混合产物,既不是原版 Award,也不是原版 Phoenix SCT,两款传统工具均无法解析。
- Universal BIOS Backup Toolkit 备份不可信
它读取运行时内存映射,并非完整 SPI Flash 镜像;部分区块缺失,修改‑刷写极易出问题。可靠备份 = 编程器 + flashrom 读取物理 Flash。
- WinFlash、AFU 主要用于官方原版固件升级
对于手工修改过的 bin 镜像,现代主板的 Capsule 签名校验会直接拒绝;修改固件优先使用外部编程器硬刷。
- Intel FIT / FPT 属于 Intel OEM 工厂工具
并非给普通玩家修改 BIOS 使用;很难获取正式版本,且 Intel 平台大量区域被 ME 锁锁住,无法随意改写。
- H2OUVE 并非纯图形界面
核心解密封装逻辑大量依靠命令行,H2OInsider 仅为辅助 GUI;Insyde 笔记本大量固件外层加密,即便拿到工具也无法直接修改。
典型完整工作流汇总
场景 1:老 Award 主板修改 Logo/Setup 选项
flashrom读取完整备份 → AWDBEdit修改bin镜像 → 校验保存 → flashrom烧写回SPI芯片不建议依赖 Universal BIOS Backup Toolkit 做备份。
场景 2:AMI Aptio‑V 台式机更新 CPU 微码
导出固件 → MMTool替换微码模块 → 保存镜像 → 编程器flashrom刷写主板自带 AFU/Windows 刷写工具大概率拒绝修改后的镜像。
场景 3:Insyde 笔记本固件逆向
flashrom物理dump固件 → H2OUVE解开私有外层容器 → UEFITool查看内部FV‑FFS → 修改完成H2OUVE重封装 → flashrom写回场景 4:老 Phoenix Legacy BIOS
flashrom备份 → Phoenix BIOS Editor编辑 → flashrom刷写风险总提示
- 修改固件前必须使用编程器做完整物理备份;内存 dump 备份只能参考,不能作为救砖备份。
- 网上流传的原厂工具(AMIBCP、MMTool、H2OUVE)多为泄漏版本,存在保存 Bug,修改后务必做二次校验。
- UEFI 安全锁、Capsule 签名校验会阻止板载刷写程序写入修改版固件,遇到该情况只能外部编程器硬刷。
- Legacy BIOS 修改要关注模块压缩后尺寸溢出;UEFI 修改要关注 FFS/Section 校验。
现代架构・2026 有效 BIOS‑UEFI 修改工具栈
现代平台约束:Intel Boot‑Guard、AMD‑PSB/PSP、Pluton、SPI Flash Descriptor 锁、OEM 固件签名、Capsule 签名校验,传统 MMTool、AMIBCP、H2OUVE 泄漏版工具能力大幅衰减。Legacy Award‑AMI 工具(AWDBEdit、CBROM、Phoenix BIOS Editor)仅用于古董平台,现代 x86 完全无效。
一、现代平台最大现实约束(2026 必须优先理解)
- Intel Boot‑Guard 熔断锁:CPU 熔丝一次性烧写;固件没有 OEM 签名,上电直接拒绝执行,外部编程器刷入修改固件也无法开机,硬件熔断,软件无法绕过。
- AMD PSB(Platform Secure Boot):AM5 及以后平台,同样熔丝绑定 OEM 签名;大量消费主板出厂开启。
- SPI Flash Descriptor(IFD):把 SPI Flash 划分多个隔离区域:BIOS、ME/CSME、PSP、GBE;各区域独立写保护;普通修改只能触碰 BIOS 区域,不能篡改 ME/PSP。
- OEM 外层封装加密:联想、惠普、戴尔笔记本固件外层加密,直接导出固件是加密 Blob,看不到内部 FV‑FFS 结构。
- Windows Pluton 安全处理器:固件链进一步上锁;修改固件会破坏安全信任链,BitLocker 直接锁死磁盘。
现实结论:
- 台式 DIY 主板:部分主板 Boot‑Guard未熔断,可以修改固件;
- 品牌笔记本、品牌整机:绝大多数 Boot‑Guard/PSB 已熔断,修改固件几乎不可行,仅能做固件静态分析,不能刷写修改版镜像。
二、2026 现代有效工具栈分类
1)固件镜像解析 / 编辑(开源主力,替代老旧闭源原厂泄漏工具)
| 工具 | 版本 / 分支 | 定位 | 适用平台 | 能力边界 |
|---|---|---|---|---|
| UEFITool‑NE | A74(2026 最新)GitHub | 跨平台 UEFI 解析 GUI | AMI Aptio‑V/Aptio‑VI、InsydeH2O、Phoenix UEFI、EDK2 | 解析 FV/FFS/Section;提取替换模块;查看 IFR 表单;解析 Intel/AMD 微码;不自动修复 FV 校验;不解密 OEM 外层加密;替代 MMTool 大部分查看导出工作 |
| UEFIPatch | 最新 git | 脚本化补丁工具 | 通用 UEFI | 基于文本规则做二进制补丁,批量修改 IFR、Setup 变量;配合 UEFITool‑NE 使用 |
| IFRExtractor‑RS | v1.6+ | IFR 表单解析 | 全部 UEFI | 提取 Setup 菜单文本、选项掩码、默认值;替代 AMIBCP 查看 Setup 表单;不能直接写回修改后的 IFR |
| Fiano(Google‑Facebook) | main 分支 | Go 语言 UEFI 工具集 | EDK2 通用 UEFI | 脚本自动化解析、替换 FFS 模块;适合批量 CI 脚本;无 GUI 界面GitHub |
| Chipsec | 最新 main | Intel 平台固件安全分析 | Intel 平台 | 解析 IFD、ME、NVRAM;查看 Boot‑Guard 状态,检查锁位;做安全审计,不做固件编辑 |
| ifdtool | coreboot 工具链组件 | Flash 描述符编辑 | Intel 平台 | 修改 IFD 分区、读写权限掩码;仅当 Boot‑Guard 未熔断才生效;严禁随意修改 ME 区域 |
⚠️老旧闭源工具现状
- MMTool:Aptio‑V 新版固件经常保存损坏;Aptio‑VI 基本失效;仅适合老 Aptio‑4/Aptio‑V 早期固件;
- AMIBCP:对新版 Aptio‑VI IFR 解析大量异常;泄漏版,无维护;
- H2OUVE/H2OInsider:几乎无公开可用新版本;Insyde 新版笔记本外层加密,拿到工具也无法解密。
2)硬件读写工具(备份 / 刷写,2026 选型)
现代平台强烈不依赖主板自带 Windows 下刷写工具(AFU、WinFlash),签名校验直接拒绝修改固件。优先外部编程器 + flashrom。
| 工具 / 硬件 | 说明 |
|---|---|
| Flashrom‑1.5.x(2026 稳定版) | 开源跨平台;CH341A / CH347 / TL866II / Dediprog;支持 1.8V/3.3V SPI Flash;强制写入后校验,降低变砖风险;Linux 体验最好,Windows 支持有限 |
| CH347 | 新一代低成本 USB‑SPI,改善 1.8V 支持,相比 CH341A 稳定性提升,2026 爱好者主流选择 |
| TL866II‑Plus / T48 | 维修工作室专业编程器;支持大量 Flash 芯片;价格更高 |
工作流:外部编程器读取完整 SPI 镜像(真正完整备份)→镜像本地修改 →外部编程器写回芯片。❌拒绝使用 Universal BIOS Backup Toolkit 内存 dump,dump 镜像存在区块缺失,不能当备份。
3)开源完整固件替代方案 Coreboot 生态(2026 活跃)
不是修改原厂 UEFI 镜像,完全替换主板固件;不等于随便刷,需要平台移植支持,受 Boot‑Guard 熔断锁限制coreboot。
- coreboot 26.06(2026‑06)
- 支持 Intel Panther‑Lake、Nova‑Lake;AMD Strix‑Halo;大量消费台式主板、Framework 笔记本、Chromebook 设备。
- 工作模式:coreboot 做硬件初始化,payload 加载 EDK2‑UEFI 或者直接 Linux;
- 限制:原厂 Boot‑Guard 熔断的平台,coreboot 刷不进去。
- Canoeboot:coreboot 发行版,预编译镜像,降低编译门槛。
- MrChromebox:Chromebook 设备 coreboot+EDK2 UEFI payload 方案,Chrome 设备出厂没有 Boot‑Guard 熔断,可用性极高MrChromebo...。
4)辅助工具链
- UBU(UEFI BIOS Updater):脚本封装 UEFITool‑NE,自动更新微码、GOP 驱动;仅适合 AMI Aptio 平台。
- UEFI‑Editor 网页工具:浏览器查看编辑 IFR 导出的 Setup 配置,仅辅助,不直接修改固件 bin。
三、两条典型实战工作流(2026)
场景 A:DIY 台式主板,Boot‑Guard 未熔断,修改原厂 UEFI 镜像
1. 断电,CH347编程器+SOIC8夹子,flashrom读取完整SPI‑Flash镜像,sha256校验备份两份
2. UEFITool‑NE A74打开镜像,浏览FV‑FFS树;提取IFR,IFRExtractor‑RS解析菜单
3. UEFIPatch打补丁(修改Setup选项掩码、默认值);或替换FFS模块(微码、驱动)
4. 保存修改固件;重新校验FV校验
5. flashrom外部编程器写入修改镜像,verify校验
6. 上电测试;变砖直接写回原始备份镜像恢复
场景 B:Chromebook,替换完整开源固件 Coreboot (MrChromebox)
1. 设备固件写保护解除;备份原厂完整SPI镜像
2. 刷写MrChromebox预编译coreboot+EDK2 payload完整ROM
3. 直接获得开源UEFI固件,可自由调整启动选项
场景 C:现代品牌笔记本(绝大多数 Boot‑Guard 熔断)
仅做静态逆向分析,不要尝试刷写修改固件。
1. 从官方exe/capsule提取固件,或者编程器dump完整镜像
2. UEFITool‑NE分析;如果外层加密,只能看到加密Blob,无法解析内部模块
3. Chipsec审计固件安全配置;IFRExtractor‑RS解析提取Setup菜单
4. 只做研究,不做刷写修改。
四、工具选型淘汰清单(2026 不要再优先使用)
| 工具 | 现状说明 |
|---|---|
| MMTool 旧泄漏版 | Aptio‑VI 经常损坏镜像;仅遗留老 Aptio4/V 固件场景临时参考 |
| AMIBCP 泄漏版 | 新版固件 IFR 解析异常;只用来参考老固件,不作为修改工具 |
| H2OUVE 泄漏版 | Insyde 新版笔记本无法解密外层容器,几乎无实用价值 |
| AWDBEdit、CBROM、Phoenix BIOS Editor | 仅限 2005 年以前 Legacy BIOS,现代 UEFI 完全无关 |
| Universal BIOS Backup Toolkit | 内存 dump 镜像残缺,禁止作为备份手段 |
| Windows 下 AFU/WinFlash 刷写修改版固件 | OEM 签名校验拦截,大概率失败 |
五、风险清单(现代平台特有)
- Boot‑Guard/PSB 一旦熔丝熔断:无论编程器怎么刷修改镜像,都无法开机,只能刷回原厂未修改固件。
- 修改 IFD 描述符失误:损坏 ME/PSP 区域,直接导致主板永久性故障。
- BitLocker:修改固件会触发 BitLocker 恢复锁,务必提前解密关闭 BitLocker。
- NVRAM 变量丢失:刷写过程可能清空 UEFI 安全启动密钥、用户设置。
- 保修:开盖使用编程器,多数厂商直接丧失硬件保修。
- UEFITool‑NE + UEFIPatch 完整实操时序;
- flashrom 常用命令速查表;
- 判断主板是否开启 Boot‑Guard 熔丝锁的核查清单。
一、UEFITool‑NE + UEFIPatch 完整实操时序
环境:UEFITool‑NE A74;UEFIPatch 最新 Git;Windows/Linux;目标:修改 Aptio‑V / Aptio‑VI UEFI 镜像,解锁 Setup 隐藏选项、替换模块前置条件:已经通过编程器 + flashrom 获取完整原始 SPI dump 镜像,务必备份 2 份,记录 SHA256。⚠️UEFIPatch 只做镜像补丁,不能绕过 Boot‑Guard 熔丝锁;熔丝熔断后修改镜像刷入也无法启动。
完整步骤时序
- 预处理原始固件镜像
①复制原始dump.bin → original.bin(只读备份,永不修改)
②复制一份工作副本 work.bin,所有操作针对 work.bin
③计算哈希:sha256sum original.bin > backup.sha256
- UEFITool‑NE 打开 work.bin,基础分析
- File → Open file,载入 work.bin
- 浏览 FirmwareVolume 树,定位要修改的 FV、FFS File、Section
- 提取 Setup IFR 表单:找到 Form‑Set‑Hii 对应 FFS 文件 → 右键 → Extract As → 导出内部
.ifr二进制文件 - 使用
IFRExtractor‑RS解析 ifr,生成人类可读文本,确认选项 Offset、掩码、变量名,确认需要打什么补丁。
重要:不要直接在 UEFITool‑NE 图形界面反复保存;图形保存容易破坏部分 FV 校验,优先用 UEFIPatch 做补丁。
- 编写 / 准备 UEFIPatch 补丁脚本(
.txt补丁规则)补丁示例(解锁 Setup 选项,修改可见掩码)
#offset|original_bytes|replaced_bytes|comment
0x0002A8C2|0x01|0x00|Unlock Setup menu item
规则格式:文件偏移|原始十六进制字节|替换字节|注释偏移是整个固件镜像的绝对物理偏移,不是模块内部偏移。
- 执行 UEFIPatch 打补丁
# 格式 UEFIPatch <固件镜像> <补丁文件>
./UEFIPatch work.bin unlock_setup.txt
Patched X occurrences;0 处代表偏移 / 字节不匹配,补丁未生效,停止操作。⚠️补丁匹配数为 0,禁止继续往下刷写,代表固件版本不匹配。
- 【可选】UEFITool‑NE 替换 FFS 模块(微码、DXE 驱动等)
- 在树节点选中目标 FFS File → Replace File
- 选择新模块
.ffs;替换完成保存为 work_patched.bin
保存后,UEFITool‑NE 会提示Volume checksum invalid属于常态,后续需要重算 FV 校验。
- 修复 Firmware Volume 校验和(关键,跳过会导致 UEFI 异常、随机崩溃)
# 使用UEFIPatch内置工具修复全部FV校验
./UEFIPatch --fix‑checksum work_patched.bin
- 补丁后静态验证
1)UEFITool‑NE 重新打开 work_patched.bin
- 检查对应模块、IFR 字节是否已经被修改;
- 查看 FV 节点属性,确认校验修复状态;
2)对比大小:不要出现镜像整体大小改变(SPI Flash 容量固定,尺寸必须和原始 dump 完全一致)。
镜像大小发生变化:不能刷写,会覆盖 Flash 描述符 / ME 区域,直接变砖。
- 刷写前校验
sha256sum work_patched.bin
# 保留补丁后镜像哈希,用于故障排查
- 交付 flashrom 写入 SPI Flash 芯片(外部编程器)
禁止使用主板自带 AFU、Windows 刷新工具,会被 Capsule 签名拦截。
- 故障回滚预案
上电异常、不开机:直接刷回
original.bin原始备份镜像。
重要避坑点
- UEFITool‑NE GUI 保存不自动修复 FV 校验,必须手动执行
--fix‑checksum; - 补丁偏移必须是镜像绝对偏移,不是 FFS 内部偏移;
- 固件总字节数必须和原始 dump 严格一致,不能变大变小;
- OEM 外层加密固件,打开全是乱码 blob,此整套流程完全不可用。
二、flashrom 常用命令速查表(1.5.x 版本,Linux 环境;CH347 / CH341A 编程器)
⚠️必须 root 权限;操作前断开主板电源,使用 SOIC‑8 夹子;确认电压:1.8V/3.3V,选错电压烧毁 Flash 芯片。
1. 探测芯片(识别 SPI Flash 型号)
flashrom -p ch347_spi
# ch341A则使用 flashrom -p ch341a_spi
输出找到芯片型号代表硬件连接正常;没识别,检查接线、夹子、电压。
2. 读取完整固件备份(最重要!务必读 2 次比对哈希)
#第一次读取
flashrom -p ch347_spi -r dump1.bin
#第二次读取
flashrom -p ch347_spi -r dump2.bin
#比对两次备份哈希,完全一致才是可靠备份
sha256sum dump1.bin dump2.bin
两次哈希不一致:接触不良、夹子松动,不要继续!
3. 写入修改后的固件镜像
flashrom -p ch347_spi -w work_patched.bin
4. 写入并自动校验(推荐,写入后对比芯片内容和文件)
flashrom -p ch347_spi -w work_patched.bin --verify
5. 只校验芯片内容与文件是否一致(不写)
flashrom -p ch347_spi -v work_patched.bin
6. 部分场景:只写 BIOS 区域(IFD 分区已经划分)
慎用!不要随意指定区域,搞错会破坏 ME。
flashrom -p ch347_spi -w work_patched.bin --image bios
7. 常用参数说明
| 参数 | 说明 |
|---|---|
-p ch347_spi |
指定 CH347 USB‑SPI 编程器 |
-p ch341a_spi |
CH341A 编程器 |
-r file.bin |
读 Flash 保存为文件 |
-w file.bin |
把文件写入 Flash |
--verify / -v |
写入后校验 |
--noverify |
关闭校验,不建议使用 |
-c "W25Q128.V" |
强制指定芯片型号,探测失败时使用 |
⚠️Windows 版 flashrom 支持差,优先使用 Live‑USB Linux(Ubuntu / Debian Live)。不要在主板开机状态读写板载 SPI Flash,务必断电,使用夹子。
三、判断主板是否开启 Boot‑Guard 熔丝锁核查清单
Intel Boot‑Guard 有两个状态:
- 未熔断(Fused = 0):熔丝还没烧,可以刷修改固件;
- 已熔断(Fused = 1)硬件一次性熔断锁:无论编程器刷什么修改固件,上电直接拒绝启动,只能原厂签名固件。
核查分三层:①镜像内 IFD/ME 区域解析;②Chipsec 工具检测;③主板 BIOS Setup 信息;④硬件平台常识判断。
清单 1:Chipsec 工具核查(最权威,推荐)
python chipsec_main.py -m bootguard
关键输出判断
Boot Guard Fused: 1→ 熔丝已经熔断 ❌,无法使用修改版 UEFI 固件Boot Guard Fused: 0→ 未熔断 ✅,具备修改固件前提条件Boot Guard Disabled:ME 配置关闭 BG,但熔丝没有烧写,依然可以修改。
注意:Chipsec 需要运行在真实硬件,虚拟机输出无效;可以 Live‑USB 启动运行。
清单 2:从完整 SPI dump 镜像静态解析(不依赖主板开机)
ifdtool(coreboot 工具集)ifdtool -i dump.bin
BootGuardFuse=1:熔丝熔断,硬件锁死BootGuardFuse=0:熔丝未熔断
ifdtool 只解析镜像中的 ME/IFD 配置,不能改变熔丝状态,熔丝在 CPU 内部,一次性硬件。
清单 3:BIOS Setup 界面人工核查
Boot‑Guard/Intel Platform Secure Boot- 如果选项灰色,不可修改,大概率已经熔断;
- 如果可以 Enable/Disable 切换,熔丝未烧写。
很多 OEM 笔记本直接隐藏该选项,看不到不等于没有开启。
清单 4:平台常识快速预判(经验筛选)
| 设备类型 | Boot‑Guard 熔断概率 | 备注 |
|---|---|---|
| DIY 台式零售主板(Intel 12/13/14 代) | 部分开启,部分关闭 | 华硕 / 微星 / 技嘉部分型号出厂不熔断,可以修改 |
| 品牌整机、品牌商务笔记本 Dell/HP/Lenovo | 绝大多数熔断 | 基本放弃修改固件,仅做静态分析 |
| Chromebook | 绝大多数未熔断 | 适合 coreboot 移植 |
| AMD AM5 平台 PSB | 部分主板出厂熔断 | 对应 Intel Boot‑Guard,效果一致 |
清单 5:实操验证测试(最后兜底,风险操作)
仅上面工具判断Fused=0才做此测试使用编程器刷入一个微小改动测试镜像(只改 NVRAM 字符串,不改动安全模块):
- 上电正常启动:确实未熔断
- 上电黑屏无输出,风扇转,不 POST:大概率熔丝已经熔断,立刻刷回原始备份。
重要误区
- ❌“BIOS 里关掉 Secure Boot ≠ Boot‑Guard 关闭”
Secure Boot 是 UEFI 安全启动;Boot‑Guard 是 CPU 熔丝级固件根信任,两者独立。关闭 Secure Boot 不能绕过 Boot‑Guard 熔丝锁。
- ❌刷写工具能成功写入 Flash 芯片,不代表可以启动。flashrom 只是写入存储芯片;Boot‑Guard 是 CPU 上电校验固件签名,写入成功照样不开机。
- Boot‑Guard 熔丝一旦熔断软件无法复原,没有任何工具可以解锁。

浙公网安备 33010602011771号