Каждый раз, когда вы загружаете какой-либо файл на жесткий диск через браузер, Windows автоматически помечает его как исходящий из Интернета и потенциально опасный. В результате, когда вы откроете соответствующий файл, в зависимости от типа, Windows предупредит вас в диалоговом окне или запретит выполнение файла полностью, пока вы не отметите его как безопасный.
Вы когда-нибудь задумывались, как Windows отслеживает этот флаг для этих файлов, как вы можете легко (массово) удалить его для файлов, которые, как вы знаете, безопасны, и / или добавить этот флаг (вместе с защитой, которую он обеспечивает) в любой файл?
Где Windows отслеживает статус загруженных из Интернета?
Рассмотрим следующие два файла, оба из которых являются копиями загруженного установочного файла для Microsoft XML Notepad 2007. Хотя каждый из них назван по-разному (числа 1 и 2 добавлены в конец), вы можете видеть, что они полностью идентичны, как проверено. по их хешу MD5.
Однако, когда запускается файл, заканчивающийся на 1, мы получаем следующее диалоговое окно, которое соответствующим образом предупреждает нас, что запуск файлов, загруженных из Интернета, может быть опасным, в то время как запуск файла, заканчивающегося на 2, не отображает это же предупреждение, даже если он был загружен из в Интернете. Как мы видим выше, файлы идентичны, так почему только одна копия отображала это предупреждение?
Причина в том, что файл 1 имеет альтернативный поток данных (ADS) с именем «Zone.Identifier», в котором хранится информация о происхождении файла, а в файле 2 - нет (поскольку этот ADS был удален, о чем мы расскажем ниже).
Используя утилиту Sysinternals Streams (которую мы скопировали в наш каталог C: \ Windows), мы видим, что XmlNotepad1.msi содержит единственный ADS с 26 байтами данных, а XmlNotepad2.msi не имеет никаких ADS. По сути, Windows знает, что файл пришел из Интернета на основе данных внутри ADS под названием «Zone.Identifier».
Кроме того, вы можете идентифицировать ADS с помощью команды:
dir / r [optional_file_filter]
Как удалить статус "Скачано из Интернета"?
Важно отметить, что это соответствующее предупреждение (по очевидным причинам), и Windows по праву «дважды проверяет» или полностью блокирует файлы с таким статусом. Однако, если вы знаете, что файлы, о которых идет речь, безопасны, есть несколько способов справиться с удалением флага состояния: вы можете сделать это вручную (файл за файлом) или массово удалить его для каждого файла в каталоге.
Удаление вручную
Выше мы показали, как обнаружить этот специальный флаг ADS с помощью командной строки, однако вы можете легко увидеть и удалить этот статус, просмотрев свойства соответствующего файла. Когда файл помечен как загруженный из Интернета, в нижней части вкладки «Общие» отображается предупреждение системы безопасности.
Нажатие кнопки «Разблокировать» удалит загруженный из Интернета флаг состояния (т.е. удалит ADS «Zone.Identifier») и все предупреждения и / или блоки, связанные с ним.
Массовое удаление
С другой стороны, если у вас много файлов, на которых вы хотите удалить этот флаг состояния, это можно легко сделать с помощью утилиты Streams, которую мы использовали выше (мы снова скопировали этот файл в наш каталог C: \ Windows).
Откройте командную строку в каталоге, в котором находятся файлы. Для этого можно, удерживая нажатой клавишу Shift, щелкнуть правой кнопкой мыши в пустой области папки, а затем выбрать «Открыть окно команд здесь».
Установив каталог в командной строке, запустите:
стреамс -с -д .
В качестве альтернативы вы можете ввести полный путь к каталогу вместо точки, если вы хотите запустить это в папке, отличной от текущего местоположения командной строки.
Эта команда удалит все ADS (не только Zone.Identifier) из любых файлов в текущем каталоге и его подпапках. В нашем случае у нас было 2 файла с данными ADS, и оба они были удалены. Если у вас есть много файлов, для которых вы хотите удалить этот статус, эта команда действительно может сэкономить вам время.
Как мне добавить статус "Скачано из Интернета" в любой файл?
Интересным фактом об этом флаге является то, что текстовые данные, хранящиеся в ADS «Zone.Identifier», одинаковы для всех файлов. В результате вы можете добавить ADS с именем «Zone.Identifier» с этим текстом в любой файл, и Windows автоматически применит дополнительные меры безопасности.
Например, если мы хотим добавить статус загруженного из Интернета обратно в файл XmlNotepad1.msi, процедура проста.
Выполните команду:
блокнот [filename]: Зона.Идентификатор
Поскольку этот ADS не существует, Windows спросит нас, хотим ли мы его создать. Ответьте Да.
В Блокноте введите точный текст:
[ZoneTransfer]
ZoneId = 3
Сохраните изменения и закройте Блокнот.
Теперь всякий раз, когда вы запускаете XmlNotepad1.msi или просматриваете его свойства, предыдущие предупреждения будут отображаться.
Опять же, вы можете сделать это с любым файлом: MP3, DOC, CHM и т. Д., И Windows будет рассматривать его как ненадежный, пока соответствующий флаг не будет удален.