【问题标题】:Forcing Windows to show "unknown publisher" warning for unsigned application强制 Windows 显示未签名应用程序的“未知发布者”警告
【发布时间】:2021-09-19 07:16:33
【问题描述】:

我已经使用代码签名证书签署了一个可执行文件。我想测试它是否成功绕过了 Windows 10 上的“未知发布者”警告。

不幸的是,我原来的未签名可执行文件没有在我的机器上触发警告,所以我看不到签名是否有影响!

如何强制 Windows 为我未签名的可执行文件显示“未知发布者”警告?

【问题讨论】:

  • 此应用程序是否标记为运行asAdmin
  • 嗯,我不确定?可执行文件不需要提升权限即可运行。
  • 我知道的唯一警告是“用户帐户控制”警告,如果 EXE 标记为管理员,或者 EXE 具有“从 Internet 下载”标签。听起来像是第二种情况。
  • 我指的不是“from another computer”。 “未知发布者”警告是否仅针对需要管理员的可执行文件显示?
  • 确保您的 EXE 明确显示为 asInvoker,并且理想情况下还具有各种 appcompat GUID。否则,它可能会通过 PCA(“程序兼容性助手”)基于 appcompat 逻辑添加一些行为。见this blog post。对其进行代码签名也是一件好事,但前提是它不是自签名的。

标签: windows-10 code-signing


【解决方案1】:

目前我正在使用代码签名证书进行测试,我注意到了你所说的行为。

这些是至少在我的场景中的结论:

  1. 在 VS 中编译的任何可执行文件都能够绕过编译它的 PC 或另一台(任何 PC)上的安全警告。是的,您不必为昂贵的 EV 证书付费,这真是太棒了。

  2. 仅当您在任何网站、电子邮件和其他人下载 EXE 时才会出现安全警告。然后您将能够看到安全警告窗口。

  3. 在没有签名的情况下分发 EXE 并保持绕过安全性的能力的一个好方法是共享 zipped。

  4. 浏览器负责使 EXE “危险”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-16
    • 1970-01-01
    相关资源
    最近更新 更多