我最近使用efitools
'keytool.efi
从我的 UEFI 固件中保存了 EFI 安全启动密钥。我现在有几个.esl
包含 EFI 签名列表的文件,但它们是二进制文件,我想以可读格式查看内容。
显然,这些签名通常以 X.509 证书开始,然后.esl
使用诸如这样的工具进行转换cert-to-efi-sig-list
;有没有办法可以倒退?
答案1
这易用工具软件包中包含sig-list-to-certs
可以从文件中提取 DER 编码的 X.509 证书的工具.esl
(例如,提取并打印出第一个 KEK 证书):
efi-readvar -v KEK -o 'old_kek.esl'
sig-list-to-certs 'old_kek.esl' 'oldkek'
openssl x509 -in 'oldkek-0.der' -inform der -noout -text
如果有多个证书,请对其他证书重复该openssl
命令。在命令中传递、和以分别读取平台密钥和数据库白名单和黑名单。oldkek-N.der
PK
db
dbx
v-
efi-readvar
答案2
发现了一个不错的小EFI 实用程序由 fpmurphy 编写,可打印有关系统按键的可读信息,并且他还撰写了一篇有关此内容的博客文章。