3

我正在使用备用数据流 (ADS) 元数据在 Windows 10 上试验一种奇怪的行为。我从 Internet 下载了一个可执行文件,当它被下载到 NTFS 分区时,它的相应 ADS 文件被标记为Zone 3

当我尝试运行它时,Windows 会警告我文件出处,至少它发生在 Windows 7、8 和 8.1 上。预期的行为是什么。

在 Windows 10 上发生了一些奇怪的事情。当我尝试运行它时,第一次尝试时,Windows 会删除此 ADS 文件,并且不会警告我有关文件出处的信息。由于此文件不再存在,因此在以后的运行中不会发出警告。这种行为出现在我能够尝试的所有 Windows 10 上(大约 5 个)。

这是正常行为吗?如果我需要警告,是否可以启用它?

更新:使用Process Monitor我能够检测到Explorer.exe打开 ADS 文件Delete Desire Access,这会产生文件删除。这样一来,我现在的问题应该是:为什么Explorer.exe会删除ADS文件?有可能避免吗?

更新 2:我发现这个问题在我收到警告的 Windows 10 版本 1607 上无法重现。它存在于版本 1703 上。

来自 Process Monitor 的相关行

4:28:27.4451881 PM  Explorer.EXE    7120    CreateFile  C:\Users\admin\Downloads\putty.exe:Zone.Identifier  SUCCESS Desired Access: Read Attributes, Delete, Disposition: Open, Options: Non-Directory File, Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a, OpenResult: Opened
4:28:27.4454276 PM  Explorer.EXE    7120    QueryAttributeTagFile   C:\Users\admin\Downloads\putty.exe:Zone.Identifier  SUCCESS Attributes: A, ReparseTag: 0x0
4:28:27.4454961 PM  Explorer.EXE    7120    SetDispositionInformationFile   C:\Users\admin\Downloads\putty.exe:Zone.Identifier  SUCCESS Delete: True
4:28:27.4455650 PM  Explorer.EXE    7120    CloseFile   C:\Users\admin\Downloads\putty.exe:Zone.Identifier  SUCCESS 
4:28:42.0470995 PM  Explorer.EXE    7120    CreateFile  C:\Users\admin\Downloads\putty.exe:Zone.Identifier  NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a

完整的日志在这里。时间不会太长。

4

1 回答 1

2

在 MSDN 论坛讨论这个问题后,我发现我的问题是新的 Windows Defender SmartScreen 的行为。

由于 Windows 10 版本 1703 Windows Defender 改变了它的行为。现在 SmartScreen 检查可执行文件是否可信,如果是,它允许运行而不显示警告并删除其 ADS 文件。

因此解决方案是在 Windows Defender 中为 SmartScreen 设置“检查应用程序和文件”选项。

于 2017-07-17T17:38:11.540 回答