РАЗБОР
Pentest
Статья
Bypass Windows ZoneID
[ обложка статьи ]
Режим чтения
Прежде чем переходить к практике, стоит понимать, зачем вообще нужен ZoneID и почему его обход так интересен атакующим. Mark of the Web — это не просто техническая метка, а часть реальной цепочки защиты Windows: на основе этого атрибута SmartScreen решает, предупреждать ли пользователя об опасном файле, а офисные приложения — блокировать ли автозапуск макросов в документах, полученных из интернета. Именно поэтому обход простановки ZoneID давно стал самостоятельной техникой в арсенале атакующих: вредоносные макросы, замаскированные архивы и другие приёмы нередко строятся именно на том, чтобы файл не получил отметку об интернет-происхождении. Ниже разберём, как устроен этот механизм на низком уровне и почему его так легко обойти.
Так что же это такое ?
ZoneID в Windows - это атрибут, который присваивается файлам и потокам данных для определения их безопасности и источника. ZoneID указывает на зону безопасности, из которой был получен файл или поток данных. Этот атрибут используется операционной системой Windows для определения уровня доверия к файлу или данных и принятия соответствующих мер безопасности.
Параметр ZoneID может принимать пять значений от 0 до 4.
Мини-Теория
Я думаю все видели данные Security варнингиТак что же это такое ?
ZoneID в Windows - это атрибут, который присваивается файлам и потокам данных для определения их безопасности и источника. ZoneID указывает на зону безопасности, из которой был получен файл или поток данных. Этот атрибут используется операционной системой Windows для определения уровня доверия к файлу или данных и принятия соответствующих мер безопасности.
Пример работы ZoneID
К примеру поднимем маленький питоновский веб-сервер на порту 8000 и создадим файл main.goПосле чего скачиваем любой файл с нашего веб-сервера, сторонней машиной и проверяем ZoneID установленного файла
И мы видим, что у нас успешно установился Stream : Zone.Identifier у которого ZoneID = 3, т.е 3 — Internet (Интернет)
Параметр ZoneID может принимать пять значений от 0 до 4.
- 0 — Local machine (Локальный компьютер)
- 1 — Local internet (Местная сеть)
- 2 — Trusted sites (Надежные сайты)
- 3 — Internet (Интернет)
- 4 — Restricted sites (Опасные сайты)
- AppZoneId
- IP-адрес хоста
- URL-адрес хоста
- LastWriterPackageFamilyName
- ReferrerUrl
- ZoneID
Как же обойти этот ZoneID ? (Ответ оказался очень страным и простым)
При установке файлов через Curl, Wget, Invoke-WebRequest эти инструменты не устанавливают метаданные, которые Windows использует для установки ZoneID
AI-выжимка
сгенерировано ИИ
Тезисы статьи скоро
Статья читается полностью. Тезисы со ссылками на разделы появятся позже.
Содержание
Codeby Academy
Практика и мастерство
От основ до продвинутого — программы для практиков Codeby.
Перейти к курсу →
Продолжить чтение
Следующий разбор
Как HackerLab штурмовала GIS DAYS 2026: два дня, четыре инфраструктуры и один дорогой урок
Комментарии
0