Как Windows узнает, что файл был загружен из интернета

Возможно, при просмотре свойств скачанных с интернета файлов вам уже приходилось сталкиваться с предупреждением «Этот файл получен с другого компьютера…» и прочее, и прочее. Причём такое предупреждение выводится не только для исполняемых файлов, но и простых текстовых документов, картинок, аудио и других «нейтральных» типов данных. Антивирусная программа тут ни причём — метку ставит сама система. Однако каким образом Windows определяет, что файл был загружен из интернета, а не создан на локальном компьютере?

Очень даже просто. Все файлы, которые скачиваются с помощью браузера, получают особый идентификатор, представляющий собой альтернативный поток NTFS также именуемый Alternate Data Streams. Данный механизм поддерживается большинством популярных браузеров, включая Chrome и Firefox. По сути, такой поток есть ничто иное, как набор метаданных, причём их размер может даже превышать размер самого файла. Ни переименование, ни перемещение отмеченного ADS файла не снимает с него «защиты».

Alternate Data Streams

Несмотря на то, что предупреждение дополнительной системы безопасности доступно для просмотра из свойств файла, с альтернативными потоками Проводник Windows работать не может, как не могут с ними работать большинство сторонних приложений. Частично прочитать их можно с помощью командной строки. Выберем для примера папку, в которой есть скачанные из интернета файлы и выведем их список командой dir /r.

dir /r

В представленном примере альтернативный поток имеет файл Vikingi_Vikings.torrent, что хорошо видно на скриншоте. Поскольку метка Zone.Identifier:$DATA нам ещё ничего не говорит, откроем содержимое потока в обычном Блокноте.

Notepad.exe Vikingi_Vikings.torrent:Zone.Identifier

В обычном Блокноте

В результате получаем идентификатор зоны передачи:

[ZoneTransfer]
ZoneId=3

Идентификатор зоны передачи

Эта метка указывает на текущие настройки зон безопасности, те самые, получить доступ к которым можно через свойства браузера в панели управления. Параметр ZoneId может принимать пять значений от 0 до 4. Когда пользователь загружает файл, браузер автоматически определяет зону безопасности и ставит ему соответствующую этой зоне метку. Файлы, загруженные с местной сети, получают метку 1, значение 2 присваивается файлам, скачанным с надёжных сайтов, 3 — с сайтов, входящих в среднюю зону безопасности, идентификатор 4 получают файлы, скачанные с потенциально опасных ресурсов. Метка 0 служит для обозначения файлов, полученных с локальной машины.

ZoneId

Какого-либо особого значения для пользователя метка ZoneTransfer не имеет. Необходимость в удалении альтернативного потока может возникнуть разве что в тех случаях, когда система начинает чинить препятствия при работе с отмеченными файлами. Удалить же поток очень просто — достаточно нажать в свойствах файла «разблокировать» и сохранить результат. Ну а если вы хотите, чтобы система не ставила идентификаторов загруженным из сети файлам, сохраняйте их на носитель с файловой системой, отличной от NTFS.

Оцените Статью:

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *