В предыдущих версиях Windows фильтр SmartScreen был функцией Internet Explorer, а в Windows 8 он стал частью файловой системы Windows. Но как узнать, какие файлы были загружены, а какие - с вашего ПК? Читайте дальше, чтобы узнать, как How-To Geek исследовал файловую систему.
Примечание. Информация, представленная в этой статье, предназначена только для образовательных целей.
Так в чем же волшебство?
Что ж, магия, используемая здесь, на самом деле состоит из довольно простых технологий, в первую очередь Интернет-зон.
Хотя вы можете получить доступ к настройкам этих зон Интернета только через Internet Explorer, они используются в различных местах Windows. Каждый раз, когда вы загружаете файл, поступающий из зоны Интернета, он помечается специальным идентификатором зоны, и этот идентификатор сохраняется в альтернативном потоке данных. Чтобы убедиться в этом, я решил открыть мой любимый язык сценариев PowerShell. Я написал следующий сценарий, чтобы увидеть альтернативные потоки данных каждого файла в моей папке загрузок.
$ Files = Get-ChildItem -Path C: \ Users \ Taylor \ Downloads
foreach ($ File в $ Files)
{
Get-Item $ File.FullName -Stream *
}
Вы видите последний файл в списке, у него есть дополнительный поток данных под названием Zone.Identifier, о чем мы и говорили. Когда вы открываете файл в Windows, он проверяет этот специальный поток данных и запускает SmartScreen, если он существует. По-настоящему гиковски мы решили заглянуть внутрь потока данных, чтобы увидеть, какая информация в нем содержится.
Get-Item -Path C: \ Users \ Taylor \ Downloads \ socketsniff.zip -Stream Zone * | Get-Content
Хотя это может ничего не значить для нас, это определенно заставило нас задуматься о том, как обойти SmartScreen.
Как обойти SmartScreen в Windows 8
Первый способ обойти это - использовать графический интерфейс, если у вас есть файл с потоком данных Zone.Identifier, вы можете легко разблокировать его из свойств файла. Просто щелкните файл правой кнопкой мыши и откройте его свойства в контекстном меню, а затем нажмите кнопку «Разблокировать», поэтому теперь, когда вы открываете файл, SmartScreen не запускается.
Вы также можете использовать новый командлет разблокировки файла в PowerShell 3, который является эквивалентом сценария нажатия кнопки разблокировки.
$ Files = Get-ChildItem -Path C: \ Users \ Taylor \ Downloads
foreach ($ File в $ Files)
{
Unblock-File –Path $ File.Fullname
}
Последний способ обойти SmartScreen - просто добавить веб-сайт, с которого вы загружаете, в зону интрасети в Internet Explorer.
Конечно, мы рекомендуем никогда этого не делать, поскольку эта зона зарезервирована для сайтов интрасети, и это сделает вас уязвимыми для вредоносных программ, исходящих с этих сайтов в списке, и в этой заметке я оставляю вас с этим сценарием для поиска файлов на вашем ПК, которые происходит из зоны Интернета.
$ Files = Get-ChildItem -Path C: \ Users \ Taylor \ Downloads
foreach ($ File в $ Files)
{
Get-Item $ File.FullName -Stream * | % {if($_.Stream -like “Zone*”){$File.Name}}
}
Вот и все.