检测到来自互联网并被CASPOL“阻止”的DLL

时间:2011-09-06 21:27:05

标签: .net dll caspol

是否有一种方法在代码中检测到DLL是否因为从互联网上下载而被阻止加载?我知道caspol.exe实用程序可以读取权限设置,但如果可能的话,我希望保留代码。

1 个答案:

答案 0 :(得分:1)

阻止的内容由NTFS备用数据流控制,可以通过名为streams的sysinternals使用命令行实用程序删除。这是来自ADS的Wikipedia的引用。

  

Microsoft推出了存储的附件执行服务   有关备用数据流中下载文件来源的详细信息   附加到文件,以保护用户免受下载的文件   这可能会带来风险。

它跟踪文件的来源,因此如果它来自互联网,则应用不受信任的安全策略。删除流将删除该文件来自不受信任来源的记录。这与右键单击文件,查看属性和选择取消阻止具有相同的效果。它与使用caspol使dll完全信任的效果相同。

以下内容创建了与文件测试关联的零字节流。

echo hello > test:stream

关于codeproject的以下项目有一些用于处理它们的示例代码。我相信你需要从非托管代码中删除它们。

Accessing alternative data-streams of files on an NTFS volume