Аудит Web-серверов IIS с использованием MetaEdit
Задача аудита Web-сервера IIS и проверки конфигурации функций аутентификации и контроля доступа на всем Web-узле чрезвычайно сложна. В IIS для настройки параметров безопасности каждого каталога и файла на Web-сервере можно использовать Internet Service Manager (ISM). Параметры безопасности IIS автоматически передаются от родительских файлов и каталогов к дочерним, поэтому проверка естественным образом начинается с верхнего уровня. Но как определить, не были ли случайно ослаблены меры защиты файлов и каталогов нижних уровней, не открывая окно Properties каждого объекта?
Сведения о конфигурации IIS хранятся в базе данных, именуемой метабазой. Метабаза IIS состоит из разделов и параметров. Каждому каталогу Web-узла соответствует раздел в метабазе. Каждое свойство IIS для этого каталога, в том числе параметры аутентификации и доступа, соответствует параметрам раздела. Метабаза похожа на реестр, но имеет одно важное отличие: значение, определенное в метабазе, автоматически переходит к папкам-потомкам – именно этим объясняются особенности функционирования IIS.
Редактор Metabase Editor (MetaEdit), входящий в состав компонента Internet Information Server Tools комплекта Resource Kit, позволяет ускорить процедуру проверки безопасности IIS-сервера. С помощью MetaEdit можно быстро просмотреть конфигурацию Web-узла, перемещаясь между каталогами. Запомнив имена параметров метабазы, соответствующие параметрам в окне Properties диспетчера ISM, можно при помощи MetaEdit быстро обследовать ветви дерева каталогов, чтобы убедиться в согласованности мер безопасности на всех уровнях.
Чтобы испытать MetaEdit, сначала нужно установить утилиту, запустив программу setup.exe из каталога appsmetaedit на компакт-диске с resource kit. Затем откройте MetaEdit. Web-узлы находятся в метабазе IIS в разделе LMW3SVC. Каждый Web-узел хранится в подразделе и обозначен номером. Например, параметры Default Web Site находятся в подразделе LMW3SVC1. Чтобы идентифицировать Web-узел, взгляните на значение параметра ServerComment. На Экране 5 – это Default Web Site.
|
Экран 5. Идентификация Web-узла по значению ServerComment. |
Важный параметр защиты каждого каталога Web – AccessFlag.
Данный параметр типа DWORD представляет глобальные параметры, отмеченные флажками на закладке Virtual Directory окна Properties каталога Web, как показано на Экране 6. С их помощью задается метод обращения браузера к каталогу Web.
|
Экран 6. Назначение глобальных параметров каталога Web на закладке Virtual Directory. |
Еще одно важное значение – Auth-Flags, соответствующее методам аутентификации для каталога Web. Auth-Flags – не волшебная палочка для аудиторской проверки IIS-сервера, но, изучив параметры и их значения, можно проверить свойства каталога Web гораздо быстрее, чем с помощью ISM.
Утилита Cconnect для ограничения одновременной регистрации
Администраторы Novell NetWare часто жалуются, что ни в Windows 2000, ни в NT нет ограничений, препятствующих пользователю одновременно зарегистрироваться на нескольких рабочих станциях. В NT можно ограничить права пользователя доступом к конкретной рабочей станции, указав это в свойствах его учетной записи в User Manager for Domains. Однако подобный обходной маневр оставляет пользователю возможность связи с определенной рабочей станцией, вместо того чтобы ограничить число одновременных регистраций.
Утилита Concurrent Connection Li-miter (Cconnect) набора Resource Kit позволяет ограничить число одновременных регистраций в сетях Windows 2000 и NT. Cconnect состоит из двух компонентов: Cconnect Administrator обеспечивает просмотр текущих соединений во всем домене и при необходимости отменяет регистрацию пользователей, а Cconnect Client работает на каждой рабочей станции и реализует ограничения, наложенные на текущую процедуру регистрации. Cconnect Client должен быть установлен на каждой рабочей станции. Когда пользователь регистрируется на машине, Cconnect Client подсчитывает число текущих активных соединений пользователя в базе данных Microsoft SQL Server, а затем сравнивает это число с максимально возможным для данного пользователя. Если предел превышен, Cconnect немедленно снимает пользователей с регистрации.
Чтобы воспользоваться утилитой Cconnect, необходимо сначала установить новую базу данных и задать учетную запись на машине с SQL Server. Для централизованного управления всеми экземплярами Cconnect Client требуется импортировать несколько новых групповых политик Windows 2000 или системных политик NT. Политики, размещаемые в файле cconnect.adm, определяют значения в подразделе реестра HKEY_CURRENT_USERSoftware MicrosoftCconnect. Эти значения указывают утилите Cconnect Client на нужную базу данных SQL Server и устанавливают предельное число рабочих станций, на которых может одновременно зарегистрироваться пользователь. На Экране 7 показаны эти политики, импортированные в редактор System Policy Editor, SPE. Импортировав файл cconnect.adm, можно задать политики Cconnect и данные для соединений SQL Server. Затем, чтобы установить Cconnect Client на каждой рабочей станции, следует запустить программу setup.exe из каталога appscconnectclient. Чтобы установить Cconnect Administrator, нужно выполнить программу setup.exe из каталога appscconnectadministrator. В ходе первого сеанса работы Cconnect Client или Cconnect Admi-nistrator строятся необходимые таблицы в созданной администратором базе данных SQL Server.
|
Экран 7. Задание максимального числа одновременных соединений для пользователя. |
Если ограничение одновременной регистрации – единственная функция Cconnect, и настольные ПК, равно как и контроллер домена, работают под управлением Windows 2000, то нет необходимости устанавливать Cconnect Client. Вместо этого достаточно изменить пользовательские сценарии входа и выхода, чтобы вызывать, соответственно, cconnect.vbs и cclogoff.vbs. Если определить сценарии регистрации в Group Policy в разделе User ConfigurationWindows SettingsScripts, то можно развернуть Cconnect во всем домене, даже не подходя к рабочей станции.
Необходимо помнить о некоторых «подводных камнях» Cconnect. Поскольку активные записи о регистрации удаляются из базы данных SQL Server только после стандартной процедуры выхода пользователя, в случае ошибки Cconnect может отказать в праве доступа. Например, запись о регистрации не удаляется из базы данных после сбоя в энергопитании. Если пользователь ограничен одним одновременным соединением и в следующий раз регистрируется на той же рабочей станции, то старая запись о регистрации удаляется из базы данных, и проблема исчезает. Но если сделана попытка зарегистрироваться на другой рабочей станции, то с точки зрения Cconnect пользователь превышает максимальное число регистраций. В этом случае необходимо вручную удалить старую запись о регистрации с помощью утилиты Cconnect Administrator.
Другой недостаток заключается в том, что некоторые сообразительные пользователи могут обмануть Cconnect. Программа сохраняет в SQL Server лишь текущие данные о регистрации. Остальные параметры конфигурации и политики записываются утилитой в подраздел реестра HKEY_CURRENT_USERSoftware MicrosoftCconnect. Поэтому пользователи, которые хорошо разбираются в реестре, могут отменить действие Cconnect, просто настроив инструмент на неавторизованную машину SQL Server или увеличив число разрешенных одновременных соединений. Уменьшить риск можно с помощью Group Policy в Windows 2000 или SPE в NT. Правда, пользователи, умеющие работать со сценариями, могут обойти и это ограничение. Можно попытаться составить и выполнять при регистрации сценарий, который разрешает доступ к разделу реестра Cconnect только для чтения.
Кроме того, данные Cconnect Client о пользователе и пароле хранятся в реестре в чисто текстовом формате. Если следовать рекомендациям по установке пользовательской учетной записи SQL Server для Cconnect, то ее полномочия будут сходны с полномочиями встроенной учетной записи администратора SQL Server (т. е. sa). Поэтому имя пользователя и пароль учетной записи, хранящиеся в текстовом формате, опасно размещать в реестре каждой рабочей станции. Чтобы уменьшить риск атаки пользователя на другие базы данных той же машины SQL Server, следует сначала создать базу данных Cconnect и учетную запись на машине SQL Server, как описано в документе cconnect.doc. Затем нужно запустить первый сеанс Cconnect Client, чтобы заполнить только что созданную базу данных SQL Server. После этого требуется изменить полномочия пользовательской учетной записи Cconnect, ограничив их лишь доступом к базе данных Cconnect.
И наконец, необходимо помнить об особых требованиях при использовании Cconnect в сети, состоящей из рабочих станций NT. На каждом компьютере необходимо установить пакет обновлений Service Pack 4 (SP4) или более поздней версии, с Windows Host Script (WSH), Web-Based Enterprise Management (WBEM) и Microsoft Data Access Components (MDAC) версии 2.0 или более поздней. Все эти компоненты можно загрузить с http://www.microsoft.com/ntserver/ alldownloads.asp. К сожалению, Cconnect непригоден для управления учетными записями пользователей Windows 9.x.
Централизованное управление IE с помощью IEAK
В набор Resource Kit входит утилита Microsoft Internet Explorer (IE) 5.0 Admin-istration Kit (IEAK). С помощью IEAK можно выполнить специализированную настройку IE перед размещением браузера на рабочих станциях. Можно назначить начальные параметры безопасности IE (например, ограничить применение компонентов ActiveX и Java), а затем указать, какие из этих параметров могут быть изменены пользователями. Благодаря этой функции параметры браузера будут отвечать принятому на предприятии стандарту.
Чтобы установить IEAK, нужно запустить программу ieak5.exe из каталога appsieak на компакт-диске с resource kit. Более подробную информацию о IEAK можно найти в новой папке IEAK (меню Start, пункт IEAK Help).
Изучайте документацию
Последний важный инструмент безопасности набора Resource Kit – подробная документация, которая хранится в папке Documentation меню Start. Один из самых ценных документов – Error and Event Messages. Как утверждают представители Microsoft, в нем содержится большинство сообщений об ошибках и событиях, генерируемых Windows 2000. Каждое сообщение дополнено подробным объяснением и рекомендациями для поль-зователя. Достоинства документа очевидны.
Раздел Event Log помогает анализировать события в журнале Security. Документ Group Policy – очень полезное справочное пособие, в котором собрана информация о сотнях параметров групповой политики. Надеюсь, читателям пригодится и обновленный справочник по реестру Windows 2000, и семь других справочников и руководств в разделе Online Books. Краткой информации в оперативной подсказке Windows 2000 иногда бывает недостаточно, и теперь я со всеми вопросами обращаюсь к книгам Online Books набора Resource Kit.