首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对于有效(已加载)的驱动程序,WinVerifyTrust返回CERT_E_UNTRUSTEDROOT

对于有效(已加载)的驱动程序,WinVerifyTrust返回CERT_E_UNTRUSTEDROOT
EN

Stack Overflow用户
提问于 2016-02-04 13:51:22
回答 1查看 696关注 0票数 0

在以下代码片段中,WinVerifyTrust为系统上加载并运行的内核驱动程序文件(.sys)返回CERT_E_UNTRUSTEDROOT:

代码语言:javascript
复制
   GUID guidAction = DRIVER_ACTION_VERIFY;
   WINTRUST_FILE_INFO sWintrustFileInfo = { 0 };
   WINTRUST_DATA      sWintrustData = { 0 };
   HRESULT            hr = 0;

   sWintrustFileInfo.cbStruct = sizeof(WINTRUST_FILE_INFO);
   sWintrustFileInfo.pcwszFilePath = argv[1];
   sWintrustFileInfo.hFile = NULL;

   sWintrustData.cbStruct            = sizeof(WINTRUST_DATA);
   sWintrustData.dwUIChoice          = WTD_UI_NONE;
   sWintrustData.fdwRevocationChecks = WTD_REVOKE_NONE;
   sWintrustData.dwUnionChoice       = WTD_CHOICE_FILE;
   sWintrustData.pFile               = &sWintrustFileInfo;
   sWintrustData.dwStateAction       = WTD_STATEACTION_VERIFY;

   hr = WinVerifyTrust((HWND)INVALID_HANDLE_VALUE, &guidAction, &sWintrustData);

几个有趣的地方:-驱动程序使用SHA-256签署了有效的(购买的)证书。- KB3033929已安装在系统上(Win7/32) -从文件属性查看证书时,整个证书链显示为有效

我给WinVerifyTrust打错电话了吗?

另一个问题:有没有其他方法(通过注册表项或类似的东西)知道基于SHA-256的代码签名验证在目标系统上可用?(我需要在安装过程中对此进行验证...)

谢谢:)

EN

回答 1

Stack Overflow用户

发布于 2016-04-06 19:26:28

代码语言:javascript
复制
DRIVER_ACTION works good for WHQL afaik. Try
GUID WINTRUST_ACTION_GENERIC_VERIFY_V2

下面是您可以参考http://gnomicbits.blogspot.in/2016/03/how-to-verify-pe-digital-signature.html的其他内容

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35193464

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档