Как разрушить вашу сеть Windows (Часть 1)
Введение
Как администратор компьютеров Windows в среде Active Directory, вы, вероятно, ищете «лучшие методы», которые могут помочь обеспечить безопасность вашей сети и данных, хорошее управление вашими клиентами и серверами, а также работу ваших приложений и служб. Это связано с тем, что безопасность вашего положения в вашей компании, вероятно, зависит от того, насколько вы поддерживаете безопасную, надежную и быструю ИТ-инфраструктуру, на которую может рассчитывать бизнес вашей компании 24 часа в сутки, 7 дней в неделю, 365 дней в году.
К сожалению, не на все опубликованные передовые практики можно положиться, поэтому в дополнение к поиску лучших практик вам также следует следить за «худшими практиками» или тем, чего вам определенно следует избегать. Поэтому, если вы хотите, чтобы ваша среда Windows была безопасной, надежной, управляемой и хорошо работала, не делайте ничего из того, что описано в этой короткой серии статей, иначе вы, скорее всего, в конечном итоге разрушите свою сеть.
Итак, без лишних слов, приступим! Вот четыре способа, которыми вы можете разрушить вашу сеть Windows. И чтобы убедиться, что каждый пункт, который я пытаюсь сделать, предельно ясен, я выделю каждое из них в темах ниже. Обратите внимание, что эти темы расположены в произвольном порядке. Настоящий вопрос заключается в следующем: в скольких из них вы были виновны?
Управление политикой путем непосредственного управления реестром
Если вы хотите управлять учетными записями пользователей и компьютерами с помощью политик, делайте это с помощью групповой политики. Не делайте этого, устанавливая значения реестра, в которых хранятся параметры политики (HKLMSoftwarePolicies и HKCUSoftwarePolicies) напрямую с помощью сценариев (с помощью команд.reg или через PowerShell).
Почему бы и нет? Потому что именно в этих местах реестра хранятся результаты политики. Другими словами, реестр не является авторитетным источником политик, это просто место, где хранятся результаты применения политик к компьютеру или пользователю. Поэтому, если вы напрямую редактируете реестр, создавая или изменяя значения в разделе HKLMSoftwarePolicies или HKCUSoftwarePolicies с помощью сценариев, ваши изменения реестра могут быть перезаписаны при следующем обновлении групповой политики в вашей среде.
Управление политикой путем xcopy файлов Registry.pol
Каждый компьютер Windows, клиент или сервер имеет локальный объект групповой политики (LGPO), расположенный в папке %systemroot%System32GroupPolicy. Эта скрытая папка содержит две подпапки, Machine и User, и каждая из этих подпапок содержит файл с именем Registry.pol, как показано на рисунке 1. Эти два файла содержат параметры локальной политики, которые применяются к компьютеру и пользователю соответственно.

Рисунок 1: Политика компьютера для компьютера с Windows.
В старые времена Windows NT 4.0 и более ранних версиях можно было экспортировать файл Config.pol (аналог файлов Registry.pol более поздних версий Windows), напрямую вносить в него изменения и копировать измененный файл политики в другие компьютеры, чтобы напрямую применять параметры политики к этим компьютерам.
К сожалению, старые привычки умирают с трудом. Не делайте этого с сегодняшними версиями Windows. Использование xcopy для прямого копирования файлов Registry.pol на компьютеры не поддерживается. Это не поддерживаемый способ применения политики к компьютерам Windows даже в автономных средах (рабочей группы). И это может привести к тому, что целевые компьютеры будут демонстрировать неожиданное поведение, потому что это приведет к перезаписи любых существующих параметров политики на компьютере. И вообще, вы никогда не захотите делать что-либо, что может привести к неожиданному поведению ваших компьютеров с Windows. Почему? Потому что неожиданное поведение приравнивается к ненадежности, а наличие надежной ИТ-инфраструктуры — одна из основных целей вашей работы в качестве администратора.
Кроме того, когда вы используете xcopy для прямого копирования файлов Registry.pol, вы переводите целевые компьютеры в неподдерживаемое состояние. А это значит, что даже служба поддержки Microsoft, скорее всего, не сможет вам помочь, если вы таким образом испортите свою сеть.
Позвольте мне повторить это еще раз в нескольких словах, чтобы сделать это действительно ясным:
- Не копируйте папку %systemroot%System32GroupPolicy с одного компьютера на другой.
- Не создавайте автономный эталонный компьютер и не копируйте папку %systemroot%System32GroupPolicy с эталонного компьютера на другие автономные компьютеры (рабочей группы).
- Кроме того, не используйте Secedit.exe для экспорта параметров локальной политики с одного автономного компьютера, а затем снова используйте Secedit.exe для импорта экспортированных параметров на другие автономные компьютеры. Причина, по которой этого не нужно делать, заключается в том, что Secedit.exe экспортирует некоторые, но не все параметры политики, поэтому вы, вероятно, в конечном итоге пропустите некоторые параметры, что может привести к неожиданному поведению.
Если вам необходимо напрямую изменить параметры локальной политики на компьютерах с Windows, особенно в средах рабочих групп, где нельзя использовать групповую политику, у вас есть два основных варианта:
- Напишите код C++, использующий API IGroupPolicyObject, как описано здесь.
- Используйте утилиты, созданные Аароном Маргозисом, которые описаны и доступны по этой ссылке (и обязательно используйте последнюю версию утилит, найденную в конце сообщения в блоге Аарона)
Отключение служб для уменьшения поверхности атаки
Обычная «лучшая практика» для более ранних версий Windows заключалась в том, чтобы рекомендовать администраторам отключать любые службы Windows, которые «не нужны в их среде», чтобы «уменьшить поверхность атаки» своих компьютеров. Идея заключалась в том, что чем больше служб было запущено на ваших компьютерах, тем больше портов в сети они прослушивали, а это означало, что у злоумышленников было больше дверей. И если у одного из этих сервисов есть недостаток в дизайне и его можно каким-то образом использовать… вы поняли идею.
Поэтому у администраторов часто было привычкой отключать любые службы, которые, по их мнению, не нужны их среде, «просто на всякий случай», например:
- Не нужно ничего печатать с компьютера? Отключите службу диспетчера очереди печати, чтобы быть в безопасности.
- Не использовать автономные файлы? Отключите службу автономных файлов, чтобы быть в безопасности.
- Не используете EFS для шифрования файлов и папок на компьютере? Отключите службу EFS, чтобы быть в безопасности.
- Используете сторонний брандмауэр? Брандмауэр Windows не нужен, поэтому для безопасности отключите базовый механизм фильтрации и службы брандмауэра Windows.
Вы поняли идею, и я уверен, что вы, вероятно, делали что-то подобное в прошлом, чтобы «сделать ваш компьютер более безопасным», потому что я знаю, что сделал это. На рис. 2 показан пример действительно защищенного компьютера с Windows.

Рисунок 2: Этот компьютер с Windows действительно безопасен! Но попробуйте использовать его, чтобы выполнить какую-нибудь работу…
Так стоит ли вам это делать? Нет, пожалуйста, не делай этого. Почему бы и нет? Потому что, когда Microsoft разрабатывает версию Windows, они тестируют ее с использованием определенного набора включенных служб Windows, который называется конфигурацией Out-Of-Box (OOB). Они не проверяют его с отключенной службой диспетчера очереди печати или отключенным брандмауэром Windows, поэтому, если вы решите отключить какие-либо службы, подобные этим, для которых настроен автоматический тип запуска, вы вступите на неизведанную территорию. В результате некоторые функции могут работать не так, как рекламируется, или время от времени могут вести себя странным и неожиданным образом. Другими словами, ваши компьютеры станут менее надежными, чем если бы у вас были просто службы по умолчанию, настроенные так, как они поставляются из коробки.
Позвольте мне сказать это по-другому. Итак, вы отключили службу диспетчера очереди печати, чтобы сделать свой компьютер более безопасным? Поздравляем! Вы только что сделали свой компьютер менее надежным!
Резюме на данный момент
- Хотите сделать ваши компьютеры с Windows менее надежными? Пишите напрямую в разделы реестра, где хранятся параметры политики!
- Хотите скопировать параметры локальной политики с одного компьютера на другой в рабочей группе? Скопируйте файлы Registry.pol, скрестите пальцы и надейтесь, что все еще работает! Но этого не будет, скорее всего что-то сломается.
- Хотите сделать свои компьютеры по-настоящему безопасными? Отключите кучу служб, которые настроены на автоматический запуск по умолчанию. Поздравляем, ваш компьютер теперь более безопасен, но менее надежен (и менее удобен в использовании)!
Подробнее в следующей статье этой серии…