Вручную пометить исполняемый файл как «с другого компьютера» в Windows 10
Когда я загружаю программное обеспечение в Windows, они получают флаг безопасности, который я могу увидеть, щелкнув его правой кнопкой мыши и выбрав Properties
. На General
вкладке есть раздел с надписью «Безопасность: этот файл пришел с другого компьютера и может быть заблокирован для защиты этого компьютера» с флажком для его разблокировки.
Я разработчик программного обеспечения и хочу провести с ним небольшое тестирование.
Как только я разблокирую файл, флажок снимается. Как я могу вручную заблокировать его?
Ответы
Файлы помечаются как «с другого компьютера» с использованием альтернативных потоков данных NTFS, как любезно объяснил Джеймс в другом вопросе. Я также нашел хорошее руководство под названием Introduction to Alternate Data Streams .
Вы можете запускать команды для чтения и записи данных ADS из командной строки:
MORE < "myapp.exe:Zone.Identifier"
(
ECHO [ZoneTransfer]
ECHO ZoneId=4
)>myapp.exe:Zone.Identifier
И из Powershell:
Get-Content -Path .\myapp.exe -Stream Zone.Identifier
Set-Content -Path .\myapp.exe -Stream Zone.Identifier -Value "[ZoneTransfer]`nZoneId=4"
Некоторые браузеры также хранят там другие метаданные, такие как URL-адреса Referer и Host для загрузки.
Вы можете узнать больше о зонах в разделе «О зонах безопасности URL» . По умолчанию это:
Value Setting
------------------------------
0 My Computer
1 Local Intranet Zone
2 Trusted sites Zone
3 Internet Zone
4 Restricted Sites Zone
Вы можете прочитать о других известных именах ADS в разделе «Известные альтернативные имена потоков» .