0

我使用教程和 UefiSecureBootManualTests.zip(EnableSecureBoot.ps1 和 append_LostCA_db.ps1)中的 PowerShell 脚本对.efi文件进行签名并启用 SecureBoot 以查看系统是否启动(一切正常)。

现在我尝试从 system32 获取 winload 文件,使用相同的脚本对其进行签名,然后覆盖密钥并查看 SecureBoot 是否允许我仅使用我签名的 winload 启动。这次我使用的是相同的脚本,除了我修改了 append_LostCA_db.ps1 中的 Set-SecureBootUEFI 命令,删除了 -AppendWrite 参数,以便它可以覆盖。

但现在我收到一个错误:

Set-SecureBootUEFI : Incorrect authentication data: 0xC0000022
At F:\SecureBoot\AllowNewCertificate\suprascriu_LostCA_db.ps1:13 char:5 
+     Set-SecureBootUEFI -Name db -Time 2011-05-21T13:30:00z -ContentFilePath Lost ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : PermissionDenied: (Microsoft.Secur...BootUefiCommand:SetSecureBootUefiCommand) [Set-Secu
   reBootUEFI], UnauthorizedAccessException
    + FullyQualifiedErrorId : SetFWVarFailed,Microsoft.SecureBoot.Commands.SetSecureBootUefiCommand

我怎样才能解决这个问题?

我正在使用带有 Win8.1 x64 的 HP 台式机

后期编辑:如果有人能给我一个 8.1 x64 的 unsinged winload,那真的很有帮助

4

1 回答 1

0

这些签名告诉您的一件事是内容没有被修改(这意味着它仍然是安全/有效/可信任的)。这就是为什么我无法签署已签名文件的原因(启动时使用并由 Microsoft 签名的加载程序)。这就是为什么我得到 UnauthorizedAccessException.

没有解决方法。

于 2014-12-08T11:57:41.403 回答