Windows: как разблокировать файлы, скачанные из Интернета

При попытке открыть или запустить исполняемый файл/скрипт, скачанный из Интернета, Windows отображает предупреждение системы безопасности . В этой статье мы рассмотрим, как Windows определят, что файл был загружен из Интернета и как разблокировать файл.

Как Windows определяет, что файл был скачан из Интернета

Все современные браузеры при загрузке любого файлов из Интернета устанавливают в его метаданных специальную метку в альтернативном потоке данных NTFS (Alternate Data Streams).

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

Вы можете проверить наличие метки в альтернативном потоки данных с помощью PowerShell:

Get-Item -Path "C:downloadsFido.ps1" -Stream *

В нашем примере файлу, скачанному из Интернета каталоге назначен альтернативный поток Zone.Identifier . Вы можете получить его значение:

Get-Content -Path .Fido.ps1 -Stream Zone.Identifier

или так:

notepad.exe file.exe:Zone.Identifier

В алтернативном потоке файла в секции [ ZoneTransfer ] указан идентификатор зоны передачи ZoneId . Эти зоны безопасности встречаются в настройках Internet Properties в панели управления ( inetcpl.cpl ). Возможные значения ID зоны:

  • 0 — Local machine (Локальный компьютер)
  • 1 — Local intranet (Местная сеть)
  • 2 — Trusted sites (Надежные сайты)
  • 3 — Internet (Интернет)
  • 4 — Restricted sites (Опасные сайты)

В нашем случае для файла в альтернативном потоке данных установлен ID=3. Это значит, что файл был загружен из Интернета. Windows при запуске файла проверяет атрибут ZoneId, и если файл получен из недоверенного источника (ZoneId=3 или 4), его запуск блокируется.

Word тоже проверяет наличие метки Zone.Identifier у файлов и открывает документы, полученные из Интернета в защищенном режиме:

Protected view_x000D_Be careful – files from the Internet can contain viruses. Unless you need to edit, it’s safer to stay in Protected View._x000D_

Разблокировать скачанный из Интернета файл в Windows

Вы можете вручную удалить данную метку (альтернативный поток) у файла.

  1. Откройте свойства файла;
  2. Вразделе Security должна присутствовать надпись:
    This file came from another computer and might be blocked to help protect this computer

    .

  3. Отметьте опцию Unblock и сохраните изменения.

Также вы можете разблокировать файл из Интернета с помощью PowerShell команды:

Unblock-File .Fido.ps1

Проверьте, что альтернативный поток данных был удален и файл разблокирован:

Get-Item -Path .Fido.ps1 -Stream *

У файла должен остаться только один поток с названием $Data .

Также для управления альтернативными потоками можно использовать утилиту streams от Microsoft.

Вы можете вручную назначить альтернативную метку любому файлу с помощью команды:

Set-Content -Path .Fido.ps1 -Stream Zone.Identifier -Value '[ZoneTransfer]','ZoneId=3'

Также удалить поток у файла можно так:

Remove-Item -Path .Fido.ps1 -Stream Zone.Identifier

Вы можете отключить блокирования запуска скачанных из Интернета файлов с помощью параметра GPO Do not preserve zone information in file attachments в разделе редактора групповых политик User Configuration -> Administrative Templates -> Windows Components -> Attachment Manage. Но это не рекомендуется.

Лучше сделать исключение для определенных расширений файлов (параметр GPO Inclusion list for low file types ).

admin

Share
Published by
admin

Recent Posts

Настройка Mercurial по HTTPS

Иногда mercurial, при скачивании и комитах ругается на https. Особенно на самоподписанные сертификаты. Чтобы заработал…

3 недели ago

Компиляция libvirt в Ubuntu

Компиляция libvirt Подробнее

3 недели ago

Ошибка libvirt permission denied: решение

Если возникает ошибка libvirt destroy lxc permission denied , при попытке остановить контейнер: _x000D_# virsh…

3 недели ago

Настройка редиректа в NGINX

Файлы с примерами редиректа для nginx Подробнее

3 недели ago

Включение gzip в NGINX

Как включить gzip сжатие в Nginx ? Подробнее

3 недели ago

Удаление postinst-скрипта в Linux

Иногда возникает ситуация, когда криво настроенные пакеты не устанавливаются в системе. У меня это произошло…

3 недели ago