打开文件出现安全警告的原因——NTFS交换数据流

症状


  1. CHM文件显示无法连接到网页;
  2. exe、msi、等可执行文件打开时,弹出“安全警告”窗口
  3. 复制音乐到你的MP3时,提示“确认数据流丢失”
  4. 装了卡巴斯基后,硬盘空间越来越小,即所谓的“卡巴斯基吃硬盘”(这种现象现在比较少见了)

总结


  1. IE或firefox直接另存下载,通过下载工具下载则不会;
  2. 系统原因?xp sp2以上;
  3. NTFS分区
  4. 其它

解释


对于通过网络下载而来的文件,Windows无法确认其安全性的时候,就会给它标上一个特别信息,在用户打算运行该文件时,系统便弹出如上的窗口,给用户一个提示——与其说是系统安全警告,但不如说是微软的免责声明,反正意思就是:“我不认识那玩意儿,用不用它你自己想好,到时候出了问题别怪咱没事先讲清楚就行”。

这个标识特别信息的技术,就是交换数据流(Alternate  Data Stream简称ADS

  • 一个文件可以有多个交换数据流,但只有在NTFS环境下有效。
  • 安全信息只是交换数据流的一种,名称为:Zone.Identifier;内容为:[ZoneTransfer]
    ZoneId=3
  • 可以通过命令行或软件添加多种交换数据流
  • 交换数据流不属于文件本身,有它不会改变文件大小,无它也不会破坏文件的功能(复制文件时不用担心)
  • 文件本身所带的内容则叫做该文件的主数据流(Primary  Data Stream)。
应对


  1. 选中文件→右键→属性→解除锁定
  2. 从NTFS分区复制到fat分区,再复制回来
  3. 注册表
    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Attachments],新建一个DWORD键值,名称为SaveZoneInformation,值设为1

  4. 组策略gpedit.msc
    从左侧树中依次展开”用户配置→管理模板→windows组件→附件管理器”, 在右侧找到”中等危险文件类型的包含列表”, 双击弹出对话框, 选择”已启用”, 在下方输入框中填上你想直接运行而不被骚扰的文件类型扩展名, 如果多个的话用半角分号(;)分隔.例如 “.exe;.chm;.msi”

    可参考微软对危险文件类型的分级

This entry was posted in 闲趣 and tagged , , , . Bookmark the permalink.

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>