security - 在 Windows 2003 的文件属性中重现被阻止的 exe "unblock"选项

标签 security windows-server-2003 nsis

当我将我的程序从我的网站下载到我的 Windows 2003 机器时,它上面有一个块,您必须右键单击 exe,然后单击属性,然后选择“取消阻止”按钮。

我想在我的安装程序中添加检测文件何时被阻止,因此没有足够的权限。

但是我无法轻松重现让我的 exe 处于需要解锁的状态。

如何让解锁出现在我的 exe 上,以便我可以测试此功能?

最佳答案

这是使用 NTFS 文件流完成的。下载的文件中添加了一个名为“Zone.Identifier”的流。当 IE7 下载流包含的某些类型的文件时:

[ZoneTransfer]
ZoneId=3

设置它的最简单方法是创建一个包含这些内容的文本文件,并使用 more 将其添加到备用流中。

Zone.Identifier.txt:
[ZoneTransfer]
ZoneId=3

命令:
more Zone.Identifier.txt > file.exe:Zone.Identifier

然后,您检查它的方法是尝试打开 Zone.Identifier 流并查找 ZoneId=3,或者简单地假设如果流存在,您的用户将收到该警告。

同样重要的是要注意,这与权限无关。管理员看到相同的警告;这完全与文件的来源和类型有关。当用户取消选中“打开此文件前始终询问”框,然后单击“运行”时,整个流都会消失。

关于security - 在 Windows 2003 的文件属性中重现被阻止的 exe "unblock"选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/135600/

相关文章:

javascript - 如何防止你的JavaScript代码被窃取、复制、查看?

Coldfusion 503 服务不可用页面

wcf - WCF 独立应用程序上的 SSL 错误(SSL 仅用于保护传输)

electron - Electron NSIS阻止重新安装

nsis - 从 Linux 或 Mac 签署 NSIS 卸载程序

java - 为什么在 web.xml 中标记为 CONFIDENTIAL 的 URL 没有被 HttpServletResponse.encodeURL() 使用 HTTPS 重写?

iphone - iOS 如何加密和解密二进制文件?

nsis - 向用户询问 NSIS 中的其他目录位置

android:allowbackup ="false"不工作

powershell - 防止关机的PowerShell窗口