首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么某些Windows可执行文件没有“数字签名”选项卡?

为什么某些Windows可执行文件没有“数字签名”选项卡?
EN

Security用户
提问于 2015-12-22 15:56:50
回答 3查看 11.1K关注 0票数 8

为什么Windows 7系统上的一些可执行文件没有“数字签名”选项卡?

(关于这个问题,我指的是那些不属于Windows的可执行文件,安装包会在“开始”菜单中创建快捷方式。)

是因为:

  1. .exe文件实际上是Java或Flash文件的某种包装器?
  2. 制造商从未对.exe进行过数字认证?
  3. 其他原因?

我之所以问这个问题,是因为我认为如果原因是#2 (二进制文件从未被CA认证过),那么在安装软件时我就会收到某种警告信息。

更新:下面的屏幕截图显示了我的机器上的两个可执行文件。其中之一("iClone.exe") Windows不显示“数字签名”选项卡。对于另一个选项卡,将显示该选项卡。

EN

回答 3

Security用户

回答已采纳

发布于 2015-12-22 21:56:20

Microsoft不需要对可执行文件进行签名。然而,司机是。

从64位版本的Windows和更高版本的Windows开始,驱动程序代码签名策略要求所有驱动程序代码都有一个数字签名。此外,32位版本的Windows和以后版本的Windows的某些配置也需要对驱动程序代码进行数字签名,以便访问由内容保护策略控制的下一代优质内容。Windows Vista和更高版本的Windows依赖于这些组件的数字签名,以提高Microsoft Windows平台的安全性和稳定性,并使新客户体验到下一代优质内容。

参考文献:https://msdn.microsoft.com/en-us/library/windows/hardware/ff548231(v=vs.85).aspx

票数 8
EN

Security用户

发布于 2016-08-11 19:53:11

如果您在Microsoft可执行文件中找到这种情况,原因是Windows的实现:只有当签名在可执行文件本身(例如用signtool签名)时,Windows资源管理器才会显示数字签名。它不会显示存储在Windows数字签名目录(C:\Windows\System32\catroot\)中的数字签名(例如,使用makecat生成)。

若要检查可执行签名(包括数字签名目录中的条目),请使用SysInternals SigCheck。它还将告诉您,在使用-i命令行开关运行时,它在哪里找到了签名。

代码语言:javascript
复制
C:\>sigcheck.exe -i c:\Windows\System32\cmd.exe

Sigcheck v2.1 - File version and signature viewer
Copyright (C) 2004-2014 Mark Russinovich
Sysinternals - www.sysinternals.com

c:\windows\system32\cmd.exe:
        Verified:       Signed
        Catalog:        C:\Windows\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\Microsoft-Windows-Client-Features-Package-AutoMerged-base~31bf3856ad364e35~amd64~~10.0.10586.0.cat
[...]
票数 5
EN

Security用户

发布于 2015-12-22 21:12:01

  1. 制造商从未对.exe进行过数字认证?

是。这意味着在部署工作流程中要付出额外的努力。

我之所以问这个问题,是因为我认为如果原因是#2 (二进制文件从未被CA认证过),那么在安装软件时我就会收到某种警告信息。

不是的。虽然您可以使用"AppLocker“配置类似的东西(我猜通过使用出版商允许-带有条件“任意发布者”的规则),但在我所知道的任何Windows上,默认情况下都没有这样的机制。

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

https://security.stackexchange.com/questions/108764

复制
相关文章

相似问题

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