zsx

zsx

先作为主站备份 源站:https://my.toho.red

Chromebook刷bios解除企业锁折腾记录

在前两天中午,我拿到了一台 thinkpad c13 yoga,对于这台机的介绍这里不再重复,下面直接进入正题。

当我像往常那样拔下电池并进入开发者模式时,出现了一个比较奇怪的问题:当按下 ctrl+d 开启开发者模式并重启时,总是会进入以下页面:


684211727c59356cede8aab3178587fec673c971afba1723193941b2a653069a

更离谱的问题来了,无论我如何重复点击取消,最后到达一定次数就会响两声然后强制重启,重启后又回到了安全模式,无论重复几次都是如此。

回到安全模式时也会顺便重置设备,这次当我登录账号时,发现了一个奇怪的东西:enterprise enrollment。搜索后发现 chromebook 还有一个企业管理模式,在该模式下管理员可以随时锁定设备,也可以禁用开发者模式。那么原因很明显了:这台机非常不幸地是被企业管理的 “脏机”,自然不可能开启开发者模式。

当我知道这个结果后,我第一反应是退货,但在贪便宜的心理下我还是继续寻找着解决方案。最后在 discord 大佬 OlyB 的帮助下,我找到了一个解决方案:用编程器直连 bios 强行去掉企业锁。

众所周知,chromeos 的大部分设备参数都是由一个存储在 bios 芯片中名为 gbb_flags 的字段所决定的,也包括企业锁状态。如果企业锁变量为 1,则将拒绝开启开发者模式,自然无法通过拔电池解锁硬件写保护。不过 bios 芯片本身是没有写保护的,这就意味着可以通过编程器强刷 bios 的方式强行修改该字段,达到解除保护锁的目的。理论存在,实践开始。

首先需要准备以下道具:
1.ch341a 编程器
2.sop8 免拆夹(需要先确认是 wson 封装还是 sop 封装,我就在这吃大亏了)
3.1.8v 转接器(比较新的 bios 芯片都是 1.8v 的了)

准备完毕后就可以开始行动了:

首先将主机大卸八块,露出主板:

88e7b43467996395dba1c5c3157ddb7b3f5481a84d900a493b1d8b68fad1d34b

找到 bios 芯片(表面印上 winbond 的基本就是了):

1001fcde58e9a051e0782c5e240f967e810f99be7419834d3c3aaf27c35e82d6

将芯片夹对准 bios 芯片夹好,将编程器连接电脑:

619c2f2aba3fbded1bc4b18abe59089584b60fb3a1f70e1e2fbaf0769a471214

电脑进入任意 linux 发行版(这里用的是 ubuntu live),安装 flashrom 软件包,使用 root 权限运行以下大佬提供的脚本:

cd /tmp  
echo "Downloading utilities"  
wget https://mrchromebox.tech/files/util/  gbb_utility.tar.gz && tar -zxf gbb_utility.tar.gz  
wget https://mrchromebox.tech/files/util/vpd.tar.gz && tar -zxf vpd.tar.gz  
echo "----------------------"  
echo "Press any key to begin"  
echo "----------------------"  
read -rsn1  
echo "Read"  
flashrom -p ch341a_spi -i GBB -r GBB.bin  
flashrom -p ch341a_spi -i RW_VPD -r RW_VPD.bin  
echo "Modify"  
./gbb_utility -s --flags=0x8090 GBB.bin  
./vpd -f RW_VPD.bin -s check_enrollment=0 -s   block_devmode=0  
echo "Write"  
flashrom -p ch341a_spi -i GBB -w GBB.bin  
flashrom -p ch341a_spi -i RW_VPD -w RW_VPD.bin  
echo "SUCCESS"  

执行完毕后,如果没有错误输出,则继续以下操作:
1. 开机,按 ctrl+d 进入开发者模式
2. 完成后,按下 ctrl+alt+shift+r 进行 powerwash
3.powerwash 后,立即转到 ctrl+alt+f2 进入终端,以 “root” 身份登录并运行以下命令:

tpm_manager_client take_ownership
cryptohome --action=remove_firmware_management_parameters

两个命令都应显示成功,如果错误则降级到 v110 或更低版本
4. 按 ctrl+alt+f1,再按下 ctrl+alt+shift+r 进行 powerwash
5. 搞定,成功接触保护锁。

那么我成功解除了吗?然而并没有。还记得我前面说的这句话吗?

2.sop8 免拆夹(需要先确认是 wson 封装还是 sop 封装,我就在这吃大亏了)

没错,问题就在这里,这台机使用的是 wson8 封装,而我买的是 sop8 的免拆夹,自然毫无卵用。其实买个 wson8 探针即可解决问题,但在经历几天的折腾后我的耐心早就被耗尽了,直接拿去退款然后又买了台已经刷好 windows 的机器,所以我也就没机会测试这个脚本是否有效了。如果你很不幸也遇到了这种情况,可以试一下这个方式并向我反馈。

最后希望大家在购买 chromebook 时能够少踩坑,毕竟这已经是我翻车的第三台 chromebook 了(大雾

2023.6.6

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。