Шаблоны безопасности для администратора.
Существует множество рекомендаций по настройкам, позволяющих повысить уровень безопасности операционной системы. Одни касаются разрешений файловой системы, вторые — настроек подсистемы аудита и управления учетными записями, третьи — настроек реестра. К примеру, для повышения уровня защиты стека протоколов TCP/IP Windows 2000 от DoS-атак транспортного уровня (Q315669) разработчики Microsoft рекомендуют изменить пять параметров реестра. Суммарные рекомендации насчитывают не одну сотню страниц, а применение их вручную может отнять довольно много времени даже у опытного администратора. В Windows 2000, а также в Windows NT 4.0, начиная с Service Pack 4, входит набор инструментов, называемый Security Configuration Tool Set, позволяющий объединить множество настроек операционной системы, относящихся к безопасности, в единый файл шаблона безопасности (security template). Дополнительную информацию по этой теме можно почерпнуть из материалов, приведенных во врезке «Дополнительные материалы». При помощи сформированных шаблонов можно автоматизировать проверку и настройку безопасности локальных компьютеров. Можно также применять их как часть политики безопасности предприятия к компьютерам в сети при помощи групповых политик (Group Policy).
Шаблон безопасности представляет собой обыкновенный текстовый файл с расширением *.inf, содержащий настройки следующих групп параметров операционной системы.
- Account Policies: политика паролей, правила блокировки учетных записей и настройки протокола Kerberos. Если данные политики применяются на уровне организационного подразделения (Organization Unit), то они затрагивают только локальную базу учетных записей (SAM). Настройки доменных учетных записей регулируются Default Domain Policy.
- Local Policies: система аудита, права пользователей и основные настройки безопасности.
- Event Log Settings: настройки трех журналов аудита (System, Application, Security).
- Restricted Groups: ограничение членства в группах.
- System Services: режим запуска и контроль доступа к системным службам.
- Registry: разрешения на доступ к данным реестра.
- File System: разрешения на доступ к файлам и папкам.
В стандартную поставку Windows 2000 входит несколько шаблонов, используемых для настройки системы на различные уровни безопасности.
При установке операционной системы применяется набор настроек по умолчанию (Defltwk.inf, Defltsv.inf, Defltdc.inf, в зависимости от роли компьютера — рабочая станция, сервер или контроллер домена). Данные шаблоны сохраняются в папке %systemroot%inf, а тот из них, который применялся на этапе установки, сохраняется под именем %systemroot%security emplatessetup security.inf.
В случае обновления операционной системы Windows NT 4.0 шаблоны безопасности не применяются, и настройки системы сохраняются от предыдущей версии системы. Для таких систем желательно использовать шаблоны Basic из папки %systemroot%security emplates. Данные шаблоны идентичны шаблонам по умолчанию, за исключением того, что в них отсутствуют ограничения на членство в группах и настройка пользовательских прав.
Если Windows 2000 устанавливается на существующую систему Windows 9х, то применяются шаблоны безопасности по умолчанию. Однако если в системе была включена поддержка профилей пользователей и файловая система конвертируется в NTFS, все локальные пользователи становятся членами группы «Администраторы». В связи с этим после установки необходимо настроить членство в данной группе.
Дополнительно в стандартную поставку входят следующие шаблоны:
- Nottssid.inf удаляет из всех списков разрешений файловой системы группу безопасности Terminal Server Users. Таким образом, разрешения на объекты файловой системы будут определяться разрешениями конкретных пользователей;
- Compatws.inf снижает уровень безопасности системы путем установки более демократичных разрешений на объекты файловой системы и разделы реестра. Используется для обеспечения работоспособности устаревших приложений с привилегиями стандартного пользователя;
- Ocfilesw.inf и Ocfiles.inf устанавливают дополнительные разрешения файловой системы, повышающие безопасность приложений, входящих в стандартную поставку Windows 2000, таких, как Internet Explorer, NetMeeting, IIS 5.0 и ряда других;
- Securews.inf и Securedc.inf повышают защищенность операционной системы путем введения более жесткой политики учетных записей, настроек подсистемы аудита и безопасности;
- Hisecws.inf и Hisecdc.inf применяются при работе в защищенных сетях, где используются только операционные системы Windows 2000 или Windows NT. Повышается уровень безопасности сетевого обмена за счет отказа от протоколов аутентификации LM и NTLM и введения обязательной цифровой подписи коммуникаций SMB и шифрования Secure Channel.
Экран 1. Оснастка Security Templates. |
Для формирования или модификации шаблонов можно использовать обычный текстовый редактор. Более удобный способ предоставляет графическая утилита Security Templates (см. Экран 1), оформленная в виде оснастки консоли управления Microsoft (MMC) и входящая в стандартную поставку системы. Для работы с оснасткой ее необходимо:
- запустить консоль управления (mmc.exe);
- выбрать пункт меню Console > Add/Remove Snap-in;
- нажать кнопку Add;
- выбрать Security Templates.
В древовидном списке отображаются шаблоны безопасности (по умолчанию находящиеся в папке %SystemRoot%security emplates) и группы параметров. В правой части окна — непосредственно сами параметры и их значения.
В зависимости от группы, используются различные подходы к настройке параметров. В группах Account Policies, Local Policies, Event Log и System Services применяется стандартный набор параметров, которые могут в данном шаблоне не определяться (Not definded) или принимать то или иное значение.
В группах Restricted Groups, Registry и File System можно добавлять объект, настройки которого будут модифицироваться шаблоном безопасности. Значения, которые могут принимать параметры, в данном случае зависят от группы.
Настройка Restricted Groups позволяет ограничить членство во встроенных группах, а также указать те группы, в которые данные группы могут входить. На приведенной копии экрана (см. Экран 2) членство в группе локальных администраторов ограничивается учетной записью локального администратора и администраторов домена. Кроме того, группа Administrators не может быть включена ни в одну из групп безопасности.
Экран 2. Настройка Restricted Groups. |
В группах Registry и File System устанавливаются разрешения на разделы реестра и объекты файловой системы, соответственно. Для удобства конфигурации введены дополнительные способы наследования разрешений:
- Propagate inheritable permissions to all subkeys (subfolders and files) позволяет распространять разрешения на нижестоящие разделы реестра или объекты файловой системы. При этом новые разрешения будут добавлены к текущим настройкам;
- Replace existing permissions on all subkeys (subfolders and files) with inheritable permissions также распространяет разрешения на нижестоящие разделы реестра или объекты файловой системы, однако текущие разрешения полностью заменяются настройками шаблона;
- Do not allow permissions on this key (file or folder) to be replaced дает возможность настроить разрешения для разделов реестра или объектов файловой системы вне зависимости от наличия в шаблоне настроек разрешений для вышестоящих объектов.
Как уже говорилось выше, для редактирования шаблона можно использовать простой текстовый редактор. Так, в соответствии с рекомендациями Microsoft Security Bulletin MS02-064, для изменения установленных по умолчанию разрешений корня системного раздела, которые могут привести к внедрению в систему «троянских» программ, в раздел [File Security] шаблона безопасности следует добавить следующую строчку, описывающую разрешения на языке Security Descriptor Definition Language: «%SystemDrive%»,0,»D:AR(A;OICI;GA;;;BA)(A;OICI;GA;;;SY)(A;OICIIO;GA;;;CO) (A;CIOI;GRGX;;;BU)(A;CI;0x00000004;;;BU) (A;CIIO;0x00000002;;;BU)(A;;GRGX;;;WD)».
Как видно из примера, в качестве пути или его составляющей можно использовать переменные окружения, такие, как «%SystemDrive%, %USERPROFILE%, %SYSTEMROOT%, %CommonProgramFiles% и т. п. Для просмотра текущих переменных окружения можно воспользоваться командой Set.
Набор параметров, используемых для конфигурации системы в группе Local PolicesSecurity Options, может быть расширен. Рассмотрим данную возможность на примере добавления в шаблон безопасности параметра защиты стека TCP/IP от DoS/SYN-атак.
Для этого необходимо в файл %SystemRoot%infsceregvl.inf внести информацию о разделе реестра, подлежащем модификации, в следующем формате: раздел реестра, тип, отображаемое_имя, тип_отображения: HKEY_LOCAL_MACHINESYSTEMCurrentControlSet ServicesTcpipParametersSynAttackProtect,4,»TCP SYN attack protection»,3,0|»Typical level»,1|»Medium level»,2|»High level».
В данном случае модифицируется раздел реестра SynAttackProtect типа REG_DWORD (4), с отображаемым именем TCP SYN attack protection. Данный раздел может принимать следующие значения: 0 — типичная защита, 1 — средний уровень защиты и 2 — высокий уровень защиты. В процессе редактирования значения будут отображаться в виде выпадающего списка.
После внесения изменений необходимо применить изменения при помощи команды regsvr32 scecli.dll.
В результате в настройках шаблона появится новый параметр TCP SYN attack protection (см. Экран 3).
Экран 3. Дополнительный параметр Security Options. |
Для удаления параметра необходимо отменить изменения в файле sceregvl.inf, добавить раздел реестра в секцию delete these values from current system, после чего применить изменения, воспользовавшись командой regsvr32 scecli.dll.
Сформированный шаблон может применяться для анализа текущего состояния операционной системы, а также для ее конфигурации в соответствии с настройками шаблона. Для этого можно использовать утилиту командной строки secedit.exe.
Анализ системы осуществляется запуском утилиты со следующими параметрами: secedit /analyze /DB файл_базы [/CFG файл_шаблона] [/log файл_журнала] [/verbose] [/quiet], где
- файл_базы - обязательный параметр, указывающий на имя файла базы данных, на основе которой осуществляется анализ системы безопасности. Если файла базы в системе нет, необходимо указать имя файла шаблона;
- файл_шаблона указывает на файл шаблона безопасности, который будет импортироваться в базу данных и использоваться для анализа конфигурации;
- файл_журнала задает имя файла, в котором будет сохранен отчет об анализе. По умолчанию %SystemRoot% Security LogsScesrv.log;
- verbose - вывод подробного отчета о процессе анализа;
- quiet отменяет вывод на экран и запись в файл журнала. Результаты анализа сохраняются в базе данных.
Для конфигурации системы в соответствии с шаблоном безопасности используется следующий синтаксис: secedit /configure [/DB файл_базы] [/CFG файл_шаблона] [/overwrite] [/areas area1 area2...] [/log файл_журнала] [/verbose] [/quiet]
- overwrite перезаписывает все настройки в базе данных настройками из шаблона безопасности;
- areas указывает группы настроек, которые будут применятся к системе в конкретном сеансе. Данный параметр может принимать следующие значения: SECURITYPOLICY, GROUP_MGMT, USER_RIGHTS, REGKEYS, FILESTORE, SERVICES.
Также для анализа и конфигурации системы на основе шаблона безопасности можно использовать графический интерфейс оснастки консоли управления Security Configuration and Analysis, входящей в стандартную поставку системы. Для работы с оснасткой ее необходимо:
- запустить консоль управления (mmc.exe);
- выбрать пункт меню Console > Add/Remove Snap-in;
- нажать кнопку Add;
- выбрать Security Configuration and Analysis.
Функциональность ее схожа с функциональностью утилиты secedit, за исключением графического пользовательского интерфейса. Кроме того, данная утилита предоставляет возможность просмотреть результаты анализа состояния системы, выполненного при помощи утилиты secedit в режиме quiet — без вывода сообщений.
Описанные инструменты позволяют автоматизировать настройку параметров безопасности отдельного компьютера. Гораздо больший интерес для администратора представляет возможность использования шаблонов безопасности в групповых политиках. Через редактор групповых политик можно импортировать шаблон безопасности или сформировать его на основе текущих настроек компьютера.
Для этого необходимо нажать правой кнопкой мыши на пункте Computer Configuration> Windows Settings > Security Settings и выбрать соответствующий пункт меню (Import Template или Export Template).
Дополнительные возможности по настройке конфигурации безопасности дает использование инкрементальных шаблонов безопасности, импортированных в групповые политики на уровне организационных подразделений. Суть этого метода заключается в следующем:
- создается структура организационных подразделений, в которой выделяется общее для всех серверов подразделение и подразделения для серверов различных типов;
- учетные записи серверов организации копируются в созданные организационные подразделения;
- к общему для серверов подразделению применяется общая (так называемая Baseline) политика безопасности, обеспечивающая минимальную функциональность;
- к организационным подразделениям серверов применяется политика, основанная на инкрементальных шаблонах безопасности (см. Рисунок 1).
Рисунок 1. Применение инкрементальных шаблонов безопасности. |
Таким образом, к серверам будут применяться две групповые политики уровня организационного подразделения. Политика Baseline осуществляет конфигурацию общих параметров, таких, как разрешения файловой системы системного раздела, настройка подсистемы аудита, запрет запуска дополнительных служб и настройки параметров реестра. Далее, в зависимости от того, какую роль играет сервер (точнее, в каком OU находится), к нему применится инкрементальная политика, запускающая необходимые службы, настраивающая специфические разрешения реестра и файловой системы, а также дополнительные параметры реестра, которые понадобятся для обеспечения безопасного функционирования конкретной службы.
В состав Microsoft Security Toolkit входит ряд шаблонов безопасности, созданных для обеспечения подобной функциональности.
Шаблон безопасности baseline.inf, общий для всех серверов, основан на шаблоне hisecws.inf, и следствием применения этого шаблона могут стать неполадки, возникающие в сетях с устаревшими клиентами.
В настройках подсистемы аудита размер журналов равен 10 Мбайт. События в журналах не перезаписываются, что требует от администратора постоянного внимания к текущему состоянию журналов, их резервному копированию и очистке. Для автоматизации этого процесса можно воспользоваться программами на языках сценариев из Microsoft Script Center. Включен аудит доступа к объектам, что может привести к генерации большого количества записей в журнале безопасности.
Шаблон устанавливает жесткие разрешения на объекты файловой системы и разделы реестра. Кроме того, шаблон отключает множество системных служб, запускаемых по умолчанию. К числу наиболее критичных из них можно отнести WMI Services и Messenger Service и Alert Service.
Дополнительно в шаблон входит ряд параметров реестра, не настраиваемых при помощи утилиты Security Templates. К ним относятся настройки безопасности стека TCP/IP, Windows Sockets, запрет генерации имен файлов в формате 8.3, запрет автозапуска, запрет генерации хешей LM и настройка параметров NTLM Security Support Provider, требущих использования 128-битного ключа шифрования. Следует помнить, что данные настройки после удаления шаблона не будут отменены.
Основной шаблон безопасности для контроллеров домена BaselineDC.inf отличается от шаблона baseline.inf отсутствием настроек разрешений на разделы реестра, а также разрешением запуска системных служб, необходимых для функционирования контроллера домена.
К инкрементальным шаблонам безопасности, поставляемым с Microsoft Security Toolkit, относятся следующие шаблоны:
- Exchange BackEnd Incremental - шаблон, позволяющий настраивать Exchange 2000;
- Exchange DC incremental - настройки контроллеров домена, в котором используется Exchange 2000;
- File and Print Incremental - настройки файловых серверов и серверов печати;
- IIS Incremental - инкрементальный шаблон, позволяющий настраивать сервер Internet Information Server 5.0;
- Infrastructure Incremental - инкрементальный шаблон безопасности для серверов, обеспечивающих работу служб DNS, DHCP и WINS;
- OWA FrontEnd Incremental - политика, обеспечивающая настройку сервера Exchange 2000, используемого как сервер для Outlook Web Access.
Дополнительные шаблоны можно найти в рекомендациях по настройке безопасности операционной системы и различных служб.
Таким образом, шаблоны безопасности представляют собой мощное средство контроля и настройки основных параметров безопасности операционной системы. Шаблоны безопасности могут применяться как на выделенной машине, так и на уровне домена и организационных подразделений Active Directory. Сочетание основных и инкрементальных шаблонов безопасности с групповыми политиками позволяет автоматизировать настройку системы безопасности на рабочих станциях и серверах в зависимости от той роли, которую они выполняют. К сожалению, шаблоны не предоставляют возможности работы с настройками дополнительных параметров безопасности (таких, к примеру, как Encrypted File System), однако набор конфигурируемых при их помощи параметров на сегодня вполне достаточен.
Дополнительные ссылки
Microsoft Security Operation Guide
http://www.microsoft.com/TechNet/security/prodtech/ windows/windows2000/staysecure/
Microsoft Technet
http://www.microsoft.com/techet
National Security Agency Security Recommendation Guides
http://www.nsa.gov/snac/index.html
Microsoft Script Center
http://www.microsoft.com/technet/scriptcenter/ default.asp
Security Descriptor Definition Language
http://msdn.microsoft.com/library/en-us/security/ Security/security_descriptor_definition_language.asp