自动解锁从网站下载的可执行文件
Automatically unblocking executables downloaded from the web site
我有一个网站(内部网),允许您下载用 ASP.NET 编写并使用 https 的可执行文件(当前是 .Net 控制台应用程序)。
但是在很多机器上我无法在下载后立即 运行 - 我需要右键单击它,转到 Properties
然后单击 Unblock
这使得使用这个应用程序不舒服(用户通常必须下载此可执行文件和 运行 - 每次都是新的,因为它是代码生成的)
有没有办法让这个可执行文件自动解锁?修改客户端机器不是一个选项,但我可以用服务器做任何事情。
从一开始我就认为这是不可能的,因为它是一种安全保护,但是 Chrome 以某种方式做到了这一点。如果我使用安装了 IE 的新 PC,将 Chrome 键入 Bing 并安装它 - 我不必取消阻止可执行文件。
到目前为止,我只在 W10 Chrome 和 IE 上测试过这个,但我很确定旧的 Windows 版本也有这个问题。
显示不受信任的可执行对话框的机制基于备用数据流。当您从网络源下载内容时,元数据由 Windows 或浏览器添加,因此您的 file/webserver 不可能影响此行为。另一方面,Windows 有一个规则集,用于应用可以在 Internet 选项的 TrustZone 设置中找到的标志。
NTFS 有一个简洁的小功能,允许一个文件有多个内容,也称为备用数据流。这是 NTFS 独有的功能,因此您不会在其他分区类型上找到它。这基本上允许您在文件中存储更多数据,这些数据对用户不可见,标准 windows 用户也不容易找到。 Windows 使用这些备用数据流来标记文件的来源,尤其是从互联网或内部网下载时。用于此数据的备用数据流称为 "Zone.Identifier" 并保存从中复制文件的区域的 ID。当您决定信任一个文件时,您基本上会告诉 Windows 删除该数据流。
Windows 使用不同区域的概念来对这些文件进行分类。 Windows 总共知道四个区域:Internet、Intranet、可信站点和受限站点。您可以在选项卡 "Trust Zone"
的 Internet 选项对话框中更改设置和规则
安全备注:在更改公司的信任区域设置之前,请考虑三次安全风险。因为它将允许执行来自那些经过验证的源的任何可执行文件,这可能为恶意可执行文件奠定基础,然后可以由已经感染的 PC 或用户自己启动。
解决该问题的正确方法是使用可信且有效的 code signing certificate 对可执行文件进行签名,最好使用 EV(扩展验证)。 Windows 将在您 运行 文件时检查证书,并允许它 运行 无需进一步操作,因为它是用受信任的证书签名的。
我有一个网站(内部网),允许您下载用 ASP.NET 编写并使用 https 的可执行文件(当前是 .Net 控制台应用程序)。
但是在很多机器上我无法在下载后立即 运行 - 我需要右键单击它,转到 Properties
然后单击 Unblock
这使得使用这个应用程序不舒服(用户通常必须下载此可执行文件和 运行 - 每次都是新的,因为它是代码生成的)
有没有办法让这个可执行文件自动解锁?修改客户端机器不是一个选项,但我可以用服务器做任何事情。
从一开始我就认为这是不可能的,因为它是一种安全保护,但是 Chrome 以某种方式做到了这一点。如果我使用安装了 IE 的新 PC,将 Chrome 键入 Bing 并安装它 - 我不必取消阻止可执行文件。
到目前为止,我只在 W10 Chrome 和 IE 上测试过这个,但我很确定旧的 Windows 版本也有这个问题。
显示不受信任的可执行对话框的机制基于备用数据流。当您从网络源下载内容时,元数据由 Windows 或浏览器添加,因此您的 file/webserver 不可能影响此行为。另一方面,Windows 有一个规则集,用于应用可以在 Internet 选项的 TrustZone 设置中找到的标志。
NTFS 有一个简洁的小功能,允许一个文件有多个内容,也称为备用数据流。这是 NTFS 独有的功能,因此您不会在其他分区类型上找到它。这基本上允许您在文件中存储更多数据,这些数据对用户不可见,标准 windows 用户也不容易找到。 Windows 使用这些备用数据流来标记文件的来源,尤其是从互联网或内部网下载时。用于此数据的备用数据流称为 "Zone.Identifier" 并保存从中复制文件的区域的 ID。当您决定信任一个文件时,您基本上会告诉 Windows 删除该数据流。
Windows 使用不同区域的概念来对这些文件进行分类。 Windows 总共知道四个区域:Internet、Intranet、可信站点和受限站点。您可以在选项卡 "Trust Zone"
的 Internet 选项对话框中更改设置和规则安全备注:在更改公司的信任区域设置之前,请考虑三次安全风险。因为它将允许执行来自那些经过验证的源的任何可执行文件,这可能为恶意可执行文件奠定基础,然后可以由已经感染的 PC 或用户自己启动。
解决该问题的正确方法是使用可信且有效的 code signing certificate 对可执行文件进行签名,最好使用 EV(扩展验证)。 Windows 将在您 运行 文件时检查证书,并允许它 运行 无需进一步操作,因为它是用受信任的证书签名的。