Как разрушить вашу сеть Windows (Часть 1)

Опубликовано: 20 Марта, 2023

Введение

Как администратор компьютеров 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. Эти два файла содержат параметры локальной политики, которые применяются к компьютеру и пользователю соответственно.

Изображение 18611
Рисунок 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.

Изображение 18612
Рисунок 2: Этот компьютер с Windows действительно безопасен! Но попробуйте использовать его, чтобы выполнить какую-нибудь работу…

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

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

Резюме на данный момент

  • Хотите сделать ваши компьютеры с Windows менее надежными? Пишите напрямую в разделы реестра, где хранятся параметры политики!
  • Хотите скопировать параметры локальной политики с одного компьютера на другой в рабочей группе? Скопируйте файлы Registry.pol, скрестите пальцы и надейтесь, что все еще работает! Но этого не будет, скорее всего что-то сломается.
  • Хотите сделать свои компьютеры по-настоящему безопасными? Отключите кучу служб, которые настроены на автоматический запуск по умолчанию. Поздравляем, ваш компьютер теперь более безопасен, но менее надежен (и менее удобен в использовании)!

Подробнее в следующей статье этой серии…