迅维网

标题: PC3000 对固件加密解锁研究 [打印本页]

作者: 小二    时间: 前天 15:17
标题: PC3000 对固件加密解锁研究
PC3000 解锁核心逻辑:固件打补丁,永久跳过安全校验
本质就是修改 PCB 板 SPI Flash 里的 ARM 引导固件,把上电的安全状态判断、SA 访问拦截代码直接废掉,分三步:


签名不变: 所有文件的 0x5A04 签名和 0x0000B601 魔数完全相同 • 原始代码保留: 所有解锁 ROM 都保留了部分原始代码区域,可随时恢复 • 标准入口点: 1MB 芯片解锁后入口指针统一为 0x0158 — PC3000 的标准解锁桩偏移 • 熵值一致: 修改区域与未修改区域的熵值基本相同 (~7.98),说明修改是代码级修补而非加密/解密 • 非 XOR 加密: XOR 差值分布均匀,所有 bit 位翻转频率相近 (1465-1776),排除简单 XOR 加密可能


PC3000 的 ROM 解锁本质是 WD 硬盘固件安全模块的代码级修补: 1. 读取: SPI 编程器读取硬盘 PCB 上的 Flash 芯片全部内容 2. 解析: 识别 0x5A04 签名,解析 32 字节 Header,定位代码区域 3. 定位安全模块: 在 ARM 固件代码中找到密码校验例程和安全状态检查代码 4. 生成修补固件: 将安全验证代码替换为 NOP 或跳过指令 (B 跳转) 5. 写入策略选择: ◦ 1MB 芯片: 修补代码写入 Bank 2 (0x80000+),Header 指针重定向 ◦ 512KB 芯片: 代码后移 32 字节,插入 patch stub,Header 指针 +0x20   6. 尾部标记: 在修补区域末尾写入填充字节和标记字节 (0x59 或 0xEE) 7. 回写: 将修改后的完整 ROM 回写到 Flash 芯片







欢迎光临 迅维网 (https://www.chinafix.com/) Powered by Discuz! X3.4