
Безопасность IIS


| 
6. Лекция:
Особенности процесса разработки: версия для печати и PDA
Разработка представляет собой этап, на котором воплощаются в жизнь все ваши планы и подготовительные мероприятия. После подключения сайта к сети он становится доступным извне и подвергается различным угрозам, поэтому нужно обеспечить все возможные меры безопасности.
| 

| 
Безопасность резервного копирования
Необходимо соответствующим образом настроить политику безопасности, если вы планируете поручать резервирование другим пользователям, поскольку они имеют доступ ко всем файлам на сервере.
Безопасность удаленного управления
Если веб-сайт расположен у провайдера или локально в демилитаризованной зоне, отделяющей веб-сайт от интранет-сети, то обеспечен необходимый и хорошо действующий барьер безопасности. Сетевой экран, отделяющий DMZ от интранет-сети, блокирует трафик, представляющий угрозу для внутренних систем. К сожалению, консоль MMC Internet Information Services Manager (Диспетчер IIS) не работает через сетевой экран по умолчанию, поэтому нельзя осуществлять удаленное управление веб-сайтом без изменения сетевой конфигурации. Microsoft объясняет это тем, что IIS Manager изначально создан для обеспечения безопасности, так как обычное TCP-приложение потенциально представляет угрозу статусу секретности информации о сети. Разумеется, если вы не находитесь рядом с сервером, этот вариант для вас неприемлем, особенно, если сайт расположен у провайдера. Для решения проблемы выберите один из следующих подходов. Используйте консоль MMC Internet Information Services Manager (Диспетчер IIS) через виртуальную частную сеть VPN. Используя протокол туннелирования PPTP или протокол безопасного интернета IPSec, встроенного в протокол L2TP, можно организовать виртуальную частную сеть с шифрованием через сетевой экран в удаленное место, где находится веб-сайт.Используйте HTMLA через SSL. HTML-версия диспетчера IIS (называется HTML Administration, HTMLA – HTML-администрирование) работает через сеанс шифруемого соединения SSL.Используйте службы терминала Windows 2000. Компонент Terminal Services (Службы терминала) позволяет запускать консоль MMC на удаленной рабочей станции с использованием шифрования для администрирования IIS с рабочего стола.Совет. Мы не рекомендуем использовать веб-интерфейс HTMLA, даже вместе с SSL, так как он работает совсем недавно, и рано судить о степени его безопасности. В качестве альтернативы канала VPN или шифруемого канала используйте службы терминала.
Фильтрация с помощью сетевых экранов и маршрутизаторов
Для защиты сетевого периметра требуются устройства, обеспечивающие безопасность каждой точки доступа в сети. Эти устройства осуществляют блокировку и фильтрацию сетевого трафика, в результате для выполнения через периметр допускаются только действия по определенным адресам или с определенных адресов, а также через определенные порты, как показано на рисунке.
 увеличить изображение
Устройства периметровой защиты называются сетевыми экранами. Сетевые экраны предотвращают сканирование внутренней сети организации, обеспечивают запрет действий по сбору данных о сети, игнорирование массовых потоков пакетов, отправляемых при атаках на отказ в обслуживании, а также запрещают другие действия, используемые хакером для проникновения во внутреннюю сеть. Правила блокировки и фильтрации определяются политикой безопасности организации. Совет. Выше рассказывалось об использовании сетевых экранов для защиты внутренней сети от атак из интернета. Эти устройства используются и для защиты ресурсов от атак во внутренней сети. Сетевые экраны отделяют и защищают один сегмент сети от другого, независимо от типа сети (общая или частная) и систем, имеющихся в сегментах.
Лучшие сетевые экраны обеспечивают работу служб безопасности, включающих фильтрацию пакетов, сетевую трансляцию адресов (NAT) и проверку корректности пакетов. Фильтрация пакетов в сетевом экране блокирует запросы Internet Control Message Protocol (ICMP). Сетевая трансляция адресов скрывает реальный сетевой адрес веб-сервера. Проверка корректности пакетов заключается в том, что пакеты сетевого трафика проверяются, а пакеты, поступившие из интернета и не являющиеся текущим сетевым сеансом, открытым во внутренней системе, блокируются. При совместном использовании эти функции обеспечивают надежную защиту системы. Службы сетевого экрана всегда предоставляются в комплекте с сетевым маршрутизатором, соединяющим две сети по обе стороны от него. В зависимости от своей комплексности маршрутизатор настроен на выполнение фильтрации пакетов и трансляции сетевых адресов; он позволяет также блокировать порты и проверять пакеты. Такая конфигурация увеличивает среднюю производительность сети. На рисунке показана конфигурация сети, работающая именно таким образом.
 увеличить изображение
Безопаснее и проще в данном случае настроить сетевой экран на блокировку всех портов и проверку всех пакетов. После этого можно выборочно открыть порты для работы нужных служб. Чтобы сделать веб-сервер доступным для работы через интернет, достаточно открыть только порты 80 (http-протокол) и 443 (https-SSL протокол).
Функция фильтрации IIS
IIS позволяет устанавливать правила фильтрации, запрещающие доступ к сайту с определенных IP-адресов или доменов DNS. Выше шла речь о том, что фильтрация Windows 2000 недостаточно эффективна для использования в интернете. Для этого идеально подходит фильтрация IIS, например, домены и ограничения IP-адресов могут использоваться для запрета доступа к сайту конкурентов вашей организации. Фильтры работают посредством создания общего правила, отказывающего в доступе (или предоставляющего доступ) для доменного имени, определенных сетевых IP-адресов или диапазона IP-адресов с последующим указанием исключений для игнорирования общих фильтров. Управление этой функцией осуществляется через MMC Internet Services Manager (Диспетчер служб интернета). Фильтр можно применить ко всем сайтам на сервере либо по отдельности к каждому.
Использование демилитаризованной зоны сети
К сожалению, если порты открыты через периметр, защищаемый одним сетевым экраном, то безопасность периметра будет слабой. Это все же лучше, чем отсутствие сетевого экрана, но такой способ защиты не является оптимальным. Если поставщик услуг интернета предоставляет такую возможность и при наличии ресурсов, для максимального уровня защиты следует применить конфигурацию сети, называемую демилитаризованной зоной. Демилитаризованная зона (DMZ) позволяет разместить веб-сервер в отдельном сегменте сети вне интранет-сети (см. рисунок).
 увеличить изображение
Аббревиатура DMZ происходит от военного термина "демилитаризованная зона", описывающего нейтральную территорию между двумя враждующими армиями. Примером является зона между Северной и Южной Кореей. Демилитаризованная зона изолирует две страны друг от друга так же, как сетевая DMZ разделяет две сети. Чаще всего демилитаризованная зона применяется между интернетом и внутренней сетью организации. Если хакер успешно преодолеет первый сетевой экран, он сможет атаковать только серверы в демилитаризованной зоне. Принцип работы DMZ заключается в том, что трафик не может переходить из одной сети в другую без маршрутизации. Располагая веб-сервер в демилитаризованной зоне, вы тем самым размещаете его в другой подсети, поэтому маршрутизатор, граничащий с внутренней сетью, и сетевой экран используются для фильтрации и проверки трафика в процессе маршрутизации. DMZ представляет собой проверенный способ защиты, и при ее использовании желательно разместить в ней и другие службы интернета, например, Simple Mail Transfer Protocol/Post Office Protocol (почтовые протоколы SMTP и POP). Сетевой экран, расположенный между DMZ и внутренней сетью, должен содержать правила, отличные от правил сетевого экрана, установленного перед демилитаризованной зоной. Этот сетевой экран должен пропускать только вызовы служб, относящихся к внутренним приложениям, и не допускать проникновения произвольного входящего веб-трафика внутрь сети через порт 80.
Иными словами, сетевой экран должен пропускать только входящий трафик, поступающий с сервера в DMZ, которому необходимо установить связь с одной из внутренних систем, будь это сеанс браузера на настольном компьютере или приложение, к которому подключен веб-сервер. Например, если веб-серверу нужно извлечь или отобразить данные из базы данных клиентов, он подключается к базе данных с помощью языка SQL, для чего открывает порты TCP на сетевом экране для пропуска запросов и ответов SQL и блокирует все остальные данные. Для Microsoft SQL Server это порт 1433 для исходящего трафика и порты с1024 по 65535 для исходящего (порты индивидуальны для каждого приложения).
Для усиления защищенности сети используются различные типы сетевых экранов по обе стороны от демилитаризованной зоны, каждый из которых имеет свои преимущества и недостатки. Если на подступах к сети расположить сетевые экраны различных типов, то хакер не сможет использовать один и тот же эксплоит для преодоления обеих систем. Ошибка на одном из сетевых экранов, вероятно, отсутствует на другом. Поэтому использование двух сетевых экранов обеспечит еще один уровень безопасности, усложнит взлом системы и повысит вероятность того, что защита устоит перед атаками хакеров.
Экстренное восстановление
В общем случае при повреждении системы используется диск установки Windows 2000. Однако на случай более основательных сбоев нужно создать набор гибких дисков для запуска компьютера и выполнения восстановления, если программа установки системы не распознает на поврежденном диске образ предыдущей системы. Набор гибких дисков состоит из загрузочных установочных дисков и диска экстренного восстановления.
Элементы управления архивацией данных
Ниже показаны некоторые ограничения для операторов резервного копирования. Привилегии по резервному копированию не должны присваиваться учетным записям обычных пользователей. Резервирование выполняется администраторами или группами пользователей со специальными полномочиями. В Windows 2000 есть для этого группа Backup Operators (Операторы резервного копирования). Помните, в лекции 5 шла речь о параметре Enable Auditing For Backups (Включить аудит резервного копирования) для группы Backup Operators? Очень важно использовать эту группу при передаче полномочий другим лицам.Члены группы Backup Operators должны иметь специальные учетные записи для входа в систему. Ни один пользователь не должен иметь привилегии резервного копирования помимо прав обычной учетной записи. Операторам резервного копирования даются новые учетные записи с полномочиями резервирования, даже если в результате у них окажется на сервере две учетные записи.Рекомендуется устанавливать ограничения на учетную запись операторов резервного копирования, например, принудительный вход пользователя с определенной системы и выполнение резервирования только в определенные часы.
Угроза, создаваемая передачей полномочий резервирования, заключается в том, что пользователи с правами на резервирование могут восстановить архивируемые файлы на другой системе (несмотря на то, что они не могут напрямую считывать архивируемые файлы). Меры предосторожности предназначены для контроля над процессом резервирования. Используйте аудит группы Backup Operators и создание контрольного журнала. Ограничения на расположение позволят применить для повышения безопасности системы регистрацию и проверку носителей.
Настройка контроля доступа к резервированию и установка ограничений
Создать учетные записи операторов резервного копирования достаточно просто. Если веб-сервер является отдельным сервером, то для локального создания учетных записей используется консоль MMC Computer Management (Управление компьютером). Если сервер находится в домене Windows интранет-сети, используется средство Active Directory Users and Computers (Пользователи и компьютеры Active Directory). Ниже приведены шаги соответствующей процедуры. Выберите нужное средство MMC в меню Start (Пуск) или в папке Administrative Tools (Администрирование) в панели управления. Отобразится консоль, имеющая следующий вид.
 увеличить изображение
Откройте записи в дереве и найдите папку Users (Пользователи) в папке Local Users and Groups (Локальные пользователи и группы). Щелкните правой кнопкой на папке Users и выберите в появившемся меню New User (Новый пользователь), чтобы открыть диалоговое окно New User, показанное ниже.

Введите новое имя пользователя учетной записи, описание и пароль (согласно локальной или групповой политики безопасности), после чего нажмите на кнопку Create (Создать). После закрытия окна новая учетная запись пользователя появится в папке Local Users and Groups (Локальные пользователи и группы) консоли MMC.Щелкните правой кнопкой мыши на учетной записи и выберите команду Properties (Свойства), чтобы открыть окно Properties для добавления учетной записи в группу Backup Operators (Операторы резервного копирования). В окне Properties откройте вкладку Member Of (Член группы).Рекомендуется удалить учетную запись из группы Users, так как необходимо отслеживать абсолютно все действия, выполняемые оператором резервного копирования.Нажмите на кнопку Add (Добавить) и выберите группу для добавления учетной записи в список Backup Operators (Операторы резервного копирования), показанный на рисунке. Вы увидите, что новая учетная запись теперь является членом группы.

После добавления членов в группу Backup Operators для завершения настройки требуется установить ограничения на расположение. В Windows 2000 это делается с помощью политики "разрешенной рабочей станции входа".
Обеспечение безопасности сетевого периметра
Все уровни защиты, установленные до сих пор, созданы на самом сервере, а этого недостаточно для всестороннего обеспечения безопасности. Когда веб-сервер станет общедоступным в интернете, сеть сыграет свою роль в защите веб-сайта и IT-ресурсов. Внешним уровнем защиты сайта является безопасный сетевой периметр. Если ISP предоставляет возможность размещения сервера, внешние границы сетевого периметра расширятся до объемов услуг хостинга, предоставляемых провайдером. Если предпочтительней разместить сайт в собственной организации, то сетевой периметр будет гораздо уже. В любом случае, с сетевого периметра начинается защита веб-сайта, и нужно убедиться в отсутствии внутри периметра элементов, которые могут навредить сайту или вызвать неполадки в другой системе.
План восстановления
В политику безопасности нужно включить процедуры по восстановлению сайта. Основой этой стратегии являются регулярно обновляемые резервные копии, а также резервирование данных при каждом обновлении сайта, даже если не подошло время запланированного обновления. Каждый раз при внесении изменений в конфигурацию сайта следует создавать набор дисков экстренного запуска и восстановления. Диски экстренного восстановления (ERD) возвращают веб-сайт в рабочее состояние после сбоев, вызванных вторжением вируса или вредоносной атакой, выведшей из строя операционную систему. Всегда создавайте резервную копию реестра при создании этих дисков, так как информация о настройках Windows 2000 и IIS хранится именно в реестре. После проведения трудоемкой работы по обеспечению безопасности сайта было бы глупо не сохранить восстанавливаемый набор настроек. Как же создаются резервные копии содержимого сайта? На общедоступных сайтах используется автоматическое резервирование, например, зеркала дисков или дуплексирование. Использование зеркал дисков заключается в подключении второго диска к контроллеру диска сервера для одновременной записи данных на оба диска. Дуплексирование данных заключается в установке второго контроллера, чтобы у каждого диска был собственный контроллер. Такие системы позволяют создавать полную копию диска сервера, которую можно сразу подключить к работе при выходе из строя основного диска. Но и эти системы не гарантируют полной безопасности и не устраняют необходимость создания копий на съемных носителях вручную, так как и они уязвимы к различным атакам. Например, файловый вирус может легко распространиться на оба диска. Резервные копии на съемных носителях позволяют физически отделить их от работающей системы, расположить копии в защищенном месте на случай чрезвычайных обстоятельств, таких как пожар, ограбление или стихийное бедствие. Храните резервные копии в удаленном месте, иначе вы решите только половину проблемы!
Подготовка диска экстренного восстановления
Следующим шагом является создание диска экстренного восстановления Windows 2000 (ERD). При возникновении системной ошибки или повреждении сервера этот диск используется для восстановления главных системных файлов с компакт-диска исходной установки Windows 2000 без полной переустановки системы. При помощи ERD можно выполнить следующие действия по восстановлению. Проверка и восстановление загрузочного сектора. Проверяется связь загрузочного сектора системного раздела диска с файлом загрузки операционной системы NTLDR и его повреждение (или изменение).Проверка и восстановление среды загрузки. Если необходимые для загрузки файлы отсутствуют или повреждены, то они переписываются с установочного компакт-диска Windows 2000.Проверка системных файлов Windows 2000 и замена отсутствующих или поврежденных файлов. На загрузочном системном диске Windows 2000 сравниваются системные файлы с файлами установочного компакт-диска, проверяется наличие всех файлов и отсутствие повреждений. Любой файл, не прошедший данный тест, заменяется.Совет. При начальной установке Windows 2000 и IIS в загрузочном системном разделе создается папка с именем %systemroot%\Repair, в которую записывается информация о настройках системы. Не следует изменять или удалять данную папку. Исключением из правила является процесс укрепления системы (см. лекцию 3), а именно, удаление файла Security Accounts Manager (Диспетчер безопасности учетных записей). Эта мера сводит к минимуму угрозу атак, направленных на файлы с паролями. Но данное действие делает невозможным восстановление паролей и учетных записей пользователей при восстановлении системы. Восстановить учетные записи и пароли можно с помощью восстановления файла SAM, сохраненного во время последнего полного резервирования системы.
ПРОБЛЕМА
Фильтрация широко используется для обеспечения информационной безопасности. Она применяется в Windows 2000, в сетевых экранах, на веб-серверах, в других продуктах. Вы уже использовали эту возможность ранее. Отключая протокол NetBIOS при укреплении сервера (см. лекции 3), вы выполняли фильтрацию пакетов по этому протоколу. В этом случае вы не создавали собственное правило, так как фирма Microsoft предоставила соответствующую опцию. Не принято использовать метод номеров протоколов фильтрации TCP/IP для отдельного протокола. Тем не менее, он пригодится при создании собственных приложений на сервере Windows 2000 или веб-сайте IIS, использующем специальные протоколы и номера портов. В этих случаях можно блокировать все протоколы, кроме протокола, используемого определенным приложением. Ниже приведена процедура настройки фильтрации IIS. Откройте консоль MMC Internet Services Manager (Диспетчер служб интернета), выбрав команду Start\Administrative Tools (Пуск\Администрирование). Отобразится консоль Internet Information Services, показанная ниже.
 увеличить изображение
Щелкните правой кнопкой мыши на имени сервера, если требуется настроить свойства глобально для всех веб-сайтов, или на отдельном веб-сайте под именем сервера. В появившемся меню выберите команду Properties (Свойства). При установке глобальных свойств для всех веб-сайтов отобразится окно Server Properties (Свойства сервера), показанное на рисунке. Убедитесь, что отмечена опция WWW Service (Служба WWW) в диалоговом окне Master Properties (Главные свойства), после чего нажмите на кнопку Edit (Изменить) для перехода в окно Properties.

Если рассматривается каждый сайт по отдельности, то при выборе команды Properties перейдите в следующее окно, содержащее вкладки со свойствами сайта. Откройте вкладку Directory Security (Безопасность директории).

В области IP Address And Domain Name Restrictions (Ограничения IP-адресов и имен доменов) вкладки Directory Security нажмите на кнопку Edit (Изменить), чтобы открыть следующее диалоговое окно.

Диалоговое окно IP Address and Domain Name Restrictions используется для создания правил доступа. Начните с выбора опции Granted Access (Доступ разрешен) или Denied Access (Доступ запрещен) для установки правил своей политики. Выбор зависит от того, какая цель стоит перед вами. Если требуется открыть полный доступ к сайту, но заблокировать доступ через небольшое число доменов или адресов, выберите опцию Granted Access (Доступ разрешен), а затем создайте список запрещенных сайтов. Если требуется полностью закрыть доступ, но предоставить доступ столь же малой группе, как в предыдущем случае, выберите опцию Denied Access (Доступ запрещен) и создайте небольшой список сайтов, доступ которым разрешен.
Ниже приведена процедура создания правила, блокирующего отдельные IP-адреса или имена доменов.
Выберите опцию Granted Access (Доступ разрешен), чтобы создать основу для правила.Определите исключения из правила (т.е. адреса, доступ с которых необходимо блокировать), нажав на кнопку Add (Добавить) для открытия окна Deny Access On (Запретить доступ с), в котором создается перечень адресов или доменов (если таковые есть).

В диалоговом окне Deny Access On (Запретить доступ с) выполните одно из действий. Запретите доступ с одного компьютера локальной подсети или определенного домена, для чего выберите опцию Single computer (Один компьютер) и введите его IP-адрес в поле IP Address и имя домена, если компьютер находится не в вашей локальной подсети. Для указания домена нажмите на кнопку DNS Lookup (Поиск по DNS).Запретите доступ группе компьютеров в той же подсети, для чего выберите опцию Group of computers (Группа компьютеров) и введите идентификатор сети и маску подсети в поля ввода данных в нижней части диалогового окна. Идентификатором является первый IP-адрес в диапазоне блокируемых адресов. Маска подсети обозначает размер диапазона. Это значение варьируется для каждой организации и зависит от типа используемых адресов (Class A, Class B или Class C). Например, если организация использует адреса типа Class C, а нужно заблокировать все адреса с начала вашего диапазона до адреса 128, значением маски подсети будет 255.255.255.128, так как в адресах типа Class C первые три поля обозначают номер сети, а последнее число – номер узла. Совет. Осуществите поиск в интернете по строке "TCP/IP Addressing", чтобы получить дополнительную информацию о типах адресов и масках подсети.
Хорошим источником информации является сайт http://www.techtutorials.com/tutorials/tcpguide.shtml.Запретите доступ к домену интернета, для чего выберите опцию Domain Name (Доменное имя) и введите имя домена в поле внизу диалогового окна.
Повторите процесс добавления для любых других адресов, групп адресов или доменов, фильтрация которых необходима. После создания правил отказа в доступе они отобразятся в списке исключений окна IP Address and Domain Name Restriction (Ограничения на доступ с IP-адресов и доменов).
Совет. Появится сообщение с предупреждением о снижении производительности работы, если указана блокировка для отдельных компьютеров в определенных доменах, так как в этом случае серверу придется выполнять обратный поиск по DNS. Иными словами, сервер будет сопоставлять адрес каждого посетителя с масками подсети доменов в DNS при каждом посещении сайта новым пользователем. Подумайте о том, разумно ли применять фильтрацию при блокировке доступа большого числа компьютеров.Важно. Фильтрация по IP-адресам работает эффективно только в случае, если системы используют фиксированный IP-адрес. В интранет-подсети, использующей протокол динамической конфигурации узла (DHCP), многие адреса систем не являются постоянными, поэтому фильтрация по адресу проблематична и бесполезна, но в интернете, тем не менее, будет работать фильтрация имен доменов.
ПРОБЛЕМА. О восстановлении и устранении неполадок
Надеемся, что вам никогда не понадобятся диски экстренной загрузки и экстренного восстановления. Но если все-таки придется восстанавливать поврежденную систему, имейте в виду одно обстоятельство. При запуске программы установки Microsoft для восстановления системы в окне Setup (Установка) предлагаются два варианта восстановления. Это окно содержит следующую информацию: Установка Windows 2000 Server Параметры восстановления Windows 2000 Чтобы восстановить Windows 2000 с помощью консоли восстановления, нажмите C. Чтобы восстановить Windows 2000 с помощью процедуры экстренного восстановления, нажмите R. Если опции восстановления не помогут успешно восстановить систему, запустите еще раз программу установки Windows 2000.
При выборе второго варианта установки Windows 2000 (процесса экстренного восстановления) будет восстановлена копия исходного реестра, созданная при инсталляции сайта, а не копия из папки %systemroot%\ Repair\RegBack, полученная при создании диска экстренного восстановления. В этом случае все настройки, выполненные в процессе работы с первыми пятью лекциями этой книги, будут утеряны! Используйте консоль восстановления для копирования резервных файлов реестра, содержащих изменения конфигурации, в папку %systemroot%\System32\ Config. Если изменялась только конфигурация сайта, то не нужно выполнять полное восстановление сервера. Используйте программу восстановления Windows 2000, позволяющую резервировать только состояние системы. При выборе опции резервирования состояния системы осуществляется резервное копирование следующей информации. Реестр сервера (данные конфигурации).Файлы загрузки (необходимы для запуска компьютера).Файлы операционной системы (необходимы для запуска операционной системы).База данных регистрации классов COM+ (информация, используемая службами компонентов и приложениями COM+).
Процедура резервирования состояния системы Windows 2000/IIS выполняется следующим образом. Выберите команду Start\Accessories\System Tools\Backup (Пуск\ Программы\Служебные\Архивация данных).
Затем щелкните на значке Backup Wizard (Мастер восстановления) вверху окна.При работе с мастером появится окно (см. рисунок) для выбора данных, необходимых для резервирования. Выберите опцию Only Back Up The System State Data (Только данные о состоянии системы). После этого нажмите на Next (Далее).

Выберите устройство и место расположения резервной копии в окне, показанном ниже. Рекомендуется сохранять резервную копию на съемном носителе, чтобы хранить ее в другом месте, не на этом компьютере. Присвойте файлу имя и нажмите на кнопку Next (Далее).

Нажмите на кнопку Finish (Готово), и процесс создания резервной копии начнется.
Можете перед началом резервирования указать дополнительные параметры, например, резервирование только внесенных изменений. Этот параметр используется, если резервная копия состояния системы представляет файл очень большого размера. На следующем рисунке показан отчет о проведении резервирования состояния системы. Файл резервной копии имеет размер около 250 Мб, а процедура резервирования данных с удаленного диска через сеть заняла менее двух минут.

Службы терминала) на сервере IIS
Для установки Terminal Services ( Службы терминала) на сервере IIS в режиме удаленного администрирования войдите на сервер в качестве администратора и выполните следующие действия.
В панели управления откройте значок Add/Remove Programs (Установка и удаление программ). Отобразится окно, показанное на рисунке.

Запустите мастер Add/Remove Windows Components (Установка и удаление компонентов Windows); мастер поможет установить компонент Terminal Services (Службы терминала) (см. рисунок).

Отметьте опцию Terminal Services и нажмите на кнопку Next (Далее). Отобразится страница настроек мастера.

Выберите опцию Remote Administration Mode (Режим удаленного администрирования) и нажмите на кнопку Next (Далее), чтобы начать установку.
По завершении установки откройте меню Start (Пуск), выберите группу Administrative Tools (Средства администрирования), затем – Terminal Services Configuration (Настройка служб терминала) и дважды щелкните на подключении, для которого необходимо изменить уровень шифрования. В окне Encryption Level (Уровень шифрования) укажите высокий уровень шифрования.
Для установки файлов клиента терминала на удаленную рабочую станцию, с которой вы будете управлять сервером, откройте меню Start (Пуск), выберите группу Administrative Tools (Администрирование) и далее – Terminal Services Client Creator (Создание клиента служб терминала), чтобы создать установочные диски для компьютеров-клиентов Terminal Services.
Совет. Для запуска Terminal Services в режиме удаленного администрирования не нужна лицензия доступа для клиента сервера терминала. В режиме удаленного администрирования по умолчанию допускается максимум два одновременных подключения на сервере терминала.
Содержимое диска экстренного восстановления
В программе резервного копирования Windows 2000 есть мастер для создания диска экстренного восстановления ERD. ERD создается посредством копирования отдельных файлов из папки Windows 2000 %systemroot%\Repair на гибкий диск (см. табл. 6.1). ERD не восстанавливает пользовательские данные или программы. Он просто хранит список файлов, установленных в системе, в файле Setup.log. Это текстовый файл, в котором записаны сведения о компонентах Windows 2000 и их расположении, установленных на сервере. Содержимое файла Setup.log можно просмотреть в любом текстовом редакторе. На рисунке 6.1 показан пример файла Setup.log.
Таблица 6.1. Файлы, хранящиеся на ERDИмя файлаОписание | Autoexec.nt | Используется для инициализации среды MS-DOS. | | Config.nt | Используется для инициализации среды MS-DOS. | | Setup.log | Журнал, хранящий записи об установленных файлах и их расположении, а также CRC (контрольную сумму файла), которая используется в процессе экстренного восстановления. Файл имеет атрибуты "только чтение", "системный" и "скрытый" и является невидимым, если My Computer (Мой компьютер) не настроен на отображение всех файлов. |
Каждая строка журнала содержит подробную информацию о файлах и каталогах системной папки сервера (папка в загрузочном разделе, содержащая исполняемые файлы, шрифты драйверов и другие файлы). В конце строки записывается CRC (контрольная сумма файла) в двоичном виде. Она вычисляется программой резервирования/восстановления и показывает размер файла. При использовании диска экстренного восстановления ERD с помощью CRC определяется, был ли текущий системный файл изменен (удален, поврежден и т.д.). В этом случае программа восстановления заменит исходный файл новым. Диск ERD не содержит копии файлов реестра. Тем не менее, при создании диска можно зарезервировать файлы из каталога %systemroot%\Repair. Используйте эту возможность! При повреждении реестра файлы из этой папки помогут восстановить его без выполнения полного восстановления системы.
Создание диска экстренного восстановления
Для создания диска экстренного восстановления используется программа резервного копирования Windows 2000. Приготовьте отформатированный гибкий диск, так как эта программа не сможет выполнить форматирование, и выполните следующие шаги.
 Рис. 6.1. Файл Setup.log показывает все, что установлено в системе Выберите команду Start\Accessories\System Tools\Backup (Пуск\ Программы\Служебные программы\Архивация данных). Откроется окно, показанное на рисунке ниже.
 увеличить изображение
Нажмите на кнопку Emergency Repair Disk (Диск экстренного восстановления). Появится диалоговое окно Emergency Repair Diskette, показанное на рисунке. На данном этапе создайте резервную копию реестра посредством выбора опции Also Backup The Registry (Архивировать реестр). Резервная копия реестра используется при восстановлении системы в случае повреждения реестра.

Важно. Резервная копия реестра будет создана в папке RegBack в каталоге %systemroot%/Repair съемного тома операционной системы. Расположение резервной копии реестра на том же диске, что и исходный реестр, сохраняет угрозу повреждения реестра. Копия реестра, созданная посредством ERD, может оказаться полезной, но все-таки лучше физически отделить ее от сервера.Нажмите на OK, и диск будет подготовлен. После окончания процедуры появится диалоговое окно, предписывающее пометить диск названием и текущей датой.
Процедура создания дисков закончена. Следует повторно создавать диски установки и экстренного восстановления при каждом обновлении драйвера, версии, установке нового сервис-пакета или при другом значимом изменении в конфигурации.
Создание резервной копии реестра и информации о состоянии системы
Диск ERD не является альтернативой правильной процедуре резервирования данных. Как говорилось выше, следует также выполнять резервное копирование при внесении серьезных изменений в конфигурацию сервера, даже если время регулярного резервирования данных еще не пришло. Несмотря на то, что полное описание процесса резервирования Windows 2000/IIS выходит за рамки данной книги, некоторые моменты, связанные с этой процедурой, необходимо иметь в виду. Совет. Инструкции по выполнению резервного копирования и восстановления подробно описаны в документации Microsoft и в справочной литературе на сайте www.microsoft.com/technet.
Создание загрузочных дисков установки
Для подготовки гибких дисков используется установочный компакт-диск Windows 2000. Вам понадобятся четыре пустых отформатированных 3,5-дюймовых дискеты объемом 1,44 Мб для установочных дискет и одна дискета для диска экстренного восстановления системы. Пометьте первые четыре дискеты меткой "Установочный диск Windows 2000" с номерами от одного до четырех, а пятую дискету пометьте как "Диск экстренного восстановления Windows 2000". Для создания установочных дискет Windows 2000 выполните следующее. Вставьте компакт-диск установки Windows 2000 в компьютер и выберите команду Start\Run (Пуск\Выполнить). Появится диалоговое окно Run, показанное на рисунке ниже.

Введите команду Z:\bootdisk\makebt32 a: и нажмите на OK (Z: – это обозначение устройства для чтения компакт-дисков, a: – привод гибких дисков).При выполнении команды окно консоли (см. ниже) выдаст инструкцию, согласно которой нужно вставить первый диск. Следуйте инструкциям программы и меняйте диски до тех пор, пока все установочные дискеты не будут готовы.
 увеличить изображение
Теперь у вас имеется набор загрузочных установочных дискет на случай, если система не загрузится с жесткого диска или с компакт-диска. Эти дискеты позволят восстановить Windows 2000, о чем мы расскажем далее.
Структура сети и фильтрация пакетов в интранет-сети
В результате работы по физической защите сайта (укрепления сервера, настройки локальной политики безопасности, аутентификации, настройки доступа и аудита действий пользователей) создаются защитные барьеры, предотвращающие несанкционированный доступ к системе. Во внутренней сети еще одним барьером защиты является фильтрация. Совет. Если вы используете фильтрацию на веб-сервере в интранет-сети и физически расположили сервер в защищенном месте, то фильтрация на сетевом интерфейсе, предназначенном для управления сервером, не нужна. Не используйте фильтрацию, если приняты основательные меры по физической защите.
Сводный перечень подготовительных действий перед началом работы сайта
Создайте набор средств восстановления перед подключением веб-сервера к интернету: создайте загрузочные диски установки;создайте диск экстренного восстановления;создайте резервные копии реестра и состояния системы.Выполните полное резервное копирование системы с сохранением копии отдельно от сайта.Используйте фильтрацию Windows 2000 для обеспечения дополнительной защиты в сети интранет.Убедитесь, что обеспечена безопасность сетевого периметра веб-сервера в интернете: примените демилитаризованные зоны;примените фильтрацию пакетов с помощью сетевых экранов для блокирования внешнего трафика;рассмотрите вопрос об использовании каналов VPN.Используйте шифруемый сеанс связи для удаленного управления.
Виртуальные частные сети
Технология виртуальных частных сетей (VPN) обеспечивает безопасные подключения к удаленно управляемому веб-сайту посредством выделения авторизованного шифруемого канала связи между двумя расположениями. С помощью MMC через VPN успешно осуществляется удаленное управление, но его довольно сложно настраивать. Если сайт расположен у интернет-провайдера, то, скорее всего, последний поддерживает службу VPN, на которую можно подписаться. При отсутствии такой возможности можно самостоятельно настроить свой собственный канал VPN. При использовании виртуальных частных сетей существуют следующие варианты. Применение служб VPN, основанных на Microsoft Windows 2000. Придется выделить сервер в расположении веб-сайта, который станет сервером VPN, чтобы не снижать производительности веб-сайта.Использование служб VPN, имеющихся на сетевых экранах (CheckPoint или Raptor) либо на маршрутизаторах фирм Cisco, 3Com и др.Использование выделенной программно-аппаратной платформы сервера VPN.
При выборе нужного варианта руководствуйтесь следующими соображениями. При выборе VPN-служб Windows 2000 появится возможность использовать PPTP, но нельзя будет применять IPSec. В остальных случаях вы будете использовать IPSec, что потребует применения цифровых сертификатов и PKI. О шифровании пойдет речь в лекции 8, в которой также имеется обзор PKI. Лекция 9 рассказывает об использовании служб Windows 2000 ISA для каналов VPN и о сторонних продуктах VPN.
Windows 2000 содержит возможность фильтрации
Windows 2000 содержит возможность фильтрации в стеке протоколов TCP/IP. Используется простой набор правил, блокирующий все порты, кроме указанных (или открывающий доступ ко всем портам, кроме указанных), либо блокирующий (разрешающий) доступ по всему протоколу в целом.
Совет. Возможности Windows 2000 используются как в интернете, так и в интранет-сетях. Тем не менее, если сайт организации подключен к интернету, то сетевые экраны обычно используются для блокировки и фильтрации пакетов. Сетевые экраны имеют большие возможностями по блокировке, используя сложный набор методов для предотвращения проникновения в сеть различных видов трафика интернета. Полезные в интранет-сетях фильтры Windows 2000 не заменят собой хороший сетевой фильтр интернета.
Ниже приведены шаги по применению фильтрации TCP/IP в Windows 2000.
Выберите команду Start\Settings\Control Panel (Пуск\Настройка\ Панель управления) либо щелкните правой кнопкой мыши на значке My Network Places (Сетевое окружение) на рабочем столе и откройте панель управления.Щелкните на значке Network And Dialup Connections (Сеть и удаленный доступ), щелкните правой кнопкой мыши на значке Local Area Connection (Подключение по локальной сети) и в появившемся меню выберите команду Properties, чтобы открыть окно Local Area Connection Properties (Свойства подключения по локальной сети), показанное ниже.

Отметьте компонент Internet Protocol (TCP/IP) и нажмите на кнопку Properties, чтобы открыть окно Internet Protocol (TCP/IP) Properties (Свойства протокола интернета TCP/IP).Нажмите на кнопку Advanced (Дополнительно) в левом нижнем углу окна Internet Protocol Properties, чтобы открыть окно Advanced TCP/IP Settings (Дополнительные параметры TCP/IP), после чего откройте вкладку Options (Параметры). На рисунке показаны параметры TCP/IP.

В списке опций выберите TCP/IP Filtering (Фильтрация TCP/IP) и нажмите на кнопку Properties, чтобы открыть диалоговое окно TCP/IP Filtering (Фильтрация TCP/IP), показанное на рисунке.

Используемые правила фильтрации зависят от назначения сайта и от выполняемых на нем приложений.
Если веб-сайт содержит только статические веб-страницы, заблокируйте все, за исключением порта TCP 80 для HTTP. Для этого выберите опцию Permit Only (Разрешить только) в столбце TCP, нажмите на кнопку Add (Добавить) и в появившемся диалоговом окно укажите номер порта. При использовании сайтом протокола защищенных сокетов (SSL) необходимо указать порт 443. Перед нажатием на кнопку OK отключите опцию Enable TCP/IP Filtering (all adapters) [Включить фильтрацию TCP/IP (все адаптеры)], если не будете применять это правило к сетевому интерфейсу, используемому для управления сервером. Важно. Будьте осторожны с правилами! Если вы выберете Permit Only (Разрешить только) и не укажете ни одного номера порта, это будет интерпретировано как запрет по всем портам, и на сайт не сможет попасть ни один пользователь.
Процесс фильтрации аналогичен процессу, выполняемому для протокола UDP. Необходимо знать номер порта, для которого создается правило. Третий столбец в диалоговом окне TCP/IP Filtering (Фильтрация TCP/IP), имеющий заголовок IP Protocol (Протокол IP), используется для фильтрации по определенному протоколу. Необходимо указать протокол по номеру из справочной таблицы, поддерживаемой орагнизацией интернет-стандартов Internet Engineering Task Force (IETF) (см. приложение C). По мере необходимости можете добавлять в список новые протоколы.
Совет. Информация по параметрам IP-протокола имеется на сайте Microsoft Technet (www.Microsoft.com/technet) в разделе "IP Protocol Filtering" или в документе с номером Q309798.
Безопасность IIS
Дополнительные сведения об отслеживании файла журнала
В лекции 5 обсуждалось использование программы Event Viewer (Просмотр событий), с помощью которой можно вести журналы операционной системы и просматривать файлы формата W3C в поисках признаков атак. Несмотря на то, что поиск слабых мест в защите подобен поиску иголки в стоге сена, все же обратите внимание на элементы, указывающие на наличие проблемы безопасности. Microsoft рекомендует уделять особое внимание событиям, приведенным в табл. 7.1. В ней содержатся идентификаторы событий и вопросы, которые нужно задать самому себе по мере изучения информации.
Таблица 7.1. Подозрительные записи журнала безопасностиИдентификатор событияКомментарий | 517 | Журнал аудита был очищен. Вы сами выполнили это действие, или это попытка хакера замести следы? | | 529 | Осуществлена попытка входа в систему с использованием неизвестной учетной записи или имеющейся учетной записи с указанием неправильного пароля. Неожиданно большая частота повторения этого события означает попытки угадывания пароля. | | 531 | Осуществлена попытка входа в систему посредством использования отключенной учетной записи. Чья это попытка, и каково ее назначение? | | 539 | Осуществлена и отклонена попытка входа, так как учетная запись была заблокирована. Кто пытался войти и зачем? | | 612 | Изменена политика аудита. Выясните, кто изменил ее и зачем. | | 624 | Создана учетная запись. Кто ее создал – вы или доверенное лицо? | | 628 | Установлен пароль пользователя. Кто это сделал – вы или доверенное лицо? | | 640 | Внесено изменение в базу данных SAM. Вы вносили это изменение? |
Если вы отслеживаете большое количество событий, то не будете страдать от отсутствия информации. Смысловая обработка этой информации достаточно сложна. Windows 2000 имеет программные средства, позволяющие просматривать и осмысливать зафиксированную информацию. Существуют и коммерческие продукты, предназначенные для этой цели (см. лекцию 9), однако мы остановимся на продуктах Microsoft.
Другие признаки атаки
Атаки некоторых типов выявить довольно легко, например атаки на переполнение буфера, которые немедленно выводят из строя сервер, но некоторые атаки имеют менее явные симптомы. Журналы и оповещения Windows 2000 и IIS обнаруживают попытки выполнения таких атак. Ниже приведены некоторые общие признаки атак, которые следует искать. Неожиданное увеличение исходящего трафика. Это могут быть как действия легальных пользователей сайта, так и злоумышленные действия, особенно при исходящем трафике, как было в случае с червем Code Red. Данный признак наблюдается и тогда, когда компьютер сети управляется для участия в распределенной атаке на отказ в обслуживании. Маршрутизаторы или сетевые экраны должны иметь возможность измерять как входящий, так и исходящий трафик. В самых лучших устройствах этого типа имеются средства, генерирующие отчеты, проверяемые еженедельно, ежедневно или немедленно.Большое число пакетов, обнаруженное фильтрами выхода маршрутизатора или сетевого экрана. Фильтрами выхода называются наборы политик маршрутизаторов, проверяющие исходящие пакеты и отслеживающие их исходные адреса. Так как в большинстве организаций известны сетевые адреса, защищенные сетевым экраном, сразу отбрасываются пакеты, исходные адреса которых не совпадают с адресами сети. Такие системы блокируют потенциально опасный трафик, который возникает при скрытом захвате хакерами узла и генерировании исходящих от него пакетов, которые призваны перегрузить заранее известную цель в интернете. Фильтры выхода предотвращают выход исследующих пакетов из сети, поэтому при обнаружении таких пакетов необходимо выяснить их источник, так как они являются признаками проникновения в сеть.Неожиданный скачок числа некорректных пакетов на сетевом экране. Большинство сетевых экранов и маршрутизаторов ведут сбор статистики о пакетах на границе сети, используя коммерческое программное обеспечение. Неожиданные скачки числа некорректных пакетов, как правило, говорят о том, что система подвергается атаке на отказ в обслуживании.
Двойная проверка безопасности сервера
Программа Microsoft Baseline Security Analyzer (MBSA) предназначена для сканирования компьютеров с Windows 2000 и определения примененных в системе обновлений безопасности, политик безопасности и соответствующих параметров. MBSA представляет расширенную версию HFNetChk – широко известной программы, используемой многими системными администраторами Windows 2000. MBSA сканирует сервер для определения операционной системы, наличия сервис-пакетов и программ, после чего исследует базу данных Microsoft и определяет надстройки безопасности для установленного программного обеспечения. MBSA, как и HFNetChk, проверяет создаваемые надстройкой ключи реестра и наличие на сервере определенной надстройки, а также выясняет версию и контрольную сумму каждого файла, установленного надстройкой. MBSA проверяет также соответствие настроек системы общим рекомендациям по безопасности сервера, например, устойчивость паролей, состояние учетной записи Guest (Гость), тип файловой системы, общедоступные файлы, группу администраторов, наличие распространенных ошибок в конфигурации. После выполнения процедуры генерируется отчет. Ниже приведен список проверок MBSA для сервера IIS. Простые пароли. MBSA в процессе сканирования проверяет компьютеры на наличие пустых, простых и неправильно указанных паролей: пароль пуст;пароль = имя пользователя (имя учетной записи);пароль = имя компьютера;пароль = "password";пароль = "admin";пароль = "Administrator".Группа Administrators (Администраторы). Определяет и создает перечень учетных записей, принадлежащих группе Local Administrators (Локальные администраторы). При обнаружении более двух учетных записей администраторов программа выводит список их имен и обозначает потенциальное слабое место. Рекомендуется свести к минимуму число администраторов, так как они по природе своей деятельности осуществляют полный контроль над системой.Аудит. Определяет включение аудита на сканируемом компьютере. Аудит Microsoft Windows отслеживает и фиксирует в журнале определенные системные события, такие как успешные и неудачные попытки входа в систему.
Следует всегда вести журнал и отслеживать события системы, чтобы определять потенциальные угрозы безопасности и вредоносные действия.Автоматический вход в систему. Определяет включение автоматического входа, наличие шифрования пароля входа в реестре или хранение его в открытом виде. Если включен автоматический вход в систему, и пароль хранится в открытом виде, это будет отражено в отчете безопасности как серьезное слабое место. Если включен автоматический вход, и пароль шифруется в реестре, это будет отражено в отчете безопасности как потенциальное слабое место.Проверка наличия ненужных служб. Определяет включение служб, содержащихся в текстовом файле services.txt. Если планировалось отключение какой-либо службы, но этого не произошло, или служба перезапустилась, то данная проверка выявит этот факт.Гостевая учетная запись. Определяет включение встроенной учетной записи Guest (Гость). Гостевая учетная запись используется для входа на компьютер с ОС Windows 2000 и должна быть отключена.Виртуальные каталоги MSADC и Scripts на сервере IIS. Определяет установку виртуальных каталогов MSADC (образцы сценариев доступа к данным) и Scripts. Сценарии в этих каталогах нужно удалить для снижения вероятности проведения атаки.Виртуальный каталог IISADMPWD. Определяет установку виртуального каталога IISADMPWD. В IIS 4.0 пользователи могут через него изменять свои пароли. IISADMPWD является слабым местом, через которое возможно раскрытие паролей. При обновлении сервера до IIS 5 этот каталог нужно удалить, Средство IIS Lockdown. Определяет выполнение на компьютере версии 2.1 программы IIS Lockdown. IIS Lockdown отключает ненужные возможности и настраивает политику безопасности IIS для уменьшения степени уязвимости защиты.Журнал IIS. Определяет включение журнала IIS и использование расширенного формата файла журнала W3C. Ведение журнала IIS выходит за рамки функций Windows и позволяет обнаружить возможные области атаки сервера или сайтов. Эта возможность должна быть всегда включена.Родительские пути IIS.
Определяет включение параметра ASPEnableParentPaths. При включении родительских путей на страницах Active Server Pages (ASP) используются относительные пути от текущего каталога к домашнему каталогу (пути, использующие символ "..").Демонстрационные приложения IIS. Определяет установку на компьютере папок с демонстрационными файлами: \Inetpub\iissamples \Winnt\help\iishelp \Program Files\common files\system\msadc
Эти каталоги и все виртуальные каталоги нужно удалить.Члены роли Sysadmin (Системный администратор). Определяет число членов роли Sysadmin и отображает результаты в отчете безопасности. Как правило, в роли Sysadmin должно содержаться как можно меньше пользователей.Окончание срока действия пароля. Определяет наличие в учетных записях локального пользователя пароля с неограниченным сроком действия. Пароли должны регулярно меняться для предотвращения атак на взлом паролей. Такие учетные записи будут указаны в отчете.Ограничение анонимных пользователей. Определяет использование ключа реестра RestrictAnonymous для ограничения анонимных подключений разрешениями Read (Чтение) или Read and Execute (Чтение и выполнение) в каталогах сценариев (если они имеются).Общие объекты. Определяет наличие общих папок. В отчете будут показаны все найденные на компьютере общие объекты, включая администраторские общие папки, а также их разрешения уровня общего доступа и уровня NTFS. На веб-сервере ни в коем случае не должны присутствовать общие папки!
Перед запуском MBSA следует уяснить две вещи. Во-первых, проверка входа вызовет создание записей в журнале событий безопасности, если на компьютере включен аудит событий входа/выхода из системы. Во-вторых, тест на ненужные службы использует файл services.txt в качестве контрольного списка. Отредактируйте этот файл таким образом, чтобы он содержал конкретные службы для проверки на каждом сканируемом компьютере. Файл services.txt, устанавливаемый по умолчанию с этой программой, содержит следующие службы:
MSFTPSVC (FTP) TlntSvr (Telnet) RasMan (Диспетчер службы удаленного доступа) W3SVC (WWW) SMTPSVC (SMTP)
Перечень остальных служб, которые необходимо отключить, см. в лекции 3.
Использование журнала и уведомлений о сбоях в качестве средства защиты
Для получения доступа к серверу хакеры, скорее всего, будут пытаться вызвать не нем сбой, поэтому желательно отслеживать информацию о сбоях. В дополнение к файлу журнала сбоев используются еще два метода уведомления и фиксирования сбоев посредством изменения некоторых переменных в реестре Windows 2000. Для настройки уведомления о сбоях сервера выполните следующие шаги. Выберите команду Start\Run (Пуск\Выполнить) и запустите программу Regedit.В редакторе реестра включите административное уведомление посредством присвоения параметру HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/CrashControl/SendAlert значения 1. При следующем сбое сервера сгенерируется административное оповещение.Включите журнал операционной системы, фиксирующий сбои в журнале событий, присвоив параметру HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/CrashControlLogEvent значение 1 для фиксирования точного времени сбоев.
Включенное уведомление о сбоях оповестит о возникших проблемах. Информация, записанная в журнале, используется в аудите безопасности для определения того, был ли сбой сервера вызван умышленно.
Экспорт журналов в текстовые файлы
В файлы журнала можно записать неограниченное количество информации. В реальной жизни такой объем затрудняет работу. Иногда информацию экспортируют в текстовый файл и открывают в программе типа электронных таблиц или баз данных. В этих программах можно отсортировать списки по номерам событий или осуществить поиск определенных сообщений. Журналы IIS автоматически сохраняются в текстовом формате, а вот файлы журналов Windows 2000 необходимо преобразовывать. Это делается двумя способами. Используйте команду Save As (Сохранить как) в программе Event Viewer (Просмотр событий) для сохранения файла в виде текста с разделителями-табуляцией либо в формате файла с разделителями-запятыми (CSV). Можно вывести журнал событий с помощью программы dumpel.exe – средства командной строки, доступного для загрузки по адресу http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/dumpel-o.asp. При обращении к прежним журналам для получения информации этот метод значительно облегчит задачу. Dumpel.exe преобразовывает журнал событий локальной или удаленной системы в текстовый файл с разделителями-табуляцией и осуществляет фильтрацию файла для нахождения искомой информации, руководствуясь указанными в командной строке параметрами. В программе dumpel.exe используется следующий синтаксис: dumpel.exe –f file [-s \\server] [-l log [-m source]] [-e n1 n2 n3…] [-r] [-t] [-d x]-f file – указывает имя результирующего файла. Для параметра –f не установлено значение по умолчанию, поэтому обязательно укажите файл.-s \\server – указывает сервер, для которого записывается журнал событий. Обратные слэши перед именем сервера вводить необязательно.-l log – определяет, какой журнал (системный журнал, журнал приложений, журнал безопасности) следует записать. Если указано неправильное имя журнала, то записывается журнал приложений.-m source – указывает, в каком источнике (например, редиректор (rdr), последовательный порт и т.д.) следует преобразовать записи журнала в текстовый файл. Если указан источник, не зарегистрированный в реестре Windows, в журнале приложений будет осуществлен поиск записей данного типа.-e n1 n2 n3 – осуществляет фильтрацию события с идентификатором nn (можно указать до 10 элементов). При использовании ключа -r будут записываться только записи этих типов. Если ключ -r не используется, будут выбраны все события из указанного источника. Данный параметр нельзя использовать без ключа -m.-r – указывает, нужно ли осуществлять фильтрацию для поиска определенных источников или записей, либо отбросить их.-t – указывает, что отдельные строки разделяются символами табуляции. Если параметр -t не используется, строки разделяются пробелами.-d x – записывает события за последние x дней.
Методология жизненного цикла
Жизненный цикл управления использует стандартизированный повторяемый набор процедур для обновления, переоценки и защиты сайта. Стандартизация обеспечивает правильную конфигурацию программного обеспечения, последовательное и предсказуемое выполнение задач. При помощи точно разработанных концепций политики обеспечивается эффективное реагирование. Схема жизненного цикла управления приведена на рис. 7.1. Это очень важный подход, поскольку в динамической и изменяющейся среде интернета требуется процесс управления, постоянно адаптирующийся к возникающим ситуациям. Процесс укрепления системы основан только на фактах, о которых уже многое известно. Реализация жизненного цикла обеспечит переоценку подхода и знание тех изменений в технологиях, которые оказывают влияние на сайт.
 увеличить изображение Рис. 7.1. Схема жизненного цикла управления
Настройка предупреждений Windows 2000 и IIS
Помимо изучения файлов журналов, которое представляет собой обработку уже произошедшего события, используется интерактивное отслеживание и обнаружение посредством предупреждений. Индикатор производительности Windows 2000 содержит функцию counters (счетчики), которая выявляет возможные атаки хакеров и автоматически сообщает о неполадках. Performance Monitor (Индикатор производительности), как видно из названия программы, используется для отслеживания вопросов, связанных с производительностью системы. Эта программа обеспечивает безопасность, если созданы отдельные правила отслеживания системных событий или событий служб интернета. Правила инициируют определенное действие, когда встречается указанное условие. Например, с помощью функции counters для установки порога события можно отобразить через сеть сообщение в случае преодоления порога. При инициировании оповещения сервером предпринимаются следующие действия. Отправка сетевого сообщения.Создание записи в журнале событий приложений.Запуск журнала данных о производительности.Запуск указанной программы.
Отслеживание признаков атак
Часто случается так, что атаки не сразу выводят из строя сервер, а оставляют на нем программы, заражающие сайт и воздействующие на него в течение продолжительного времени. Следует следить за содержимым журналов для выявления таких программ. Как и вирусы, многие атаки с использованием червей или "троянских коней" являются автоматизированными атаками, оставляющими признаки присутствия (предсказуемые наборы событий или записанных файлов) в файлах журналов, по которым можно судить об их наличии в системе. Например, во многих организациях червь Code Red был выявлен посредством нахождения характерного GET-запроса на файл default.ida в файлах журналов. Подпишитесь на рассылки с новостями в области информационной безопасности или регулярно посещаете сайт CERT для получения новых сведений об этих признаках, чтобы обнаруживать их в журналах.
Ответные действия
Если система находится в интернете, она рано или поздно будет атакована. То же самое относится и к интранет-сети. Следовательно, необходим план ответных действий при обнаружении ненормальной активности в сети. Помните, что за успешными атаками часто следует череда неудачных атак. Если средства отслеживания определили атаку, даже безуспешную, необходимо на нее отреагировать. Если атака на компьютер будет успешной, то чем раньше вы ее обнаружите и отреагируете, тем проще предотвратить повреждение системы.
Переоценка угроз и предупредительное отслеживание
Предупредительное отслеживание ограничивает попытки вторжений посредством периодической переоценки угроз. С точки зрения управления этот процесс выполняется на веб-сайте с целью своевременного обнаружения попыток вторжения и немедленного реагирования на возникшие угрозы. Отслеживание системы включает в себя регулярно проводимые обзоры журналов, а также более динамичные формы мониторинга с выводом уведомлений о потенциальных проблемах.
Переоценка угроз
Переоценка угроз представляет собой критический процесс, определяющий степень защищенности любой системы; этот процесс необходимо планировать как обычную процедуру управления безопасностью, так как в программно-аппаратных продуктах постоянно обнаруживаются все новые и новые слабые места. Программные продукты должны проверяться на стойкость к новым угрозам, выявляемым организациями типа института SANS после последних обновлений Microsoft. Каждую систему нужно исследовать с помощью структурированного процесса, проверяющего текущее состояние защиты. Периодическая переоценка включает в себя мероприятия, описываемые в сводных перечнях этой книги и в других источниках информации о безопасности. Необходимо запускать новейшие средства безопасности, выпущенные Microsoft, для обработки всех возможных обстоятельств, связанных с безопасностью. Разумеется, средства, которые изначально использовались для повышения уровня безопасности (см. лекцию 3), обновляются Microsoft по мере обнаружения новые слабых мест. Структурированный подход является ключом к успешной защите веб-сайта. Легко не выполнить какой-либо шаг или не завершить задачу, но вероятность таких ошибок уменьшится, если следовать упорядоченной схеме выполнения процесса. Ниже приведено краткое описание процесса переоценки. Примените последние исправления и процедуры по укреплению системы, имеющиеся в разделе безопасности веб-сайта Microsoft TechNet (www.microsoft.com/technet/security). Так как эти исправления часто меняются, то здесь не указан конкретный адрес URL.Дважды проверьте основу безопасности сайта, запустив новое средство Microsoft Security Baseline Analyzer (MSBA) для проверки политики Windows 2000 и слабых мест в конфигурации, которые не были исправлены при помощи надстроек безопасности. Более подробную информацию об этой программе и инструкции по ее загрузке можно найти в документе Q320454 на сайте TechNet.Еще раз выполните IIS Lockdown, чтобы удостовериться в корректности конфигурации и политики безопасности IIS (см. лекцию 3).Проведите тестирование безопасности системы, настраивая основные параметры безопасности и применяя рекомендации в качестве превентивных мер защиты.Повторите этот цикл в соответствии с политикой безопасности организации.
ПРОБЛЕМА
Обнаружив, что компьютер атакован, довольно трудно оставаться спокойным и хладнокровным, но это необходимо для принятия здравых и правильных решений. Не все инциденты, связанные с нарушением безопасности, являются реальными. Может возникнуть ложная тревога, если средства наблюдения зафиксировали происшествие, которое на самом деле не является атакой или вредоносным действием. В таких стрессовых ситуациях поможет четкое и последовательное выполнение действий. Клиентам не особо понравится, если вы отключите сайт, и обиднее всего, если в действительности на сайт не было произведено никакой атаки. Ниже приведен перечень процедур, который поможет выявить и определить источник подозрительных событий. В ситуациях, связанных с возможным нарушением безопасности сайта, выполните следующие шаги. Определите все системы, задействованные в происшествии.Предотвратите перезагрузку компьютера, вход и выход из системы или случайный запуск вредоносного кода.Проверьте журналы аудита на наличие признаков несанкционированных действий. Отсутствие журналов или пустые места в файлах журналов представляют собой явные признаки сокрытия следов атаки.Проверьте ключевые учетные записи и группы. Попробуйте обнаружить попытки входа через учетные записи по умолчанию. Проверьте группы Administrators (Администраторы), Backup Operators (Операторы учетных записей) и Web Site Operators (Операторы веб-сайта) на наличие несанкционированных записей или членов группы. Проверьте учетные записи на повышенные привилегии. Отследите активность в нерабочие часы.Осуществите в каталогах веб-сервера поиск файлов, которые вы там не располагали. Осуществите поиск в системе средств хакеров ("троянских коней", таких как Subseven, и т.п.).Проверьте Task Manager (Диспетчер задач) Windows 2000 (открывается нажатием комбинации Ctrl+Alt+Del) на наличие неизвестных приложений или процессов. Проверьте конфигурацию служб на наличие автоматически запускаемых служб, которые не включались в процессе укрепления системы.
Проведение аудита безопасности
Итак, что же следует искать при аудите сайта после инцидента, связанного с нарушением безопасности? Ответ на этот вопрос либо очень прост – поиск всего, что свидетельствует о подозрительной или необычной активности, либо ответ заключается в отсутствии ответа на этот вопрос. В данном случае больше подходит вопрос: "С чего начать?". Начать следует с просмотра журналов на предмет обнаружения улик в различных областях. Необходимо определить нанесенный ущерб. Утеряны ли файлы? Имел ли место явный сбой в работе сервера? Обнаружен ли признак хорошо известной атаки в журналах? Присутствует ли в системе вирус? Ответы на эти вопросы и будут той базой, на основе которой вы продолжите "разбор полетов". После этого исследуйте каждую категорию событий для выявления этапов проведения атаки. При включенном аудите (см. лекцию 5) фиксируются данные о следующих категориях событий: события входа;управление учетными записями;доступ к объектам;использование привилегий;изменение политики;системные события.
В общем, с помощью исследования файлов или объектов, на которые было оказано воздействие, можно выявить последовательность событий, которая привела к сбою. В лекции 6 содержатся подробные инструкции по аудиту, предоставленные Microsoft Security Operations Guide Windows 2000 Server (Руководство по безопасности сервера Windows 2000). Это руководство содержит детали всех конкретных событий, которые необходимо отследить. Адрес URL данного руководства очень велик и, скорее всего, уже изменился, поэтому здесь он не приводится. Можно найти это руководство через поиск на сайте Microsoft TechNet (www.microsoft.com/technet) строки "Security Operations Guide for Windows 2000 Server".
Реагирование на атаку
Если выяснилось, что защита сервера преодолена, следует быстро и правильно принять решение об ответном действии. Во-первых, попытайтесь определить атакующего. Просмотрите журналы сервера и сетевого экрана, чтобы определить, из какого места исходила атака – с другой взломанной системы в сети или из интернета. Не делайте предположений – старайтесь выявлять факты. Когда вы узнаете, откуда была выполнена атака, попытайтесь остановить ее. Можно применить фильтрацию адреса или домена для блокировки источника. Отключите компьютеры от сети, если уверены, что на них находятся вредоносные файлы, или что они заражены червем или вирусом. Если вы подверглись распределенной атаке на отказ в обслуживании (DDoS), обратитесь за помощью к поставщику коммуникационных услуг.
Сводный перечень действий, формирующих жизненный цикл управления безопасностью
Дважды проверьте и протестируйте основные аспекты безопасности системы. Примените самые последние обновления и надстройки безопасности.Воспользуйтесь программой Microsoft Basic Security Analyzer.Еще раз выполните IIS Lockdown.Осуществите проверку наличия уязвимых мест в реальных условиях. Обеспечьте превентивный контроль безопасности.Осуществляйте регулярный просмотр журналов.Ведите аудит выключения сервера и просматривайте журналы сразу после сбоев.Осуществляйте поиск признаков атак в файлах журналов.Установите оповещения Windows 2000 и IIS.Попробуйте обнаружить внешние признаки атак в журналах сетевого экрана и маршрутизатора. Реагируйте на инциденты, связанные с нарушением безопасности.Попытайтесь отследить источник атаки.Как можно скорее предотвратите действие атаки посредством фильтрации исходных адресов и отключения сервера от сети при необходимости.Примите решение о том, чтобы оставить сайт функционирующим. Обратитесь за инструкциями к политике безопасности.Осуществите аудит безопасности для определения размеров ущерба и источника атаки. Четко фиксируйте обнаруженные факты.Определите, какие меры безопасности необходимо предпринять, и реализуйте их. Исключите всякую возможность проникновения в систему посторонних людей.Верните систему к нормальному функционированию.
Тестирование на уязвимость в реальном режиме
Специалисты в области информационной безопасности рекомендуют проводить тестирование в реальном режиме для проверки воздействия атак, посредством которых хакеры определяют степень защищенности веб-сайта. В статье "Переоценка уязвимости: превентивные меры по обеспечению безопасности вашей организации", опубликованной на веб-сайте SANS, говорится, что при проведении переоценки уязвимых мест используемый набор средств должен быть похож на тот набор инструментов, который использует противник. Это обеспечит защищенность систем от атак, которые в данный момент находятся на пике популярности среди хакеров. Ниже приведен список некоторых полезных средств, которые можно бесплатно загрузить из интернета. Коммерческое программное обеспечение для сканирования выпускается такими производителями как Symantec, Network Associates, BindView, eDigital Security и Internet Security Systems. Nmap – утилита для исследования сети и/или аудита безопасности. Быстро и аккуратно сканирует сети и определяет доступные узлы, работающие службы и используемые операционные системы. Доступна по адресу http://www.insecure.org.Nessus – удаленный сканер безопасности. Осуществляет аудит сети и определяет наличие уязвимых мест. Программа запускает имеющиеся в ее комплекте эксплоиты и выводит отчет о степени успеха работы каждого из них. Доступна по адресу http://www.nessus.org.Whisker – интернет-сканер CGI. Осуществляет сканирование на предмет наличия известных уязвимых мест в веб-серверах с предоставлением URL, вызвавшего событие. Определяет тип функционирующего веб-сервера, легко обновляется и имеет множество полезных возможностей. Доступна по адресу http://www.wiretrip.net/rfp/p/doc.asp?id=21&iface=2.Enum – консольная Win32-утилита для сбора информации. С помощью недействительных сеансов получает перечни пользователей, компьютеров, общих объектов, имен, групп и членов групп, а также информацию о паролях и политике. Осуществляет примитивную атаку грубой силы, направленную на отдельные учетные записи. Доступна по адресу http://razor.bindview.com/tools/index.shtml.
Некоторые из этих средств работают под Windows, некоторые – под UNIX или Linux. Если вы немного разбираетесь в хакерстве, имеете доступ к платформам, использующим отличную от Windows платформу, и достаточно времени для тестирования, то сможете самостоятельно выполнить нужные тесты для подтверждения защищенности сервера. Однако большинство из вас не сможет этого сделать. Существует альтернативный подход. Один из вариантов – обращение к консультанту. Также можно использовать новый, доступный в интернете, тип служб, осуществляющий автоматическое сканирование сайта. Выполнив поиск в системе Google по строке "Online Vulnerability Testing Service", вы получите перечень компаний, предлагающих подобные услуги. Некоторые из этих услуг имеют бесплатные демонстрационные версии, и вам стоит потратить время на их изучение.
Установка оповещения операционной системы
Один из подходов к использованию счетчиков производительности и оповещений на веб-сервере без анонимной аутентификации заключается в выдаче уведомления при возникновении большого числа ошибок входа в систему, означающего атаку злоумышленника. Так, например, если установить порог, равный 25 ошибкам входа, то после превышения этого порога система будет выдавать сообщение. Ниже приведена процедура настройки данного типа оповещения. Откройте консоль MMC Performance Monitor (Производительность) (см. рис. 7.2). Щелкните правой кнопкой мыши на значке Alerts (Оповещения) и в появившемся меню выберите New Alert Settings (Новые параметры оповещений). При появлении запроса укажите имя, описывающее параметр, например, Logon Failures (Ошибки входа).
 увеличить изображение Рис. 7.2. Используйте индикатор производительности для создания оповещения После присвоения правилу имени появится диалоговое окно Logon Failures (Ошибки входа), в котором определяется правило для создаваемого оповещения (см. рис. 7.3) с пустыми полями. Эта процедура начинается на вкладке General (Общие). Добавьте комментарий в верхнее поле, после чего нажмите на кнопку Add (Добавить) для начала создания правила.
 Рис. 7.3. Первым шагом в создании оповещения является добавление правила Счетчики являются первым параметром правила, который необходимо определить. Диалоговое окно Select Counters (Добавить счетчики) изображено на рис. 7.4. При подсчете событий на локальном компьютере выберите опцию Use Local Computer Counters (Использовать локальные счетчики). При подсчете событий на другом сервере в домене Windows укажите имя компьютера, выбрав опцию Select Counters From Computer (Выбрать счетчики с компьютера).
 Рис. 7.4. В диалоговом окне Select Counters (Добавить счетчики) определяются параметры счетчика Выберите тип объекта производительности, отслеживаемого компьютером, в ниспадающем списке Performance Object (Объект).
В нашем примере выберите Server Object (Сервер).Определите сам счетчик. Внизу диалогового окна выберите опцию Select Counters From List (Выбрать счетчики из списка) и в списке выберите опцию Errors Logon (Ошибок входа). Будет доступна и другая опция – All Counters (Все счетчики), но правило столь широкого действия не потребуется для нашего примера.Нажмите на кнопку Add (Добавить) для создания счетчика, после чего нажмите на Close (Закрыть) для выхода из окна и возврата к предыдущему окну.В окне Logon Failures (Ошибки входа) (см. рис. 7.3) определите способ применения счетчика. Щелкните на ниспадающем меню рядом с полем Alert When The Value Is (Оповещать, когда значение) и выберите Over (Больше). Установите предел, равный 25.Внизу диалогового окна показано, что правило установлено на съем показаний счетчика через каждые 5 с (значение по умолчанию). Так как это обеспечивает слишком частый съем показаний (даже автоматизированная программа вряд ли сможет осуществить столько попыток входа за 5 с), укажите более подходящее значение, равное 60 с, для уменьшения затрачиваемых ресурсов и повышения чувствительности счетчика.Теперь определите действие, инициирующее оповещение. Откройте вкладку Action (Действие) (см. рис. 7.5). В появившемся диалоговом окне выберите параметры действий, которые необходимо предпринимать. В данном случае разумно установить всплывающее сетевое сообщение, отправляемое в консоль управления сервером (сервер будет отправлять сообщение самому себе для немедленного предупреждения администратора). Более того, при удаленном управлении нужно отправлять сообщение на вашу рабочую станцию, для чего необходимо указать имя вашего рабочего компьютера.
 Рис. 7.5. Во вкладке Action (Действие) определите для сервера способ обработки оповещения
После определения действия правило готово к работе. Можно создать расписание работы правила с помощью вкладки Schedule (Расписание), однако Windows 2000 по умолчанию предусматривает немедленный запуск правила, если не указаны другие параметры.Нажмите на кнопку Apply (Применить), чтобы созданное правило вступило в силу, после чего нажмите на OK для выхода из окна.
Установка оповещения веб-службы
Аналогично оповещениям операционной системы можно установить оповещения для событий в веб-службах IIS. Используется широкий набор порогов веб-служб для создания правил: число вхождений событий в секунду, текущее количество подключений, общее число отклоненных событий и другие. В таблице 7.3 показаны некоторые полезные оповещения (этот список далеко не полон). Для установки оповещения веб-службы выполните процедуры, описанные в разделе "Установка оповещения операционной системы", но в диалоговом окне Select Counters (Добавить счетчики) укажите другие параметры. Откройте консоль MMC Performance Monitor (Производительность) (см. рис. 7.2), щелкните правой кнопкой мыши на значке Alerts (Оповещения). Во всплывающем меню выберите команду New Alert Settings (Новые параметры оповещений). При появлении запроса укажите имя, описывающее данный параметр.Определите правила для создаваемого оповещения в диалоговом окне Logon Failures (Ошибки входа) (см. рис. 7.3). Добавьте комментарий в верхней части окна и нажмите на кнопку Add (Добавить), чтобы начать создание правила.В диалоговом окне Select Counters (Добавить счетчики) (см. рис. 7.6) еще раз выберите опции Use Local Computer Counters (Использовать локальные счетчики) и Select Counters From List (Выбрать счетчики из списка). На этот раз в поле Performance Object следует выбрать Web Services (Веб-службы).Станет активной правая часть окна. Выберите All Instances (Все вхождения), если нужно, чтобы счетчик был активен на всех веб-сайтах сервера, либо укажите определенные сайты.
Таблица 7.3. Оповещения IIS и их возможные причиныСчетчик веб-службОписание | Не обнаружено ошибок в секунду | При превышении значения означает попытку раскрытия на сервере адреса URL виртуальных каталогов. | | Всего попыток подключения | При превышении значения означает, что сайт подвергся атаке на отказ в обслуживании (DoS) посредством перегрузки сервера соединениями. | | Текущие анонимные пользователи | При превышении значения означает проникновение на веб-сайт для сохранения элементов, связанных с другим сайтом. Это менее опасно по сравнению с атакой DoS, так как сервер не выводится из рабочего состояния, но при этом используются ваши ресурсы. Набор аналогичных счетчиков, фиксирующих текущее или полное число одновременных событий, поможет выявить ненормальное использование ресурсов. |
 Рис. 7.6. При установке счетчика веб-служб укажите нужные веб-сайты Откройте вкладку Action (Действие) и выберите действие, инициирующее правило (см. рис. 7.4). После этого нажмите на кнопку Add (Добавить) для добавления правила и закройте окно.Вернувшись к окну Logon Failures (Ошибки входа), нажмите на кнопку Apply (Применить) для активирования правила, затем нажмите на OK для выхода из окна.
Устранение проблемы
В ответ на вторжение необходимо обеспечить защиту сайта от подобных атак в будущем. Хакеры придают взлом систем широкой огласке, регулярно предоставляют друг другу адреса систем и обмениваются информацией. Злоумышленники пытаются получить доступ по имеющимся у них адресам систем повторно через достаточно продолжительный период времени. Перед тем как снова включать сайт в нормальную работу, необходимо удостовериться, что он более не является уязвимым. После определения источника атаки посетите веб-сайт Microsoft для выяснения того, появилась ли надстройка, устраняющая это уязвимое место. Если оно возникло в периметре сети, проверьте сайты фирм-производителей сетевых экранов и маршрутизаторов и обновите правила фильтрации. В качестве компонента успешного вторжения злоумышленники, как правило, устанавливают "черные ходы", позволяющие впоследствии снова получить доступ к системе-жертве. Если вы не уверены, что подобные программные элементы отсутствуют на компьютере, то полностью переустановите все программное обеспечение системы. Так как трудно судить, что же именно было объектом атаки, многие администраторы предпочитают переустанавливать систему согласно устоявшейся политике. На сервере следует также сменить все имена и пароли учетных записей пользователей.
Безопасность IIS
Аутентификация с использованием протоколов открытого ключа
Протоколы открытых ключей позволяют устанавливать авторизованные шифруемые связи между узлами внутренних сетей и в интернете. Существуют три модели аутентификации, проводимой в этих протоколах; они используются как по отдельности, так и в комбинации. Аутентификация клиента. Позволяет серверу Windows 2000 VPN или веб-серверу IIS идентифицировать пользователя с использованием стандартных методов шифрования на открытом ключе. Осуществляет проверку подлинности сертификата клиента и общего ID, а также проверку того, что эти данные сгенерированы бюро сертификатов, корневой сертификат которого установлен в перечне доверенных CA. Эта проверка очень важна, если сервером является банк, который передает конфиденциальную финансовую информацию клиенту и должен подтвердить личность получателя. На рисунке 8.1 отображен процесс аутентификации.Аутентификация сервера. Позволяет клиенту VPN или браузеру клиента SSL/TLS подтверждать идентичность сервера, проверяя правильность сертификата сервера и идентификатора ID, а также то, что сертификаты выпущены бюро сертификатов (CA), корневой сертификат которого присутствует в перечне доверенных CA клиента. Это подтверждение имеет важное значение для пользователя веб-сайта, который отправляет номер кредитной карты через сеть и хочет удостовериться в том, что это именно тот сервер, который ему нужен.Взаимная аутентификация. Позволяет клиенту и серверу авторизовать друг друга единовременно. Взаимная аутентификация требует, чтобы клиент и сервер имели цифровые сертификаты и соответствующие корневые сертификаты CA в перечнях доверенных CA.
Большая часть коммерческих CA, таких как Verisign, встроены в браузеры Netscape и Microsoft как корневые сертификаты по умолчанию. Пользователям и менеджерам сети не нужно устанавливать сертификаты, аутентификация сервера работает автоматически. Если организация выступает в роли своего собственного бюро сертификатов, то необходимо дополнительно установить корневой сертификат во всех браузерах компьютеров-клиентов интранет-сети и предоставить соответствующие инструкции.
На рисунке 8. 1 показано, как работает аутентификация SSL/TLS. На практике в большей части веб-сайтов используется только серверная аутентификация с помощью цифрового сертификата, так как распространение клиентских сертификатов среди всех посетителей сайта представляет собой огромную работу (это сделать несколько легче, если клиенты объединены в сеть интранет).
Аргументом против использования сертификатов на компьютерах-клиентах является то, что при этом система открывается для потенциальных словарных атак. Клиент с браузером аутентифицирует сервер методами открытого ключа, но сервер просто использует пароли для аутентификации своих клиентов, поэтому хакер может выполнить атаку посредством угадывания пароля. Руководство компаний, не использующих сертификаты, считает, что цена разработки выше, чем реальная угроза; как и большая часть бизнес-решений, данное утверждение основывается на экономическом факторе.
 увеличить изображение Рис. 8.1. Аутентификация сервера сертификата клиента
Цифровые подписи и инфраструктура открытого ключа
Шифрование на общем ключе привело к введению цифровых сертификатов, используемых для аутентификации на веб-сайтах с протоколами SSL/TLS и IPSec. Цифровой сертификат представляет собой цифровой документ (небольшой файл), заверяющий подлинность и статус владельца для пользователя или компьютерной системы. Например, бизнес-сертификат подтверждает тот факт, что компания обладает определенным открытым ключом. Цифровые сертификаты помогают автоматизировать распределение открытых ключей в протоколе шифрования с открытым ключом. Когда другому компьютеру необходимо произвести обмен данными с вашей системой, он осуществляет доступ к цифровому сертификату, содержащему ваш открытый ключ. Набор продуктов и процессов, необходимых для безопасного создания, управления и распределения цифровых сертификатов, называется инфраструктурой открытого ключа (PKI). Одним из компонентов PKI является компьютер, называемый сервером сертификатов. Объединение, включающее сервер сертификатов и создающее сертификаты, называется бюро сертификатов (CA). CA несет ответственность за подтверждение подлинности сертификата и принадлежности его физическому лицу или организации перед созданием сертификата. Существуют компании, например, Verisign и SSL.com, являющиеся коммерческими CA. Эти организации за определенную плату выпускают сертификаты для отдельных лиц и компаний. Если организация взяла на себя роль своего собственного бюро сертификатов и выпускает свои сертификаты, то необходим программный продукт Microsoft Sertificate Server, но придется установить этот компонент и управлять им на отдельном сервере в целях безопасности. Руководство многих компаний предпочитает оплатить услугу по получению сертификатов вместо покупки своего собственного оборудования и выделения необходимых ресурсов для самостоятельного выпуска сертификатов. Стандарт цифровых сертификатов X.509 обеспечивает совместимость с протоколами SSL/TLS и IPSec, используемыми в Microsoft Windows 2000 и IIS. Согласно этому стандарту цифровой сертификат X.509 v3 должен содержать четыре объекта.
Отличительное имя ( Distinguished Name, DN) организации, от которой получен сертификат (т.е. имя, введенное в поле Name сертификата).Открытый ключ отдельного лица или организации, идентифицируемый сертификатом.Цифровую подпись, полученную от секретного ключа бюро сертификатов, предусмотренного соответствующим сервером сертификатов.Отметки о дате, означающие даты выпуска и срок действия сертификата.
Имея эту информацию, два узла в виртуальной частной сети или веб-сервер и правильно настроенный веб-браузер могут отправлять и получать потоки данных, которые будут расшифрованы только ими.
Установление доверия к бюро сертификатов осуществляется по решению персонала или руководства компании. В интернете, как правило, принимается сертификат Verisign. После вынесения решения о доверии корневой сертификат СА нужно установить на серверах и клиентах, осуществляющих взаимную аутентификацию. Корневым сертификатом называется сертификат, содержащий открытый ключ CA, которому будут сопоставляться отдельно выпущенные и подписанные сертификаты с применением концепции открытого ключа для подтверждения подлинности сертификатов. Например, браузер авторизует цифровой сертификат веб-сайта, сопоставляя подпись сертификата с открытым ключом корневого сертификата CA, установленного в браузере. С помощью этой проверки браузер определяет, что сайт на самом деле принадлежит компании или организации, которую он представляет (в силу доверия к бюро сертификатов).
Как работает безопасное веб-соединение
TLS и SSL составляют неотъемлемую часть большинства веб-браузеров (клиентов) и веб-серверов. В SSL/TLS используется уровень приложений, расположенный между протоколами HTTP и TCP, которые являются частью браузеров Microsoft и Netscape и встроены в IIS. Под сокетами (от названия протокола Secure Socket Layer) понимается возможность всех операционных систем, используемых приложениями, передавать и принимать данные через сеть. Шифруемое соединение SSL/TLS позволяет шифровать на сервере и расшифровывать на клиенте (и наоборот) всю информацию, передаваемую между ними. Шифрование осуществляется с помощью симметричного шифра после безопасного обмена сеансовыми ключами посредством шифрования на открытом ключе (см. раздел "Комбинирование методов шифрования"). Алгоритмом открытого ключа является RSA, а симметричным шифром, используемым по умолчанию, – RC-4. Дополнительно все данные, передаваемые через шифруемые соединения, защищаются механизмом обнаружения злоумышленных действий, который отслеживает изменение данных при передаче. Сеанс SSL между клиентом и сервером устанавливается следующим образом. Клиент открывает сокет и запрашивает подключение к серверу.Сервер аутентифицирует клиента (либо по паролю, либо посредством сертификата, отправляемого клиентом).После установки соединения сервер передает браузеру свой открытый ключ посредством отправки сертификата сервера, выпущенного доверенным бюро сертификатов.Клиент аутентифицирует сертификат.Клиент и сервер осуществляют обмен настроечной информацией для определения типа и силы шифрования, используемых в сеансе соединения.Клиент создает сеансовый ключ, используемый для шифрования данных.Клиент шифрует сеансовый ключ с помощью открытого ключа сервера (полученного из сертификата сервера) и отправляет его серверу. Секретный ключ, с помощью которого можно расшифровать сеансовый ключ, находится только на сервере.Сервер расшифровывает сеансовый ключ и использует его для создания безопасной сессии, через которую будет осуществляться обмен данными с клиентом.
Необходимым условием успешной реализации этих шагов является заранее установленный на клиенте корневой сертификат, полученный от доверенного бюро сертификатов. При использовании сертификата, полученного от коммерческого CA, корневой сертификат которого уже имеется в Microsoft Internet Explorer и Netscape Communicator (например, Verisign), не нужно беспокоиться об этом. При использовании сертификатов клиентов серверу необходимо установить клиентский корневой сертификат, выпущенный клиентским бюро сертификатов.
Ключи и шифры
Системы шифрования делают данные нечитабельными и, наоборот, доступными для чтения с использованием алгоритмов, называемых шифрами. Шифр представляет собой определенный метод кодирования и декодирования данных. Во времена Юлия Цезаря римляне использовали простой шифр со смещением букв алфавита. Для расшифровки римского сообщения получателю требовался ключ; т.е. ему необходимо было знать, на какое расстояние смещены буквы алфавита и в каком направлении. В настоящее время в системах шифрования используются сложные математические формулы и большие двоичные числа, но принцип остается все тем же. Компьютеризированные системы шифрования создаются таким образом, чтобы шифруемые данные с использованием внутреннего ключа обрабатывались программой, называемой системой шифрования. Как правило, для расшифровки данных компьютеру требуются две вещи: шифр и ключ. В Windows 2000 и IIS система шифрования встроена в саму операционную систему. Это позволяет службам и приложениям операционной системы выполнять шифрование в реальном времени. Например, если сервер Windows 2000 настроен на шифрование файлов в папке, шифрование происходит при сохранении файла. Если сервер настроен на работу с VPN или использует протоколы SSL/TLS, данные шифруются в момент отправки их в сеть и расшифровываются после получения.
Комбинирование методов шифрования
Несмотря на то, что шифрование на открытом ключе имеет преимущество с точки зрения безопасности обмена ключами, его недостатком является скорость работы. Системы шифрования с ассиметричными ключами работают гораздо медленнее, чем системы с симметричными ключами. Они применяются только для шифрования небольших объемов данных, их не рекомендуется использовать в случае больших объемов информации при шифровании в реальном времени в сеансах безопасного соединения. Стандарты SSL/TLS и IPSec, применяемые для шифрования данных в режиме реального времени в интернете, комбинируют алгоритмы ассиметричного и симметричного шифрования для использования преимуществ каждого. Например, на практике шифрование на открытом ключе не используется для шифрования данных в сессии безопасного соединения, так как оно работает медленно в сравнении с шифрованием на секретном ключе такой же длины. Вместо этого для аутентификации, шифрования и отправки ключа для симметричного шифра RC4 или AES (объем данных относительно невелик) используется шифрование с открытым ключом. Симметричный шифр используется для шифрования данных сеанса (данные, объем которых измеряется мегабайтами). На принимающей стороне программное обеспечение сначала расшифровывает симметричный ключ, после чего использует его для расшифровки полезных данных. Комбинирование методов шифрования повышает общий уровень безопасности системы шифрования. Посредством ассиметричного шифрования для доставки ключей сессии симметричного шифрования система может использовать отдельный симметричный ключ для каждого сеанса. Разумеется, это можно делать как при помощи SSL, так и IPSec. Программное обеспечение выбирает симметричный ключ случайным образом. Таким образом, раскрытие одного ключа сеанса связи (что происходит крайне редко) не влияет на следующую установку сеанса.
Настройка IIS на работу с SSL/TLS
При настройке сайта IIS на шифрование SSL/TLS нужно выполнить четыре процедуры. Создание пары открытых ключей, используемых в CA при запросе сертификата.Запрос сертификата сервера от CA.Установка сертификата.Настройка каталогов и страниц, безопасность которых необходимо обеспечить.Совет. При приобретении сертификата у коммерческого бюро сертификатов весь процесс займет больше времени, причем оно будет потрачено, в основном, на ожидание завершения процедуры подтверждения в бюро сертификатов. Этот процесс может занять несколько дней, поэтому вы не сможете выполнить все четыре шага за один раз. Вам придется предоставить бюро сертификатов достаточное количество документов, подтверждающих заявленный статус и сферу деятельности вашей организации, и только после проверки этих данных вы получите сертификат. Тем не менее, некоторые коммерческие CA предоставляют через интернет пробные сертификаты, срок действия которых сильно ограничен, но это, по крайней мере, позволяет завершить экспериментальную настройку.
с рабочего стола Windows информация
При установке каталога с зашифрованными свойствами в Windows Explorer или с рабочего стола Windows информация будет шифроваться на диске. В IIS SSL/TLS шифруют информацию при непосредственной передаче по сети браузеру клиента.
 Рис. 8.9. На вкладке Web Site (Веб-узел) установите порт SSL
Откройте вкладку Directory Security (Безопасность каталога). В области Secure Communications (Безопасные соединения) станут доступными кнопки View Certificate (Просмотр) и Edit (Изменить) (см. рис. 8.10). Для каталога кнопка изменения сертификата будет недоступна, так как эта операция осуществляется на уровне веб-узла, а не на уровне каталога. Нажмите на кнопку Edit (Изменить) для настройки параметров SSL/TLS.В окне Secure Communications (Безопасные соединения) (см. рис. 8.11) отметьте опцию Require Secure Channel (SSL) (Требовать безопасное соединение [SSL]). Станет доступной опция Require 128-Bit Encryption (Требовать 128-битное шифрование); ее также следует отметить. Важно. Для обеспечения безопасности сайта не используйте шифрование на ключе длиной меньше, чем 128 бит. 56-битный алгоритм DES довольно легко взломать, но стоит сменить длину ключа на 128 бит – и шифрование станет на несколько порядков мощнее.На данном этапе выполнены все требования, необходимые для включения SSL/TLS. Нажмите на OK, чтобы применить настройки и выйти из окна Web Site Properties.
 Рис. 8.10. Во вкладке Directory Security (Безопасность каталога) нажмите на кнопку Edit (Изменить) для настройки безопасных соединений на сайте, поддерживающем сертификаты
 Рис. 8.11. Выберите нужные настройки SSL в окне Secure Communications (Безопасные соединения)
Обратите внимание на рисунок 8.11: окно Secure Communications (Безопасные соединения) позволяет указать способ поддержки сертификатов на клиентах, посещающих веб-сервер. Можно выбрать следующие опции.
Игнорировать сертификаты клиентов. Отключает использование на сервере клиентских сертификатов для аутентификации независимо от того, установил ли клиент сертификат.Принимать сертификаты клиентов.Позволяет серверу принимать сертификаты клиентов в качестве одного из методов аутентификации.Требовать сертификаты клиентов. Предотвращает доступ клиентов, не имеющих сертификаты на своих системах, к защищенному содержимому сайта.
Можно связать сертификаты клиентов с учетными записями пользователей на веб-сервере. После установки этой связи каждый раз при входе пользователя с использованием сертификата клиента сервер автоматически свяжет этого пользователя с соответствующей учетной записью Windows. Так осуществляется автоматическая аутентификация пользователей, входящих в систему с помощью клиентских сертификатов, без применения аутентификации Basic (Базовая), Messaging Digest (Обработка сообщений) или встроенной аутентификации Windows.
Обеспечение безопасности сайта или каталога
После установки сертификата завершите процесс настройки SSL/TLS для сайта. Чтобы сделать это корректным образом, обдумайте структуру сайта. На большей части сайтов, даже если на них используется шифрование, имеется нешифруемый раздел. С точки зрения производительности крайне неразумно шифровать все страницы. Каждый раз на это тратится процессорное время. При шифровании всех данных на сайте вероятно возникновение перегрузки и затруднений в работе сервера. Этого можно избежать, используя вспомогательную карту шифрования (см. лекции 9). Однако, не стоит забывать, что загрузку сервера можно разумно планировать. Ваша домашняя страница не требует шифрования. Большинство компаний оставляют раздел сайта с рекламным материалом, контактной информацией и другими открытыми данными в отдельных нешифруемых каталогах. Веб-дизайнер создаст отдельный раздел (или другой сайт) с содержимым, предназначенным для конфиденциального доступа клиентов, и обеспечит шифрование только этой информации. Если сайт организован аналогичным образом, имеет смысл структурировать его так, как показано на рис. 8.8.
 увеличить изображение Рис. 8.8. Не нужно шифровать каждую страницу веб-узла После упорядочивания информации можно начинать установку. Теперь, когда сайт является совместимым с SSL/TLS, укажите, будут ли зашифрованные страницы располагаться по всему сайту или только в определенных каталогах. Процедура настройки шифрования SSL/TLS состоит из следующих шагов. Откройте консоль MMC Internet Services Manager (Диспетчер служб интернета) и в дереве ресурсов найдите сервер. Щелкните правой кнопкой мыши на сервере либо откройте сервер, чтобы перейти в каталог, содержащий подлежащие защите страницы, после чего выберите во всплывающем меню команду Properties (Свойства).Укажите порт, который будет использоваться IIS для функционирования SSL/TLS. Это можно сделать на вкладке Web Site (Веб-узел) (см. рис. 8.9). Стандартным портом для безопасных соединений в интернете является порт 443.Для сохранения конфигурации нажмите на кнопку Apply (Применить). Совет. Шифрование каталога IIS работает иначе, чем в Windows 2000.
Основы шифрования
Вначале рассмотрим несколько важных принципов шифрования. Шифрование включает в себя кодирование данных, чтобы их мог прочитать только определенный получатель. Шифрование – это древняя наука, первые сведения о ней относятся еще к ХХ веку до нашей эры (Египет). Римляне использовали шифрование сообщений в процессе обмена информацией между войсковыми подразделениями. Сегодня системы шифрования широко используются для передачи секретных цифровых данных через компьютерные сети.
ПРОБЛЕМА
Обе технологии, IIS SSL и TLS, позволяют использовать различные шифры посредством изменения значений в реестре Windows 2000. Имейте в виду, что изменение длины ключа или значения шифра повлияет на шифры на всем компьютере в целом, поэтому приложения типа Internet Explorer (использующий те же записи реестра для определения доступных шифров) будут использовать новые шифры. Это может пригодиться при возникновении определенных обстоятельств на веб-сайте, где основным приложением является IIS. Для изменения параметров шифра IIS SSL/TLS выполните следующие шаги. Запустите программу Regedit и найдите ключ реестра: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\CiphersВ списке доступных шифров выберите тот шифр, который не хотите использовать. В области справа просмотрите Enabled Value (Значение) для этой записи. Значением может быть одна из величин: 0xffffffff (включено) 0x0 (выключено)Щелкните на записи Enabled (Включено), выберите Edit (Изменить), после чего выберите Modify (Изменить). В окне Edit DWORD Value (Изменение параметра DWORD) убедитесь, что параметр Value (Значение) установлен на Enabled (Включено), а опция Base Value (Базовое значение) – на Hexademical (Шестнадцатеричное).В поле Value Data (Данные значения) удалите прежнее значение, после чего включите его, указав значение 0, либо отключите, указав значение ffffffff.Нажмите на OK. Перезапустите IIS, чтобы применить изменения.
Работа с безопасными соединениями IIS
С точки зрения безопасности нешифруемое соединение между сайтом IIS и браузером доступно любому. В общем случае это не является проблемой при использовании сайта только в рамках интранет-сети, в которой отсутствует конфиденциальная информация, или при использовании сайта для широкого распространения рекламы компании и ее продукции. Но если на сайте ведется прием заказов или передается секретная информация, тогда необходимо обеспечить защиту данных. Протоколы SSL/TLS виртуально защищают все интерактивные банковские операции, денежно-кредитные транзакции и покупки. Например, все финансовые институты используют SSL для обеспечения безопасной передачи номера PIN каждого из клиентов и других конфиденциальных данных, связанных с учетной записью. Когда клиент использует кредитую карту для интерактивной покупки товаров, данные формы заказа передаются, как правило, через SSL-защищенный "туннель", доступный только сотрудникам отдела заказов поставщика выбранного товара. Совет. Протокол SSL изначально разработан компанией Netscape в середине 1990-х годов. С этого времени IETF работает над новым вариантом системы шифрования данных между клиентами и серверами под названием Transport Layer Security (TLS), основой которого является Netscape SSL 3.0 (эти версии не являются взаимозаменяемыми). Microsoft IIS поддерживает TLS 1.0 (новая версия) и SSL 3.0 (для обеспечения совместимости с более ранними версиями).
SSL и TLS обеспечивают очень надежное шифрование. Хорошо известны случаи похищения номеров кредитных карт с веб-сайтов, использующих технологию SSL/TLS, но эти преступления удалось совершить лишь потому, что информация хранилась в базе данных некорректным образом, а не потому, что хакер взломал шифр SSL/TLS.
Шифрование на открытом ключе (ассиметричное шифрование)
В 1970-х годах появилась новая система шифрования, называемая шифрованием на ассиметричном (открытом) ключе. Она называется ассиметричной, потому что не требует использования идентичных ключей отправителем и получателем шифрованного сообщения. Она является системой с открытым ключом, так как один из ключей не содержится в секрете. Давайте остановимся на этом поподробнее. Шифрование на открытом ключе использует два различных ключа, составляющих пару, но не идентичных. В шифровании с симметричным ключом каждый ключ является уникальным. Пара ключей открытый/секретный работает сообща: один ключ предназначен для шифрования данных, а другой – для расшифровки, и наоборот. Секретный ключ должен содержаться в секретности в целях безопасности, а открытый ключ может передаваться по небезопасному соединению без угрозы для системы. Следовательно, система шифрования на открытом ключе решает одну из главных проблем старых систем шифрования, заключающуюся в безопасном способе передачи ключа шифрования другой стороне. Как правило, открытые ключи используются только для зашифровки данных. Расшифровать их сможет только тот пользователь, чей компьютер содержит соответствующий секретный ключ. Эта система построена на математических принципах, используемых в шифрах с открытыми ключами и обеспечивающих существование одного и только одного уникального секретного ключа, соответствующего уникальному открытому ключу. Следовательно, если выполняется шифрование данных пользователя на общем ключе, можете быть уверены, что только пользователь, владеющий второй, секретной, половиной ключа, сможет их расшифровать. Первым коммерческим алгоритмом шифрования на открытом ключе был алгоритм RSA (сокращение представляет собой первые буквы фамилий трех специалистов, которые разработали шифр и впоследствии создали свою собственную компанию RSA Security, Inc.). Данный алгоритм использовался в Netscape в качестве компонента первой версии SSL (это был единственный шифр, используемый в Netscape), который в итоге фактически стал частью стандарта, когда Netscape открыли SSL для общего пользования. Microsoft изначально использовал шифрование RSA в операционной системе Windows NT, оно используется и в Windows 2000. Ключи RSA являются основными возможностями шифрования в Windows 2000/IIS.
Шифрование на симметричном (секретном) ключе
Исторически сложилось так, что системы шифрования являются системами на симметричных (секретных) ключах. Система шифрования на симметричном ключе использует один и тот же ключ как для зашифровки, так и для расшифровки данных. Когда римляне отправляли сообщения, зашифрованные посредством смещения алфавита, ключом была величина смещения и его направление. Используя эту информацию, получатель мог расшифровать сообщение посредством сдвига букв сообщения в обратном направлении для размещения их на исходных местах. В такой системе ключом являлось число (меньшее, чем число букв в римском алфавите) и направление (влево или вправо). Недостатком данной системы шифрования было то, что легко угадывался ключ и раскрывался текст сообщения. Современные компьютеризированные системы шифрования позволяют использовать очень длинные ключи. Если стороннее лицо узнает алгоритм шифрования, то для угадывания ключа длиной 128 бит понадобится очень много времени, даже при использовании компьютеризированных методов, так как количество возможных комбинаций равно 3,4 x 1038. Поэтому шифры, используемые в промышленности и в государственных стандартах безопасности, открыты для всеобщего доступа и хорошо известны. Это может показаться слишком легкомысленным, однако открытое распространение шифров, на самом деле, предназначено для повышения их защищенности, так как многие специалисты в области шифрования имеют возможность оценки, дополнения и совершенствования шифров. Примерами хорошо известных систем шифрования, алгоритмы которых доступны любому желающему, являются DES, Triple DES и новый стандарт AES. Некоторые коммерческие симметричные алгоритмы, такие как RC4, сделаны общедоступными для повышения надежности посредством проверки алгоритмов пользователями. Ниже приведен перечень современных симметричных шифров. DES – стандарт шифрования (Data Encryption Standard), используемый правительством США.Skipjack – секретный алгоритм симметричного ключа, применяемый в оборудовании, совместимом с FORTEZZA (применяется в правительстве США).Triple-DES – стандарт DES, применяемый трижды (для повышения сложности взлома).RC2, RC4, RC5 и RC6 – эти коммерческие шифры создаются и лицензируются компанией RSA Security, Inc.
Microsoft использует RC4 по умолчанию в протоколах PPTP и L2TP, SSL/TLS и при поддержке протокола IPSec (можно изменить в системном реестре).AES – стандарт AES является новым федеральным стандартом обработки информации, который применяется для определения криптографического алгоритма в организациях правительства США для защиты важной (секретной) информации.Важно. Стандарт DES разработан в начале 1970-х годов. Он десятилетиями использовался для шифрования финансовых транзакций между банками и финансовыми институтами. Сейчас этот стандарт устарел, так как длина его ключа ограничена 56 битами. Новые стандарты не имеют этого ограничения. Используя мощь современных микропроцессоров, 56-битный ключ DES может быть взломан за несколько часов, в то время как на взлом 128-битного ключа потребуются многие месяцы работы самых мощных компьютеров. Вывод: не следует использовать алгоритмы шифрования с ключами, длина которых меньше 128 бит.
Преимущество шифрования на симметричном ключе заключается в быстрой и эффективной работе, что делает его подходящим для приложений, требующих шифрования в реальном времени, в отличие от других методов, отрицательно влияющих на производительность систем.
Недостатком шифрования с использованием симметричного ключа является то, что ключи должны согласовываться между отправителем и получателем заранее, т.е. им необходимо договориться о ключах. При обмене ключами нужно соблюдать особые меры предосторожности, так как если ключи станут известны третьему лицу, то он легко расшифрует текст. Если количество получателей текста невелико, этот процесс можно осуществить с относительной легкостью, но при увеличении числа получателей его сложность возрастает в геометрической прогрессии. Следовательно, несмотря на возможность автоматизации, обмен ключами является очень ответственным процессом на веб-сайтах, с которыми работает большое число клиентов.
Сводный перечень действий по настройке параметров SSL
Решите, какую политику доверия и метод аутентификации нужно использовать для работы с цифровыми сертификатами, и выберите либо коммерческое бюро сертификатов, либо самоуправляемый сервер сертификатов.Сгенерируйте пару открытых ключей в диспетчере IIS Internet Information Services посредством создания запроса на подпись сертификата, который будет отправлен в бюро сертификатов.Запросите сертификат сервера из бюро сертификатов, перейдя по адресу URL запроса сертификата и заполнив данные в соответствующей форме.Установите сертификат на веб-сервер посредством выполнения инструкций, включенных в полученный от бюро сертификатов ответ.Настройте каталоги и страницы, безопасность которых необходимо обеспечить. Выполните следующие шаги: настройте параметры Web Site Properties (Свойства веб-узла) на использование порта 443 (или другого) для функционирования SSL/TLS;на вкладке Directory Security (Безопасность каталога) откройте окно Secure Communications (Безопасные соединения) и настройте параметры для 128-битного шифрования SSL;примите решение о необходимости аутентификации клиентов с помощью цифровых сертификатов и укажите соответствующие параметры в окне Secure Communications (Безопасные соединения).
Установка цифрового сертификата
После получения уведомления об одобрении запроса на сертификат и загрузки самого сертификата установите его на веб-сервер. Для установки вернитесь в консоль MMC Internet Services Manager (Диспетчер служб интернета) и выполните следующие шаги. Откройте консоль Internet Services Manager и в дереве ресурсов перейдите к веб-сайту, на который нужно установить сертификат. Щелкните правой кнопкой мыши на сайте, после чего в появившемся меню выберите Properties (Свойства), чтобы отобразить окно Web Site Properties (Свойства веб-узла).Откройте вкладку Directory Security (Безопасность каталога) и нажмите на кнопку Server Certificate, как и при создании запроса на подпись сертификата (см. рис. 8.2). Откроется Web Server Certificate Wizard (Мастер сертификатов веб-сервера). Мастер распознает, что у вас имеется нерассмотренный запрос (см. рис. 8.6). Убедитесь, что выбрана опция обработки запроса в очереди, после чего нажмите на Next (Далее) для продолжения установки.
 Рис. 8.6. Продолжите выполнение запроса в очереди в Certificate Wizard (Мастер сертификатов)
Совет. Если на любом этапе процедуры регистрации сертификата возникнут трудности, нажмите на кнопку Back (Назад), чтобы вернуться в предыдущий шаг, либо нажмите на Cancel (Отмена), чтобы просто закрыть окно и начать выполнение процедуры сначала.Укажите расположение и имя файла сертификата, полученного от бюро сертификатов. Нажмите на кнопку Browse (Обзор), чтобы перейти к этому файлу, либо укажите его имя, после чего нажмите на Next (Далее) для продолжения работы. Последнее окно мастера представляет собой отчет (см. рис. 8.7) о деталях вашего сертификата.Просмотрите все детали сертификата и убедитесь в их корректности. Если сертификат корректен, нажмите на Next.В появившемся окне нажмите на кнопку Finish (Готово), чтобы завершить установку.
 Рис. 8.7. После получения сертификата перед подтверждением установки убедитесь в корректности информации
Выполнение запроса на подпись сертификата
При первой установке безопасного протокола на компьютер, скорее всего, у вас еще нет открытого ключа, поэтому нужно предварительно создать пару ключей и подготовить сайт к запросу сертификата в бюро сертификатов. Создание ключей для сервера IIS осуществляется с помощью запроса на подпись сертификата (CSR). Для обеспечения правильного соответствия открытого и секретного ключей следует выполнить CSR с компьютера, для которого будет запрашиваться сертификат. Откройте консоль MMC Internet Services Manager (Диспетчер служб интернета) и в дереве ресурсов перейдите к веб-сайту, на котором требуется SSL/TLS для обеспечения безопасности веб-страниц. Щелкните правой кнопкой мыши на сайте и во всплывающем меню выберите Properties (Свойства).В окне Web Site Properties (Свойства веб-узла) откройте вкладку Directory Security (Безопасность каталога). В области Secure Communications (Безопасные соединения) нажмите на кнопку Server Certificate (Сертификат) (см. рис. 8.2). Откроется мастер, который сгенерирует пару открытых ключей и создаст CSR. Обратите внимание, что кнопки View Certificate (Просмотр сертификата) и Edit (Изменить) еще недоступны, так как сертификат до этого не устанавливался.
 Рис. 8.2. Используйте вкладку Directory Security (Безопасность каталога) окна Web Site Properties (Свойства веб-узла) для создания CSR Следуйте инструкциям мастера и отвечайте на вопросы по мере выполнения шагов. При создании запроса необходимо выполнить следующие действия. Выберите метод присвоения Assign A New Certificate (Присвоить новый сертификат).Выберите опцию Prepare The Request Now, But Send It Later (Подготовить запрос сейчас, но отправить его позже).В параметрах Name (Имя) и Security Settings (Параметры безопасности) введите предпочитаемое имя, после чего выберите длину, по крайней мере, в 1024 бита в области выбора Bit Length (Длина бита) (подразумевается, что эта опция доступна). Если вы работаете с сайтом в США, не следует выбирать опцию Server Gated Cryptography (Шифрование с использованием серверного шлюза).
Совет. При длине ключа большей, чем 1024 бита, затрачивается много времени на вычисление. Для большинства приложений длина ключа в 1024 бита обеспечивает надежную защиту.Укажите название организации и предоставьте информацию о подразделении в окне Organization Information (Информация об организации). Подразделение организации не имеет принципиального значения, если компания невелика, тем не менее, укажите имя.В окне Geographic Information (Данные о расположении) выберите страну в списке, введите штат (область), после чего укажите город. Не сокращайте вводимые данные, так как это может стать причиной отклонения запроса на сертификат.В окне Certificate Request File Name (Имя файла сертификата) выберите удобное имя и место, которое вы откроете из браузера при итоговом заполнении веб-формы для запроса на сертификат.По окончании работы мастера появится окно с отчетом (см. рис. 8.3). Если вся информация правильна, нажмите на Next (Далее), чтобы выйти из браузера.
 Рис. 8.3. Дважды проверьте информацию перед тем, как выйти из мастера
Мастер создаст файл CSR, сохраненный в месте расположения с указанным именем. Этот файл содержит открытый ключ для сайта.
Запрос на сертификат сервера
Первым шагом в получении сертификата является запрос в бюро сертификатов, которое выпустит его. При выполнении запроса необходимо подтвердить информацию, описывающую ваш бизнес, а также созданный открытый ключ. При запросе сертификата у коммерческого бюро сертификатов его нужно отправлять с сайта этой организации (например, www.verisign.com). При запросе сертификата в бюро сертификатов внутри организации администратор бюро создаст веб-страницу и предоставит соответствующий URL. Скорее всего, вы получите сертификат не сразу. Исключением является ситуация, когда сертификаты используются внутри сети. В этом случае в организации предусматривается политика, которая не требует просмотра запросов на сертификаты при условии доверия запрашивающему пользователю (т.е. если ваше имя из списка пользователей Windows Domain распознано), и если управляемый внутри сети сервер сертификатов настроен на автоматизированное подтверждение. Однако, большая часть времени после передачи запроса в бюро сертификатов уйдет на ожидание решения (Pending), пока администратор бюро сертификатов не подтвердит или не отклонит ваш запрос. Когда откроется страница запроса на сертификат в бюро сертификатов, нужно заполнить ряд форм. Набор вводимых данных зависит от конкретного бюро сертификатов, хотя все эти данные представляют минимально необходимую информацию, требуемую стандартом x509 v3, если используется сертификат именно этого типа. Будет предложено выбрать пароль и указать открытый ключ. На рисунке 8.4 показана форма, предназначенная для указания открытого ключа при запросе сертификата у Verisign. Открытый ключ представляет собой большое двоичное число, сохраненное в файле, созданном в процессе CSR. Можно просмотреть содержимое открытого ключа в программе Notepad (Блокнот) Windows 2000 (см. рис. 8.5). В нужный момент процедуры регистрации сертификата укажите этот ключ в бюро сертификатов. Если вы обратились в Verisign, то для предоставления ключа откройте файл, вырежете и вставьте его содержимое из Notepad в поле формы.
Все зависит от конкретного бюро сертификатов; просто следуйте инструкциям используемого бюро.
После заполнения форм CA и подтверждения введенной информации запрос будет помещен в очередь ожидания решения CA Pending. В случае одобрения бюро сертификатов подготовит сертификат и заверит его подписью. СА обычно проверяет введенную информацию и отсылает по электронной почте уведомления об отрицательном или положительном результате рассмотрения запроса.
 увеличить изображение Рис. 8.4. Процедура регистрации сертификата Verisign заключается в заполнении определенного набора форм
Если запрос одобрен, то, в зависимости от политики бюро сертификатов, сообщение электронной почты может содержать сам сертификат или ссылку (URL) на страницу сайта, защищаемую SSL; эта страница гарантирует безопасную доставку сертификата. На этой странице введите пароль, указанный вами при регистрации приложения, после чего загрузите сертификат на локальный диск вашего сервера.
 Рис. 8.5. Обычно бюро сертификатов предлагает вырезать и вставить открытый ключ в форму запроса сертификата
Совет. В данном примере используется демонстрационный сертификат Verisign. При отправке компанией Verisign сообщения электронной почты для подтверждения запроса сертификат прикрепляется к нижней части сообщения. Он очень похож на открытый ключ, вырезанный и вставленный в форму запроса на сертификат. Нужно вырезать и вставить сертификат в новый документ Notepad (Блокнот) и сохранить его под именем, оканчивающимся расширением .cer; данное расширение сообщает мастеру о том, что файл является сертификатом.
Безопасность IIS
Адаптивная проверка или интеллектуальная фильтрация сеанса
В то время как шлюзы приложений имеют доступ только к уровню приложения, а маршрутизаторы – только к нижним уровням, адаптивная проверка объединяет информацию, собранную со всех уровней, для обеспечения контроля сеанса, а не отдельных пакетов. С помощью детализированных данных о правилах связи для каждого протокола адаптивная проверка фиксирует сведения об отправленных исходящих пакетах и позволяет преодолеть сетевой экран только пакетам, являющимся ответными на указанные отправленные пакеты. Сетевой экран проверяет пакеты на наличие симптомов атаки (например, IP-прослушивание, "смертельный ping" и др.). Любая попытка доступа во внутреннюю сеть, не являющаяся ответом на запрос сети, отклоняется. На такую фильтрацию уходит больше процессорного времени, нежели на фильтрацию пакетов, но меньший объем работы, чем для обработки приложений; не нужно создавать новое прокси каждый раз, когда требуется новая служба.
Альтернатива – блокировка
Некоторые антивирусные программы используют иной подход к обнаружению вирусов, заключающийся в отслеживании активности приложений. Например, программа StormWatch от Okena, Inc. (www.okena.com) располагается рядом с ядром операционной системы и в режиме реального времени перехватывает запросы на ресурсы для разрешения/запрета к ним согласно установленным правилам контроля доступа. Этот метод предотвращает запуск несанкционированных программ как пользователями, так и вирусами, и является эффективным способом предотвращения неизвестных атак. В отличие от традиционных программ-сканеров, обнаруживающих признаки вирусов, StormWatch не проверяет содержимое и, следовательно, не оказывает практически никакого влияния на производительность системы. В ней также содержатся политики по умолчанию для IIS, обеспечивающие готовую защиту от SYN-флудов, распределенного сканирования портов, сетевых червей и "троянских коней". Подход с применением блокировки весьма полезен, если сервер IIS установлен на отдельном сервере и точно известно, какие программы должны на нем выполняться.
Анализаторы журналов
Файлы журналов, генерируемые сетевыми экранами, маршрутизаторами, системами обнаружения вторжений, почтовыми серверами и веб-серверами, полезны только в том случае, если вы их изучаете, однако многие системные администраторы просматривают их лишь поверхностно. В действительности журналы являются ценнейшими источниками информации о трафике и сетевой активности. Анализаторы журналов часто являются ключевыми компонентами систем IDS, однако в случаях с большими сетями требуется очень мощный анализатор. Как говорилось в лекции 5, функции IIS выходят за рамки ведения журналов событий или мониторинга производительности Windows 2000. Даже небольшой сайт может сгенерировать значительный объем информации, который невозможно обработать вручную. Как обнаружить в файле журнала, фиксирующего действия пользователей, наличие учетной записи начальника отдела продаж, используемой для доступа к записям о клиентах в то время, когда он находится в отпуске? В сетевой среде с десятками, сотнями или тысячами узлов даже специализированный персонал сетевых администраторов не сможет обработать гигабайты данных, сгенерированных во время использования сети. Анализаторы журналов представляют собой наилучший способ выполнения этой работы.
Аппаратные средства аутентификации
Иногда требуется ограничить доступ к областям веб-сайта или точно идентифицировать пользователя перед предоставлением ему важной информации. Это осуществляется указанием имени и пароля, соответствующих учетной записи в базе данных или в Active Directory, если сервер является частью домена Windows. Эти меры безопасности являются достаточными, если содержимое, к которому осуществляется аутентифицируемый доступ, не имеет особой важности, но что если пользователь захочет попасть в папку с котировками ценных бумаг или медицинской информацией? Парольную защиту принято считать слабой вследствие того, что пользователи могут обмениваться паролями и не соблюдать их секретность. Реализация удаленной аутентификации не обеспечивает должной уверенности в правильности идентификации пользователей и их прав доступа. Более основательная система аутентификации пользователей, запрашивающих данные с сервера, должна быть, по крайней мере, двухфакторной. Под двухфакторной аутентификацией подразумевается комбинация любых двух элементов, перечисленных ниже: то, что вы знаете: имя пользователя, пароль или PIN;то, чем вы владеете: маркер доступа, карта или ключ;то, что подтверждает вашу личность: отпечаток пальца или подпись.
Применение двухфакторной аутентификации к сотрудникам, осуществляющим доступ к важной информации, например, к разработчикам, является еще одной мерой безопасности. В то время как биометрические методы идентификации (отпечатки пальцев и сканирование сетчатки глаза) по-прежнему остаются относительно дорогими, применение интеллектуальных устройств, таких как смарт-карты или USB-устройства, на сегодняшний день является выгодным решением с точки зрения цены, которое обеспечивает и высокий уровень аутентификации пользователей. Пользователь должен не только знать PIN для получения доступа к аутентификационным данным, хранимым на устройстве, но и иметь устройство аутентификации при себе. Большая часть устройств хранит цифровые сертификаты и открытые/секретные ключи для использования в инфраструктуре PKI или, как в случае с iKey, обеспечивает использование менее дорогого, но эффективного вида аутентификации пользователей. Как правило, ключи пользователей хранятся на жестком диске их компьютеров, что сразу же снижает уровень безопасности всей системы; сохраняя ключи на интеллектуальном устройстве, вы повышаете общий уровень безопасности и качество процесса аутентификации.
Аппаратные средства поддержки производительности
Помимо увеличения объема оперативной памяти и мощности процессора основательно повысить производительность работы SSL можно за счет передачи управления процессами безопасности ускорителю, что сэкономит вычислительные ресурсы для обработки заказов и транзакций. Применение ускорителя позволит не тратить средства на добавление процессоров общего назначения или даже целых серверов, что выгодно в случае дефицита рабочего пространства. Большая часть ускорителей представляет собой либо карты PCI, либо внешние устройства; ускорители являются модульными устройствами, что позволяет наращивать производительность в нужное время в нужном месте. Некоторые устройства, например, CryptoSwift от компании Rainbow (www.rainbow.com), интегрируются в конкретные проекты посредством использования пакетов криптографической разработки.
Будьте в курсе событий
Необходимо оставаться в курсе новых событий, связанных с IIS и средствами безопасности, приобретаемых для защиты сервера, так как программное обеспечение постоянно обновляется в результате открытия новых уязвимых мест. Крупнейшие производители программного и аппаратного обеспечения предоставляют на своих сайтах техническую поддержку и помощь в конкретных ситуациях (эти справочные данные не всегда легко найти). Создайте закладки для таких сайтов и подпишитесь на все рассылки новостей и форумы, в которых идет речь об интересующих вас продуктах. Всем пользователям продуктов Microsoft имеет смысл работать с материалом NTBugTraq, расположенным по адресу www.ntbugtraq.com. Сразу после выпуска новой надстройки или обновления изучите этот компонент перед установкой на сервер, так как даже в новых версиях сохраняется риск присутствия ошибок. Сопоставьте риск немедленного применения продукта с последствиями в виде отключения защиты служб или их самих, прежде чем утверждать, что новое программное обеспечение не окажет негативного влияния на работу сервера. Управление надстройками состоит из множества процессов, поэтому оно требует создания журнала аудита, анонсирования и предварительного просмотра, создания тестовых процедур и хорошо продуманного плана возврата к исходному состоянию. Необходимо знать также, какие версии программных продуктов поддерживаются, так как, скорее всего, вы не сможете получить надстройки для неподдерживаемых версий программного обеспечения. Старайтесь находить техническую поддержку и обновлять политику перед выполнением каких-либо действий. Например, Microsoft предоставляет уведомления об окончании поддержки продукта или версии продукта за шесть месяцев по адресу support.microsoft.com/directory/discontinue.asp.
Централизация и взаимодействие
При обеспечении защиты информации необходимо держать курс на слияние антивирусных средств с безопасностью сети. Многие поставщики выпускают продукты с централизованным контролем средств безопасности, даже если они защищают различные части сетевой инфраструктуры, например, шлюзы электронной почты и серверы. Все новые и новые вирусы, такие как червь Nimda, могут атаковать сети, проникая в систему в виде приложения к сообщению электронной почты или через веб-браузер. Распределяя информацию среди различных средств безопасности, можно обнаружить самые последние проявления вредоносного программного обеспечения. Шагом вперед в области унифицированных средств является программа Web Security от Symantec, выполняющая сканирование электронной почты на некорректное содержимое, например, на наличие непристойностей, а также на вирусы. Еще одной подобной программой является ePolicy Orchestrator от McAfee, которая централизованно управляет и усиливает защиту антивирусных программ и политики для продуктов McAfee и Symantec. При планировании атаки хакеры изучают систему со всех сторон, поэтому антивирусные программы, выполняющие те же действия, являются шагом в правильном направлении.
Что же выбрать?
Перед приобретением сетевого экрана необходимо разработать политику доступа к службам, определяющую, какие службы разрешены и запрещены для доступа из сети без доверия, а также исключения из правил. Эта политика установит возможности сетевого экрана, например, шифрование и поддержку VPN. Необходимо, чтобы сетевой экран поддерживал политику безопасности и исключал ее нарушение из-за ограничений в устройстве. После выбора сетевого экрана политика его применения определит правила, необходимые для доступа к сетевым службам. Важно. Политика безопасности доступа должна основываться на принципе: "Запрет всего, что не разрешено", соответствующем классической модели доступа, используемой в защите информации.
Скорость является одним из решающих факторов при выборе устройства, в особенности, если вы только что столкнулись с нарушением безопасности. Аппаратные сетевые экраны имеют большое преимущество над программными устройствами, так как их программное обеспечение установлено на аппаратной платформе, что позволяет быстро установить и использовать их. Они также обеспечивают высокую доступность и баланс загрузки (но не большую безопасность). Оба типа устройств должны быть настроены корректно! Высокая доступность, присущая таким устройствам, как Nokia IP600, означает, что если сетевой экран утратит свои функциональные возможности, он станет прозрачным переходом ко второму сетевому экрану. Это, скорее всего, не будет критичным обстоятельством, если только вы не работаете в рамках крупного поставщика услуг интернета или в аналогичной среде. Для обеспечения высокой доступности с помощью программного экрана нужно приобрести два набора аппаратных и программных компонентов, после чего установить поверх них такой пакет, как, например, Stonebeat от Stonesoft (www.stonesoft.com). Программные сетевые экраны полезны, когда главной целью является обеспечение гибкости и масштабируемости. Тем не менее, конфигурирование экранов с расширенными возможностями займет больше времени и, следовательно, может вам многого стоить. Для обеспечения шифрования между сайтами нужен сетевой экран со встроенными функциями по обеспечению канала виртуальной частной сети (VPN) с поддержкой технологии IPSec и безопасным удаленным VPN-клиентом. VPN и потоковые данные влияют на производительность системы, поэтому сетевой экран должен иметь достаточный объем оперативной памяти для поддержки большого числа одновременных соединений. Корпоративные сетевые экраны высшего уровня, например, Cisco PIX, обеспечивают пропускную способность более 1 Гб/с с поддержкой до 500 000 одновременных соединений.
CyberwallPLUS-SV от Network-1 Security Solutions
При небольшом количестве работающих серверов Windows NT или Windows 2000 и ограниченном бюджете рекомендуется использовать сетевой экран CyberwallPLUS-SV от компании Network-1 Security Solutions, Inc. (www.network-1.com). Это устройство применяется как расширение ядра операционной системы Windows посредством окружения ядра ОС барьером, защищающим его от сетевых атак. В основе CyberwallPLUS-SV лежит многоуровневая система адаптивной проверки. Документации по данному устройству не так-то много, и, кроме того, имейте в виду, что в конфигурации по умолчанию этого экрана открыты все порты! Тем не менее, его большим преимуществом является относительная дешевизна, а также простота установки, администрирования и обслуживания.
Фильтрация пакетов
Сетевые экраны выполняют различные виды фильтрации пакетов. Маршрутизатор отслеживает пакеты на уровне IP и фильтрует их при проходе между интерфейсами маршрутизатора согласно установленному набору правил. Фильтрация может осуществляться по типу протокола, IP-адресам источника и пункта назначения, а также по исходным и конечным портам. Это позволяет пропускать определенные типы сообщений, например, запросы HTTP, но задерживать другие пакеты. Фильтры пакетов не проверяют данные пакетов, не могут выполнять фильтрацию по содержимому, что означает возможность прохождения потенциально опасного трафика. Фильтрация пакетов уязвима и к атакам с помощью фрагментированных пакетов. Пакеты не запоминаются после фильтрации, поэтому нельзя определить, была ли попытка соединения вредоносной. Как отдельная линия обороны фильтрация пакетов довольно слаба, поэтому во многих сетевых экранах используются прокси-службы для повышения контроля доступа к системе. Еще одним преимуществом комбинирования двух методов является то, что не требуется устанавливать сложные правила фильтрации, так как фильтру пакетов необходимо пропускать только трафик, направленный на прокси, и блокировать все остальные пакеты. Более простые правила легче применять и, следовательно, проще обеспечить их правильную настройку.
Internet Security and Acceleration Server 2000 от Microsoft
Microsoft Internet Security and Acceleration (ISA) Server 2000 (www.microsoft.com/ISAServer/) представляет собой комбинированный сетевой экран корпоративного класса и кэш-сервер интернета, интегрируемый с Windows 2000 для защиты на основе политики безопасности. Сетевой экран обеспечивает фильтрацию на пакетном, сетевом уровне и уровне приложения, адаптивную проверку, контроль политики доступа и маршрутизацию трафика. Кэш-сервер улучшает производительность сети. Сетевой экран и кэш-сервер можно установить раздельно на выделенных серверах либо на одном компьютере. Для настройки сервера ISA используется уже знакомая вам консоль Microsoft Management Console (см. рис. 9.2).
 увеличить изображение Рис. 9.2. При работе с сервером ISA используется хорошо знакомый графический интерфейс Microsoft Для Windows-сети рекомендуем использовать именно это устройство. ISA обеспечивает простоту управления политикой, маршрутизацией трафика и публикацией сервера, а также действиями сотрудников, работающими в интернете. Совет. Несмотря на то, что сетевой экран играет решающую роль в защите сервера, сети и расположенных в ней ресурсов, не следует полагаться только на него. При наличии любого типа периметровой защиты, если атака инициирована внутри сети, все средства безопасности окажутся бесполезными, т.к. не смогут предотвратить злоупотребление авторизованным доступом сотрудником компании. Некоторые сетевые экраны настраиваются на проверку входящих данных на наличие признаков вирусов и "троянских коней", но эта проблема решается при помощи соответствующего антивирусного программного обеспечения и сканера вирусов. Об этих системах речь пойдет далее.
Интернет-сканеры безопасности
При нынешних темпах появления новых угроз поддержка достойного уровня безопасности сайта IIS становится очень трудной задачей. Одним из полезных средств является сканер безопасности (или сканер уязвимых мест), который, помимо прочих функций, предотвращает действия потенциального злоумышленника, выявляя некоторые слабые места, используемые хакерами. Сканер уязвимых мест поможет вам оставаться в курсе всех угроз безопасности и возможных мер по их предотвращению. После выявления угрозы можно разобраться в ее сути и в том, как ее устранить. Хорошие сканеры уязвимых мест сопровождаются документацией о природе слабых мест со ссылками на другие источники информации и средства защиты от угроз. Сканер располагается на узле, отправляя с него зондирующие пакеты, затем собирает результирующие данные, сопоставляя их с информацией базы данных признаков уязвимых мест. В этом смысле сканер безопасности аналогичен сканеру вирусов, однако является более интроспективным устройством, так как определяет, соответствуют ли устройства установленной политике безопасности. Как и сканер вирусов, хороший сканер безопасности должен содержать регулярно обновляемые признаки уязвимых мест. Программа System Scanner (см. рис. 9.9) от компании Internet Security Systems (ISS) является самым известным продуктом в рассматриваемой категории. System Scanner осуществляет проверку безопасности и выполняет симулированные атаки на сервер-жертву для подтверждения эффективности проведенной блокировки. ISS содержит компонент отслеживания в режиме реального времени RealSecure, который обнаруживает любые "бреши" в безопасности и сообщает сотрудникам о типе вторжения, а также выдает рекомендации по устранению уязвимых мест. Для получения более подробной информации по ISS или Database Scanner (программа доступа к параметрам безопасности баз данных), посетите сайт www.iss.net.
 увеличить изображение Рис. 9.9. Рекомендуем опробовать программу System Scanner от ISS, имеющуюся на компакт-диске Windows 2000 SDK
Для получения информации о других сканерах безопасности обратите внимание на следующие продукты: CyberCop Scanner от Network Associates (www.pgp.com/products/cybercop-scanner/); Security Analystот Intrusion, Inc. (www.intrusion.com); WebTrends Security Analyzer от WebTrends, более известной по выпускаемому ей программному обеспечению для веб-анализа (www.webtrends.com). Стоимость наиболее дорогих сканеров уязвимых мест довольно велика, однако существуют общедоступные сканеры, например, ShieldsUP! на сайте www.grc.com или nmapNT на сайте www.eeye.com/html/Research/Tools/nmapNT.html.
При обеспечении безопасности системы нельзя полагаться только на патчи и обновления, необходимо использовать систему обнаружения вторжений, и хороший сканер безопасности, несомненно, поможет в этом. Даже если системы изначально установлены в идеально безопасном и неизвестном месте, с течением времени уровень их защищенности будет падать. Чем больше людей имеют доступ к этим системам, тем быстрее снижается уровень безопасности. Из этого следует, что чем больше у вас системных администраторов, тем чаще следует проводить аудит. Сканирование безопасности помогает осуществлять аудит системы для подтверждения того, что примененная изначально конфигурация не была изменена.
Совет. Группа разработки ICAT (сокр. от Internet Categorization and Analysis of Threats) отдела компьютерной безопасности NIST (http://icat.nist.gov/icat.cfm) создала базу данных уязвимых мест ICAT, предназначенную для общего пользования. Наиболее важной информацией в базе данных ICAT являются гиперссылки в Перечне общих уязвимых мест и опасностей (CVE), с помощью которых можно перейти к справочной информации других IT-производителей и компаний, занимающихся информационной безопасностью. CVE представляет собой список стандартизированных названий уязвимых мест и другие сведения. Для получения более подробной информации посетите сайт http://cve.mitre.org. На сайте ICAT имеется также список производителей программного обеспечения, имен продуктов и номеров версий для каждого уязвимого места.
Измерители безопасности CIS
Измерители безопасности CIS собирают сведения о параметрах безопасности и действиях, укрепляющих систему. Многие организации, запускающие измерительные средства CIS, констатируют тот факт, что соответствие даже уровню измерений 1 CIS обеспечило значительное усиление системы безопасности на их компьютерах. Измерители CIS уровня 2 определяют разумный уровень безопасности, превышающий минимальные требования, однако требуют от администратора более обширных знаний в области безопасности для применения параметров к конкретной среде. Имеется измеритель CIS уровня 2 для веб-сервера Windows IIS 5. Измерители безопасности разрабатываются с учетом среднестатистических сведений о глобальных процессах обеспечения безопасности. Они соответствуют знаниям и рекомендациям многих специалистов в области безопасности. Аналогичный подход используется в Национальном бюро страхования от преступлений США, сотрудники которого общими усилиями противостоят опасностям. Измерители безопасности постоянно обновляются после появления новых уязвимых мест, о которых становится известно из различных источников, например, из Interent Storm Center (www.incidents.org) и CERT Coordination Center (www.cert.org).
имеет интуитивно понятный пользовательский интерфейс,
Самый известный сетевой экран FireWall-1 (www.checkpoint.com) имеет интуитивно понятный пользовательский интерфейс, позволяющий администраторам легко устанавливать, изменять и просматривать правила политики безопасности.
FireWall-1 обеспечивает защиту сетевого экрана, VPN, трансляцию сетевых адресов, качество и класс предоставляемых услуг передачи данных (QoS), программное управление распределением и безопасность клиента VPN и работает с последними версиями Windows, Solaris и RedHat Linux. Каждому, кто столкнулся с задачей управления сетевым экраном, рекомендуется испытать работу с FireWall-1. Данным продуктом легко управлять (администратор корпоративной сети может централизованно контролировать политику безопасности), поэтому эффективность работы возрастет в несколько раз.
На рисунке 9.1 показана программа FireWall-1 Policy Editor, с помощью которой осуществляется доступ к определению объектов и параметрам безопасности.
 увеличить изображение Рис. 9.1. Детальная графическая карта программы Policy Editor позволяет осуществить быстрый доступ к описанию объектов и параметрам безопасности
Как работают сканеры вирусов
Сканеры вирусов различными способами осуществляют попытки корректного обнаружения вирусов. Они используют сравнение признаков, просматривая содержимое файлов для поиска строки байтов, соответствующей аналогичному элементу в базе данных известных вирусов. Так обнаруживается большинство известных вирусов, но для вирусов, использующих полиморфизм для изменения своего кода, сканеры должны работать по более сложным алгоритмам проверки. Эти алгоритмы заключаются в обработке файлов в режиме эмуляции реального времени для отслеживания полиморфической машины и распознавания вируса. Эвристическое или режимное сканирование анализирует файлы на наличие подозрительного, похожего на вирус кода, например, вызывающего в определенное время поиск файлов с расширениями .com и .exe, что позволяет выявлять неизвестные вирусы до того, как они заразят компьютер. Сканеры вирусов должны постоянно обновляться, чтобы соответствовать расширяющемуся диапазону потенциально подверженных инфицированию объектов и использовать при поиске признаки самых последних вирусов.
Какие элементы отслеживаются пакетными фильтрами
Для понимания принципов работы сетевых экранов необходимо иметь базовое представление о том, как данные передаются через интернет посредством TCP/IP, и как функционирует базовый сетевой экран с фильтрацией пакетов. TCP/IP (Transmission Control Protocol/Internet Protocol) представляет набор протоколов, двумя из которых являются TCP и IP. Протоколом называется предопределенный метод связи. Каждый отдельный аспект связи или передачи данных через TCP/IP поддерживается соответствующим уровнем протокола TCP/IP. Например, сетевой уровень отвечает за способ доставки данных до пункта назначения. При передаче через TCP/IP данные находятся в пакетах, являющимися базовыми единицами передачи информации. Пакеты содержат сами данные и информацию заголовка, состоящую из набора контрольных сумм, идентификаторов протокола, исходных и конечных адресов и информации о состоянии. Каждый уровень добавляет свою собственную информацию в заголовок пакета предыдущего уровня. Фильтры пакетов работают на сетевом и транспортном уровнях стека протоколов TCP/IP. Каждый пакет и заголовки сетевого и транспортного уровней проверяется на следующие данные: протокол;исходный адрес;конечный адрес;исходный порт;конечный порт;состояние подключения.
Фильтрующее устройство сопоставляет значения этих полей с установленными правилами, после чего передает пакет дальше или отбрасывает его. Многие фильтры позволяют определять дополнительные критерии на канальном уровне, например, сетевой интерфейс, на котором должна происходить фильтрация.
Контроль изменений
Многие администраторы IIS допускают ошибку, изменяя параметры функционирующего сервера IIS без выполнения цикла "изучи и примени" и заблаговременного планирования обслуживания.
Лучшие сетевые экраны мира
Сейчас у вас на руках имеется перечень необходимых и желательных функций, которые должен обеспечивать сетевой экран. Невозможно сказать, какой сетевой экран является самым лучшим, ведь они применяются в различных средах, поэтому мы расскажем лишь о нескольких ведущих продуктах, имеющихся сегодня на рынке информационных технологий. Совет. Ежегодное издание компании ICSA Labs "Справочник покупателя сетевого экрана" ("Firewall Buyer’s Guide"), расположенное по адресу http://www.icsalabs.com/html/communities/firewalls/index.shtml, познакомит вас с требованиями к сетевому экрану. (ICSA Labs является частью корпорации TruSecure Corporation, которая также публикует издание NT Bugtraq.)
Маркеры доступа
Устройства безопасности USB подключаются к любому стандартному порту USB, объединяя свойства смарт-карты и считывателя, кроме этого, они имеют небольшой размер и помещаются в футляре для ключей (см. рис. 9.7). Эти устройства с технологической точки зрения идентичны смарт-картам, за исключением формы и интерфейса. Ведущими производителями интеллектуальных устройств являются следующие компании: Alladin (www.ealaddin.com);Eutron, Itema Group (www.eutron.com);Rainbow Technologies, Inc. (www.rainbow.com);SchlumbergerSema (www1.slb.com/cmartcards/).
Средства биометрической аутентификации не следует игнорировать, так как их стоимость становится все более приемлемой. Биометрические устройства делают безопасность менее обременительной для пользователей (это еще одно преимущество, так как пользователи в своем большинстве стараются избегать мер безопасности, затрудняющих работу). Если вы заинтересованы в биометрической аутентификации сотрудников, обладающих специальными привилегиями на сервере, можем порекомендовать использование оптической мыши MagicSecure с дактилоскопическим устройством от компании Eutron; это устройство обеспечивает удобную трехфакторную аутентификацию (см. рис. 9.8).
 Рис. 9.7. Двухфакторная аутентификация обеспечивает большую дружественность процесса авторизации, а интеллектуальное устройство небольшого размера можно всегда носить при себе
 Рис. 9.8. Оптическая мышь MagicSecure обеспечивает простую, но надежную аутентификацию с применением того, что нельзя украсть или забыть, – отпечатка вашего пальца
Обнаружение, документирование и диаграммы
Взвесьте временные и денежные ресурсы, которые понадобятся для составления хороших отчетов, относительно цены установки и запуска специализированной программы. Если изменения в сети происходят редко, рекомендуем выделить время для выполнения всех действия вручную; при большой, постоянно изменяющейся сети такой вариант не подходит. Программа Configuration Reporter, доступная на сайте Ecora по адресу www.ecora.com, решает проблему документирования сетей. Эта программа обладает высокой скоростью работы, основывается на веб-браузере и обеспечивает сбор информации о сети, например, данных о конфигурации оборудования, настройках стека протоколов TCP/IP и файлах общего доступа. В дополнение к этому программа сортирует, сохраняет и представляет информацию в форматах HTML, Microsoft Word или Portable Document File (PDF). Она отображает отчеты в сжатом и расширенном виде. Сжатое представление включает в себя информацию о сетевых устройствах, такую как IP-адреса и число объединенных в сеть CPU, а расширенный формат содержит сведения о параметрах сервера с объяснением того, как тот или иной параметр может представлять собой пробел в системе безопасности. Отчеты могут быть не столь детализованными, как вам бы хотелось; кроме того, цена резко возрастает с увеличением числа серверов. Тем не менее, данная программа осуществляет более эффективное документирование систем Windows NT и Windows 2000, нежели уставший и измученный администратор.
Оборудование контроля доступа и производительности
Надеемся, что ваш веб-сайт будет иметь большой успех, однако слишком большой трафик, обрабатываемый сайтом, представляет отдельную проблему безопасности. Произойдет ли на сервере сбой, когда единовременно будет загружаться большое число файлов? Самым лучшим способом проверки сайта на "выносливость" является использование проверочного средства, которое покажет способность сайта к обслуживанию большого числа требовательных клиентов. Загрузите бесплатную программу Web Application Stress (WAS) с сайта Microsoft по адресу http://webtool.rte.microsoft.com/download.asp или используйте программу Webserver Stress от компании Paessler (www.paessler.com/WebStress/webstress.htm) (см. рис. 9.6). Оба продукта симулируют трафик и загрузку сервера, соответствующую большому числу единовременных пользователей. Это позволяет определить уровень производительности и устойчивости веб-приложения, протестировать поддержку сервером различных уровней загрузки и обработку различных объемов информации. Моделируя среду, максимально приближенную к реальной, можно обнаружить и исключить проблемы на сайте и сервере IIS перед непосредственной разработкой. Например, если сайт связан с электронной коммерцией, такие тесты выявят тот факт, что управление большим объемом задач через протокол Secure Sockets Layer (SSL) представляет собой сложную проблему. Оно может вызвать перегрузку даже самых мощных серверов, что, несомненно, отразится на общей производительности сервера.
 увеличить изображение Рис. 9.6. Протестируйте уровень производительности сервера и устойчивость веб-приложений
Опасайтесь демонстрационных файлов и образцов
Перед приобретением новых программ для обеспечения безопасности примите к сведению следующее. Чтобы понять, как работает продукт, необходимо ознакомиться со справочной документацией, прилагаемой к нему. В ней часто содержатся примеры и демонстрационный исходный код. Эти примеры являются лишь примерами, и не более, их ни в коем случае нельзя устанавливать на создаваемый сервер. Это относится и к демонстрационным файлам, доступным на http://localhost.
Осведомленность как мера безопасности
В дополнение к техническим средствам необходимо обеспечить человеческий фактор защиты сервера IIS. Большие денежные затраты и самые современные технологии не смогут самостоятельно обезопасить систему. Если вы не обучите сотрудников своей организации признакам опасностей и необходимым мерам по их пресечению, то вложения в технические средства превратятся в пустую трату денег. Код и сценарии, написанные без обеспечения безопасности, представляют собой "бреши" даже в добросовестно спланированной политике безопасности. Предположим, большинство сотрудников знает о том, насколько опасно открывать вложения электронной почты, но осведомлены ли они о том, почему важно сохранять пароли в тайне и всегда иметь идентификационные карточки при себе? Без обеспечения культуры безопасности, введение которой заставляет пересмотреть текущие взгляды на работу в сети, будет очень трудно обеспечить безопасность сети и ее ресурсов. Все сотрудники должны быть достаточно осведомленными в области безопасности, полностью осознавать важность данных и процессов защиты, обеспечивающих их безопасность. Все сотрудники должны понимать требования безопасности относительно своих действий, беспрекословно выполнять соответствующие задачи как часть своей повседневной работы. Ведь обеспечение безопасности – это долг каждого сотрудника. Таким образом, безопасность не хаотично накладывается на повседневные задачи, а аккуратно встраивается в структуру организации, если сотрудники заинтересованы в этом как в компоненте успешного бизнеса, а не только как в применении новых информационных технологий. Руководящий персонал также должен иметь представление об основных проблемах и аспектах безопасности. Передача взглядов и навыков от старших сотрудников младшему персоналу очень существенна в любой политике безопасности такого рода. Совет. Материал Human Firewall Council, расположенный по адресу www.humanfirewall.org, содержит ресурсы, которые помогут понять важность обучения аспектам безопасности старших сотрудников; на этом сайте имеется бесплатная программа от PentaSafe Security Technologies, предназначенная для проверки уровня осведомленности сотрудников компании в области безопасности.
Популярные сканеры вирусов
Программа WebShield SMTP от McAfee (www.mcafee.com) представляет собой независимый от сетевого экрана шлюзовой сканер вирусов, останавливающий действие вирусов и блокирующий массовые рассылки электронной почты (спам) перед их проникновением в сеть. Эта программа автоматически отслеживает передачу сообщений электронной почты по сети для обнаружения активности, присущей новым вирусам. Среди других возможностей необходимо отметить фильтрацию содержимого, автоматические обновление, возможность удаленного управления, уведомления об опасных ситуациях и составление отчетов. Обеспечивая блокировку файлов на входе или выходе из сети в зависимости от их размера или имени, он осуществляет контроль над внутренними пользователями. Программа Anti-Virus от компании Sophos (www.sophos.com) объединяет централизованное управление, контролирующее установку программ в сети, и автоматизированное обновление всех компьютеров из определенного места. Все проявления вирусов в сети учитываются в центральном журнале; кроме того, Sophos Anti-Virus осуществляет централизованное составление отчетов и вывод сообщений. Она отслеживает сообщения электронной почты, загрузку файлов из интернета, программы общего пользования и архивные файлы, дополняя шлюзовую защиту, обеспечиваемую компонентом Sophos MailMonitor, аналогичным McAfee WebShield. Пакет программ Norton AntiVirus Corporate Edition от Symantec (www.symantec.com) предлагает централизованное управление политикой рабочих станций и серверов, позволяющее настраивать политики для обновления и правильного конфигурирования систем. Рекомендуем использовать этот пакет программ в небольших сетях в силу хорошего соотношения цены/качества и простоты применения. На рисунке 9.4 изображена консоль Symantec System Center для централизованного управления. Установка клиентов настраивается с использованием определенного набора параметров (опций сканирования) в режиме реального времени, которые могут быть заблокированы администратором. Клиентам можно запретить остановку запланированных действий по сканированию.
Контроль версии файла с признаками вирусов используется на всех серверах и клиентах, что обеспечивает защиту каждого компьютера автоматически обновляемыми файлами баз данных вирусов.
 увеличить изображение Рис. 9.4. Окно Symantec System Center позволяет просматривать состояние любых узлов сети и определять их настройки для обработки вирусов
Важно. Дважды убедитесь в том, что антивирусное программное обеспечение функционирует правильно. Используйте проверочный файл EICAR (безвредный файл, обнаруживаемый антивирусными программами, как если бы это был вирус) для проверки корректности работы антивирусного продукта и соответствующей политики. Этот файл можно загрузить с сайта любого поставщика антивирусного программного обеспечения.
Предотвращение потенциального ущерба от атак из интернета
Что будет, если, несмотря на все старания, кто-то проникнет в сервер IIS, изменит содержимое и нанесет ущерб сайту? Если атака пройдет незамеченной, то первым, от кого вы узнаете об атаке, будет клиент или пресса, на что, как правило, и направлен расчет злоумышленника. В данном случае понадобится быстрый и простой способ восстановления сайта. Можно восстановить сайт с резервных накопителей, но это, разумеется, выполняется вручную. Повреждение веб-сайтов отличается от атак других типов, так как высокая степень их видимости привлекает внимание средств массовой информации. При работе небольшого веб-сайта со статическим содержимым можно обслуживать страницы с компакт-диска (или других носителей с доступом только для чтения), однако для больших сайтов это не подходит. Полноценным решением проблемы будет использование разделенных операционных систем с фильтрацией входящего и исходящего трафика, подписью открытого ключа и динамического немедленного восстановления в дополнение к сетевому экрану, блокирующему все порты за исключением порта HTTP 80. Такой подход предназначен лишь для крупнейших организаций, располагающих большим бюджетом безопасности. Формализованное тестирование, анализ атак и распределение функций являются ключевыми элементами в успешном применении изменений в системе. При четком контроле и фиксации изменений на сервере легче осуществлять восстановление после атак и выявлять проблемы, связанные с безопасностью. Средства контроля за изменениями можно условно разделить по мерам защиты: предотвращение, быстрое восстановление и обнаружение, а также по способу применения – непосредственно на сервере, на выделенной аппаратной платформе или на отдельном компьютере.
Принципы работы систем обнаружения вторжений
Система IDS проверяет пакеты сетевого трафика для идентификации угроз, разрушающих периметровую защиту, исходящих как от санкционированных, так и от несанкционированных пользователей. Данный процесс осуществляется при помощи сопоставления строк и анализа контекста согласно набору правил, определяющему искомые объекты. Эти правила варьируются в зависимости от роли пользователя и основываются на наборе следующих показателей и параметров. Защита входа. Определенные события, например, неудачный вход.Профили. Анализ непосредственного использования в сравнении с базовым профилем.Признаки известных атак. Обнаруживаемая сетевая активность, относящаяся к таким явлениям, как некорректные заголовки TCP или неожиданные массовые рассылки электронных сообщений.
Функция сравнения строк выполняет поиск последовательности символов для выявления возможных угроз. Анализ контекста, известный как анализ признаков, построен на аналитическом сценарии сравнения контекста строк. Сравнение строк осуществляется быстро, и оно склонно к выявлению ложных опасностей. Анализ контекста уменьшает количество ложных обнаружений, но занимает больше времени. Системы IDS высшего класса полностью декодируют протоколы для выявления пакетов и их содержимого для всестороннего исследования с применением больших баз данных признаков атак. Можно настроить IDS на нужное соответствие скорости работы и качества, а также расширить базу данных признаков для идентификации любых уникальных сетевых характеристик. Настройка систем обнаружения вторжений на уменьшение ошибочных тревог предназначена для предотвращения большого количества ложных обнаружений, из-за которого возрастает объем лишней работы и обеспокоенность пользователей. Необходимо четко определить метод обработки всех тревог системы IDS для обеспечения действий по реагированию на возможную атаку. Это следует сделать до включения системы в работу. Совет. Работа системы обнаружения вторжений основывается на правилах и заключается в распознавании и реагировании на бесчисленное множество возможных атак, поэтому система может пропустить атаку.
Эту опасность можно снизить, обеспечив соответствие правил известным атакам и постоянное наблюдение за сетевой активностью. Ложное срабатывание представляет собой тревогу, сгенерированную системой IDS в результате событий, на самом деле не являющихся атакой. Примером такой ситуации может быть резервное копирование пользователем всей папки проекта на съемный носитель для вполне легальных целей.
Многие приложения IDS автоматически реагируют на нарушение правил, например, отправляют сообщение электронной почты администратору или отключают привилегии пользователя. Они ведут запись сведений об использовании сети для дальнейшего подробного анализа событий. Вследствие огромного объема фиксируемых данных многие системы IDS содержат анализаторы журналов, о которых пойдет речь далее.
Используются два типа IDS: узловые системы обнаружения вторжений (HIDS) и сетевые системы обнаружения вторжений (NIDS). В большой сети следует использовать оба типа устройств, а в малой – систему NIDS.
ПРОБЛЕМА
Предположим, вы только что провели восстановление после вирусной атаки на сеть, и руководство компании выделило денежные средства на повышение уровня антивирусной защиты. Необходимо быстро предпринять какие-то действия, чтобы предотвратить следующий инцидент. Так что же именно следует сделать в первую очередь? Перед покупкой нового антивирусного продукта следует провести обзор антивирусной политики, чтобы выяснить, требует ли она обновления в свете недавних событий. Если антивирусная политика в порядке, а причиной проникновения вредоносного программного обеспечения стало несоблюдение этой политики одним из сотрудников, тогда проведите дополнительную разъяснительную работу. Проведите семинары по безопасности, которые руководство сделает обязательными для посещения всеми сотрудниками. Это некоторым образом отразится на бюджете, зато повысит эффективность антивирусной политики, так как каждый будет понимать ее роль и важность. Выясните, в каких местах требуется дополнительная антивирусная защита: на сетевом экране, веб-сервере, почтовом сервере или на рабочих станциях. В идеальном случае следует установить защиту на все типы серверов и рабочих станций. Программное обеспечение протокола Content Vectoring Protocol (CVP) на сетевом экране сканирует данные при входе в сеть, а программы коллективного пользования располагаются на почтовом сервере и осуществляют сканирование хранилища сообщений. Программы InterScan VirusWall компании Trend Micro и ScanMail на сайте www.antivirus.com обеспечивают сетевой экран и защиту программ группового пользования, соответственно. Обратитесь к разделу "Популярные сканеры вирусов" для получения информации о продуктах, предназначенных для защиты сервера и рабочих станций.
Программа оценки CIS
Средство CIS Benchmark and Scoring для Windows 2000 является централизованной программой для анализа и сканирования, доступной бесплатно на сайте CIS по адресу www.cisecurity.org/, содержащей руководство и пошаговые инструкции по оценке, анализу, настройке и конфигурации программы. Критерий оценки также включает в себя определение состояния "горячих" исправлений, выпускаемых Microsoft. Вам и вашему серверу IIS будут полезны знания, оценка и опыт, объединенные в этой бесплатной программе, поэтому советуем не упускать такой возможности.
Программы восстановления и резервирования данных
В процессе обслуживания веб-содержимого используется система удаленной проверки с возможностью автоматизированного восстановления или локальная криптографическая проверка. Многочисленные программные продукты, имеющиеся на современном рынке, быстро восстановят сайт. Компания Lockstep Systems, Inc. (www.lockstep.com) производит программный продукт WebAgain (см. рис. 9.5), который автоматически обнаруживает факты взлома веб-сайта и восстанавливает содержимое. Другой продукт компании – программа SiteRecorder – защищает содержимое веб-сайта от случайных изменений сотрудниками организации посредством ведения всеобъемлющего журнала аудита и архивации всех изменений. Это позволяет легко осуществлять откат или восстановление веб-содержимого. Программа CimTrak Web Security от компании CIMCOR (www.cim-cor.com) является аналогичным продуктом, обеспечивающим изоляцию всех измененных файлов для судебных целей.
 увеличить изображение Рис. 9.5. Служба Windows WebAgain работает совместно со средствами публикации для обеспечения круглосуточной защиты сайта от повреждения
Прокси-службы
Главным различием между прокси-службами и фильтрами пакетов является то, что фильтры пакетов обрабатывают отдельные пакеты, в то время как прокси-служба контролирует весь сеанс соединения с сервером, направляя или выполняя фильтрацию подключений к запрошенным службам, таким как HTTP, FTP и Telnet. Прокси-службы работают на прокси-сервере, называемом шлюзом приложений, и выступают в роли сети, т.е. являются заместителями. Все запросы на доступ к службе фиксируются на шлюзе приложений, который открывает новый сеанс связи с запрошенной службой, чтобы все пакеты отправлялись и принимались от шлюза, а не от узлов, расположенных на сетевом экране. Со стороны внешнего узла это выглядит так, будто установлено соединение с сетевым экраном, и ничего не известно об узлах, расположенных внутри сетевого экрана. Так скрывается конфигурация внутренней сети. Шлюз приложений определяет, для какого приложения выполняется прокси-служба, и осуществляет проверку проходящих данных. Это усиливает различные правила контроля доступа для аутентификации трафика перед отправкой к внутренним узлам, а также для более эффективного ведения журнала. Существует пять основных типов шлюзов приложений: шлюз сетевого уровня, шлюз отслеживания трафика, шлюз отслеживания команд, шлюз отслеживания типа содержимого и шлюз отслеживания политики. Устройства, отслеживающие команды и типы содержимого, обеспечивают наивысший уровень контроля и защиты. Устройства, отслеживающие команды, разделяют потоки данных на отдельные команды и ответы и могут, например, различать команды FTP GET и FTP PUT. Такое прокси-устройство ведет журнал имен файлов, передаваемых через шлюз. Шлюз, отслеживающий типы приложений, расширяет перечисленные возможности посредством проверки формата содержимого, что позволяет фильтровать трафик для блокировки вредоносного кода. Такое устройство блокирует передачу через HTTP документов Word и Excel, содержащих макросы. Вам потребуется программное обеспечение прокси для каждого типа приложения, поддержку которого нужно обеспечить, причем самостоятельно указывать нужно только нестандартные типы.
Рекомендации и ресурсы
Если вы отвечаете за большую корпоративную сеть, анализатор журналов должен иметь возможность сбора и подсчета событий журналов с многочисленных сетевых устройств с сохранением их в одном централизованном месте. Он должен также защищать целостность данных журнала на тот случай, если они понадобятся в судебном процессе. В таблице приведены сведения о продуктах, интегрирующих приложения и устройства безопасности от различных производителей.
ПродуктПроизводитель | e-Sentinel | e-Security www.esecurityinc.com | | netForensics | netForensics www.netforensics.com | | SilentRuner | SilentRunner, Inc. www.silentrunner.com |
Рекомендуемые дополнительные средства повышения уровня безопасности
Мы рассмотрели основные технологии, необходимые для создания надежной и безопасной среды для сервера IIS. Теперь проведем короткий обзор некоторых средств и служб, облегчающих соблюдение безопасности сервера, а, следовательно, делающих его более эффективным.
Рекомендуемые продукты
Следующие продукты содержат весь спектр устройств IDS. Выбор нужного продукта зависит от вашей сети и вашего бюджета. Все они поддерживают автоматическое обновление признаков атак, удаленное управление, методы предотвращения злоумышленных действий и их обнаружение. Важно. Смените все пароли по умолчанию (которые нередко попросту пусты), имеющиеся в устанавливаемых программах, в особенности в тех, которые создают учетную запись. Пренебрежение этой мерой предосторожности может привести к использованию хакерами хорошо известных паролей.
Сетевой экран с функциями маршрутизатора NETGEAR представляет собой хороший комбинированный сетевой экран начального уровня и NIDS для небольшой сети, а устройство RealSecure для Nokia является полнофункциональным программно-аппаратным устройством. Устройство LANguard Security Event Log Monitor & Reporter (S.E.L.M.) (см. рис. 9.3) использует журналы событий Windows 2000 в режиме реального времени для уведомления о событиях системы, связанных с безопасностью, поэтому его действие не ослабляется шифрованием IP-трафика или высокоскоростной передачей данных. Если сеть состоит из одного сервера и пяти рабочих станций, вы получаете все эти возможности совершенно бесплатно!
 увеличить изображение Рис. 9.3. Отчеты об использовании сети показывают, какие действия выполняются в системе, и кто их выполняет В таблице 9.1 приведено сравнение некоторых устройств IDS различных производителей.
Таблица 9.1. Сравнение продуктов IDSСистема IDSПроизводительТип | FR314 Cable/DSL Firewall Router | NETGEAR, Inc. www.netgear.com | Комбинация аппаратного сетевого экрана и NIDS. | | Intruder Alert | Symantec Corporation www.symantec.com | Программная система IDS. | | LANguard Security Event Log Monitor | GFI www.gfi.com/languard/ | Программная система IDS. | | RealSecure | Internet Security Systems www.iss.net | Программная система IDS. | | RealSecure для Nokia | Nokia www.nokia.com/securitysolutions/network/iss.html | Самостоятельное устройство; аппаратный и программный NIDS. | Совет.
Если ваш бюджет ограничен, в интернете найдется множество "самодельных" программ IDS, однако помните, что в этом случае их поддержка либо недостаточна, либо вовсе отсутствует. Хорошо известной бесплатной системой IDS является Snort; множество IDS и информация о них имеется в поисковой системе Google по адресу http://directory.google.com/Top/Computers/Security/Intrusion_Detection_Systems/.
IDS обеспечивают защиту от использования как новых, так и старых уязвимых мест, а также от любых пробелов в безопасности, присутствующих в используемом программном обеспечении. IDS рассматриваются многими специалистами в области безопасности компьютерных сетей как средства, реально обеспечивающие гибкую безопасность, так как они делают защиту сети менее зависимой от установки обновлений.
Многочисленные исследования показывают, что большинство атак выполняется посредством использования известных угроз, патчи для которых были доступны на протяжении месяцев, а то и лет. Постоянный мониторинг системы не обеспечит полной безопасности, однако появится больше шансов на обнаружение и пресечение действий хакера, независимо от того, какое слабое место использовалось для несанкционированного доступа.
Сбор улик
Анализаторы журналов автоматизируют процесс аудита и анализа журналов сети и сообщают о том, что случилось или что происходит, посредством выявления несанкционированной активности или аномальных событий. Эта обратная связь используется для усовершенствования системы IDS или наборов правил сетевого экрана. Она представляет собой основу для целенаправленного обнаружения атак, уменьшения злоупотребления сетью и усиления политики безопасности. Некоторые анализаторы журналов включают интерактивное ведение базы данных, алгоритмы информационной проходки, графическое представление и искусственное интеллектуальное предупреждение атак.
Семейство экранов Cisco PIX
Сетевые экраны Cisco PIX (www.cisco.com) представляют собой сконструированные для специальных целей устройства, использующие собственную защищенную операционную систему, исключающую наличие признаков многоцелевых операционных систем. Эти сетевые экраны варьируются от небольших настольных устройств для малых сетей до устройств высшей категории, предназначенных для защиты корпоративных сетей и сред поставщиков услуг связи. В последних используется больший спектр технологий, начиная с адаптивной проверки пакетов и заканчивая фильтрацией содержимого, встроенного обнаружения вторжений, поддержкой VPN через протоколы IPSec и L2TP. Управление осуществляется через веб-интерфейс, позволяющий составлять интерактивные отчеты и отчеты за определенный промежуток времени. Установка и настройка данных устройств не представляет особой сложности, если вы уже знакомы с другими продуктами Cisco.
Сетевые документаторы
Задача по документированию веб-сервера является необходимой, но часто игнорируемой процедурой. Хорошо документируемая система значительно экономит время, когда речь идет об отслеживании проблемы, представляющей собой возможное слабое место системы, или восстановлении после атаки. Документирование помогает при принятии решения о необходимости обновления или замены, т.е. операций, влияющих на общее состояние сервера. Каждый администратор IIS предпочитает работать с хорошо документированной системой, в которой вся относящаяся к делу информация сохраняется в одном структурированном документе, и не любит заниматься рутинной работой по сбору информации и документированию сервера, являющегося частью большой сети. Выполнение этой задачи вручную отнимает много ресурсов и времени, представляет собой "неблагодарную" работу. При установке нового сервера IIS рекомендуется выполнить его каталогизацию при включении в работу, что сделает процесс документирования менее сложным и позволит создать грамотно составленный, подробный и эффективный отчет. Однако при документировании имеющегося сервера или сети, возможно, единственным способом создания стоящего документа является привлечение службы сетевой документации, которая выполнит все необходимые операции за соответствующую плату.
Сетевые экраны
Первое существенное повышение безопасности веб-сервера IIS – это защита с помощью сетевого экрана. В лекции 6 обсуждалась роль сети в защите веб-сайта и других информационных ресурсов, а также говорилось о важности сетевого экрана как периметрового средства защиты. Сетевой экран, как правило, является системой, усиливающей политику контроля доступа между двумя сетями, обеспечивая защиту доверенной сети от сети без доверия с помощью контроля потока данных. Интернет всегда является сетью без доверия, однако и области внутренней сети могут требовать защиты (например, совершенно не обязательно предоставлять всем сотрудникам компании доступ к файлам счетов отдела). Сетевые экраны часто называются шлюзами, так как они представляют собой входы и выходы внутренней и внешней сети. Так как сетевой экран является точкой фильтрации данных, он усиливает политику безопасности и обеспечивает работу дополнительных служб, таких как шифрование и дешифрование проходящего через него трафика. Многие администраторы уверены, что для защиты веб-сервера и его ресурсов достаточно одного сетевого экрана, который зачастую используется без предварительных исследований конкретного сервера. Сетевой экран эффективен при правильном использовании, лишь в этом случае он обеспечивает необходимое управление и аудит, соответствующие политике безопасности. При правильном выборе сетевого экрана намного легче использовать виртуальные частные сети (VPN) и системы выявления вторжений IDS. При выборе сетевого экрана необходимо ознакомиться с его инструкцией, чтобы понять, как он устроен и какие использует технологии.
Сетевые системы обнаружения вторжений
Система NIDS представляет собой своеобразный щит перед сетью, обеспечивающий отслеживание входящего и исходящего трафика для выявления атаки до того, как она откроет доступ к ресурсам сети. Среди всех технологий IDS NIDS обеспечивает самый широкий спектр действий и обнаруживает наибольшее число атак, включая атаки на отказ в обслуживании. NIDS следует применять в сегменте сети, расположенном с внешней стороны от демилитаризованной зоны, и затем непосредственно в сегменте DMZ. Это позволит отслеживать любую активность во внешней среде и в демилитаризованной зоне. Система NIDS состоит из набора приложений-агентов, стратегически расположенных внутри сети для отслеживания сетевой активности, и представляет собой как аппаратное, так и программное устройство. Совет. Система обнаружения не только обеспечивает безопасность. Одной из наиболее серьезных проблем современного бизнеса является злоумышленное использование внутренней сети. Система IDS может собирать информацию об использовании сети сотрудниками, отслеживая выполняемые задачи, затраты ресурсов или превышение полномочий.
Системы обнаружения вторжений
Для обеспечения хорошей защиты веб-сервера необходимо наличие нескольких уровней безопасности. В то время как сетевой экран обеспечивает контролируемую точку доступа к серверу IIS, целью систем обнаружения вторжений (IDS) является корректная идентификация несанкционированных действий. Системы IDS автоматизируют процесс обнаружения аномалий в сети посредством сбора информации из различных ее точек и анализа на наличие тревожных признаков. Данные устройства являются пассивными, и большинство из них не может блокировать сетевой трафик или контролировать доступ в сеть.
Сканеры вирусов
19 июля 2001 г. более 350 000 компьютеров были заражены червем Code-Red в течение 13 часов. На пике активности червя за каждую минуту заражалось более двухсот новых узлов. Вирусы наносят огромный ущерб любой организации за счет резкого снижения производительности сети, нарушения конфиденциальности клиентов и падения морального духа ее сотрудников. Помочь в обнаружении опасных червей и вирусов могут сканеры вирусов. Важно. Подавляющее большинство червей и вирусов за последние несколько лет было направлено на веб-браузеры и клиенты электронной почты. В процессе борьбы с вирусами необходимо обновлять эти два приложения с помощью соответствующих надстроек.
Службы мониторинга веб-сайта
Многие компании для анализа безопасности прибегают к услугам таких компаний, как Counterpane Internet Security (www.counterpane.com). Преимущество привлечения сторонних компаний заключается в том, что вы получаете возможность общения с высококвалифицированными специалистами в области безопасности. Этот подход решает проблему дороговизны или нехватки сотрудников, так как позволяет уменьшить уровень знаний, необходимый персоналу вашего отдела безопасности. Аналогичными компаниями являются Loudcloud (www.loudcloud.com) и Cyber Attack Management Services (www.exodus.co.jp/managed_services/index_e.shtml); они обеспечивают узловое обнаружение вторжений и реагирование на атаки. Важной частью договора с такой компанией будет соглашение об уровне предоставляемых услуг, поэтому определите для себя четкие требования, чтобы предоставляемые компанией услуги не были слишком "размытыми". В соглашении рекомендуется указать следующие пункты: служба 24/7;время ответов;отчеты о клиентах;уменьшение времени работы из-за изменения в политике;денежные штрафы за плохую производительность.
Многие широко известные веб-сайты привлекают так называемые "красные отряды" для проведения атак на систему с целью обнаружения уязвимых мест. Моделирование взлома представляет собой контролируемую симуляцию атаки против сети, направленную на достижение определенной цели. Целью может быть нахождение информации на серверах клиента, определение возможности нарушения на длительное время операций клиентов или изменения содержимого веб-сайта. Пробелы в безопасности после этого могут быть устранены, чтобы реальное подобное нападение не повлекло за собой серьезных последствий. Еще одним преимуществом симуляции атаки является то, что она является обучающей процедурой, максимально приближенной к реальным условиям, с помощью которой сотрудники отдела безопасности учатся противостоять атакам.
Средства определения производительности
Право, замечательно было бы выяснить, как другие специалисты в области безопасности настроили свои веб-серверы IIS, и затем сравнить соответствие ваших настроек самым лучшим рекомендациям. Центр интернет-безопасности (CIS) (www.cisecurity.org/) определяет среднестатистические рекомендуемые настройки для компьютеров, подключенных к интернету. Имеющиеся на сайте средства измерения уровня безопасности Benchmark и Scoring для Windows 2000 (см. рис. 9.10) обеспечивают простой и быстрый способ определения мощности системы и сравнение ее уровня безопасности с минимальными требованиями CIS.
 Рис. 9.10. С уровнем безопасности, значение которого составляет всего лишь 3,3, администратору сервера необходимо прочесть эту книгу и выяснить, как достичь большего уровня безопасности! Различные отчеты объяснят вам, как повысить стойкость новых и уже работающих систем, а также проведут отслеживание параметров безопасности для проверки соответствия конфигурации, указанной в Benchmark. Покажите своему начальству уровень безопасности своей системы по сравнению со стандартом, тем самым защитив себя от наказания или финансовых санкций. Проверьте, соответствуют ли данные в отчете о безопасности ваших партнеров по бизнесу приемлемому уровню в программе Benchmark.
Сводный перечень рассмотренных процедур
Используйте многочисленные бесплатные средства, выпущенные Microsoft, перед принятием решения о применении дополнительных продуктов безопасности на сервере IIS.Подпишитесь на группы новостей и форумы, в которых содержится информация о любых приобретаемых продуктах, чтобы быть в курсе событий и обновлений.Не устанавливайте образцы и демонстрационные файлы, поставляемые с новым продуктом, на разрабатываемый сервер.Замените все пароли по умолчанию для установленных продуктов на более мощные пароли. Сначала обеспечьте защиту самых важных ресурсов и удостоверьтесь в том, что выбранный продукт делает это на должном уровне.Разработайте политику доступа к сетевым службам, чтобы определить возможности сетевого экрана. Примените систему обнаружения вторжений для защиты от некорректных программ, а также защиты новых и старых уязвимых мест. Мониторинг системы поможет обнаружить хакера независимо от того, какое слабое место будет использоваться для получения доступа.Файлы журналов полезны только в том случае, если они регулярно изучаются, поэтому установите анализатор журналов или программу, содержащую этот компонент, для автоматизации аудита и анализа сетевых журналов.Выберите антивирусную программу, обеспечивающую централизованный контроль и взаимодействие с другими средствами безопасности.Примените политику контроля за изменениями и резервированием данных и дополните ее программным обеспечением, предназначенным для восстановления после атак из интернета.Привлеките руководство для реализации программы обучения мерам безопасности сотрудников, для неукоснительного соблюдения всех пунктов, предусмотренных этой программой.Проверьте сайт на устойчивость и выясните, сможет ли он поддерживать большое число одновременных соединений с высоким уровнем загрузки, рассмотрите возможность применения аппаратного ускорителя SSL для сайта электронной коммерции.Решите вопрос о надежной аутентификации клиентов и пользователей, которым необходим доступ к важной информации на сервере, при необходимости обеспечьте их соответствующими средствами доступа, такими как маркеры безопасности или смарт-карты.Осуществите поиск пробелов в системе безопасности, применив сканер уязвимых мест, прежде чем это сделают хакеры.Загрузите программу CIS Scoring Tool и проверьте, соответствует ли конфигурация IIS рекомендациям в рассматриваемой области.При отсутствии в организации квалифицированного персонала службы безопасности привлеките внешние службы, занимающиеся мониторингом сайта.Постоянно обновляйте сведения о сайте. При управлении большой корпоративной сетью используйте сетевой документатор.
Технологии, используемые в сетевых экранах
Для работы сетевого экрана необходимы следующие условия. Весь исходящий и входящий трафик должен проходить через сетевой экран.Через сетевой экран должен проходить только санкционированный трафик, определенный политикой безопасности.Сама система должна быть непреодолима для вторжений.
Сетевые экраны подразделяются на три типа в зависимости от наличия истории соединений и поддерживаемого уровня протокола. Сетевые экраны пакетного уровня. Анализируют входящие и исходящие пакеты на сетевом и транспортном уровнях и фильтруют их по IP-адресам источника и пункта назначения.Сетевые экраны proxy. Устанавливают соединение с удаленным узлом со скрытием и защитой отдельных компьютеров в сети сетевым экраном, который выступает в роли этих компьютеров и выполняет все функции по дальнейшей передаче пакетов.Сетевые экраны, осуществляющие адаптивную проверку пакетов. Функционируют на сетевом уровне, отслеживая каждое подключение, проходящее через сетевой экран, для проверки его корректности. Посредством проверки не только информации заголовка, но и содержимого пакета, вплоть до уровня приложения, сетевой экран осуществляет фильтрацию по контексту, установленному предшествующими пакетами.
Современные сетевые экраны, называемые гибридными, объединяют в себе различные методы обеспечения безопасности. Давайте проведем обзор каждого метода, чтобы понять, каким образом они способствуют защите.
Ускорители SSL
Число транзакций в секунду (Transactions Per Second, TPS) используется для определения производительности ускорителей SSL, однако имейте в виду, что не существует единого стандарта определения TPS. Большая часть производителей использует значение TPS для измерения числа операций RSA с секретным ключом, осуществляемых на ключе длиной в 1024 бита. Другой характеристикой является число запросов в секунду (Requests Per Second, RPS); запросом здесь является команда HTTP GET с полной процедурой рукопожатия SSL. Тем не менее, ни одно из этих значений не отображает реальной производительности, так как большей части запросов HTTP не будет предшествовать полное рукопожатие RSA. Пропускная способность и время ответа лучше отражают производительность при исследовании ускорителей. Ниже приведены основные производители ускорителей SSL: nCipher – ускорители nForce Secure SSL (www.ncipher.com);Rainbow – ускорители CryptoSwift и NetSwift SSL (www.rainbow.com).
Утверждение сторонних программных продуктов
При заключении контракта с внешними разработчиками на построение или отслеживание интранет-сети (или веб-сайта), при использовании готовых библиотек DLL интерфейса программирования ISAPI нельзя быть уверенным в безопасности сторонних исполняемых компонентов. Например, библиотека ISAPI DLL может повысить свои привилегии и права доступа до уровня встроенной в систему учетной записи SYSTEM посредством вызова функции API с именем RevertToSelf(). Проверяйте каждый запускаемый исполняемый модуль с помощью средств анализа, которые выявят все включенные в компонент вызовы функций. Одной из таких программ является утилита Microsoft Binary File Dumper (DumpBin.exe), которая входит в состав средства разработки Windows Visual C++. Для проверки вызова файлом UntrustedISAPI.DLL функции RevertToSelf() используйте следующий синтаксис: dumpbin /imports UntrustedISAPI.DLL | find "RevertToSelf"
Если на экран не будет выведено никаких результатов, это значит, что библиотека UntrustedISAPI.DLL не вызывает функцию RevertToSelf() напрямую. Она может вызывать API через LoadLibrary(), поэтому нужно осуществить поиск и этой функции.
Узловая система обнаружения вторжений
Система HIDS представляет собой приложение, устанавливаемое на жизненно важные узлы демилитаризованной зоны, например, на веб-сервер, и отслеживающее события только на этом устройстве. Устройства HIDS фиксируют аутентификацию пользователей, процессы приложений, подключение и изменение файлов для обнаружения атак типа Back Orifice или атак замедленного действия. Для экономии процессорного времени эти системы настраиваются на отслеживание активности определенных программ, например, автоматическое выполнение макросов и активность признаков вирусов-червей. Централизованные узловые IDS (CHIDS) являются разновидностью HIDS, в которой реализовано централизованное управление анализом посредством отправки отслеженных файлов, журналов и параметров реестра центральной консоли анализа. Это свойство повышает безопасность устройств, так как вся важная информация отправляется за пределы узла, что обеспечит анализ данных даже в случае нарушения его защиты. Гибридные IDS дополняют технологию HIDS отслеживанием сетевого трафика, входящего или исходящего от определенного узла. Технология NIDS, в отличие от HIDS, отслеживает весь сетевой трафик на предмет атак, использующих соединения между компьютерами сети. Предупреждение. Помните, что необходимо принимать в расчет наличие персонала для установки и обслуживания продуктов, обеспечивающих комплексную безопасность. Многие из обсуждаемых продуктов предъявляют повышенные требования к системе. Например, система обнаружения вторжений (IDS) генерирует гигабайты данных журнала и отнимает большое количество аппаратных ресурсов. Может понадобиться обновление оборудования, которое по цене в некоторых случаях превышает стоимость самой системы IDS. Необходимо найти оптимальное соотношение между требованиями к системе и вашим бюджетом.
Важные свойства антивирусного программного обеспечения
Ключевым фактором в оценке антивирусной программы является аккуратность поиска вирусов, заключающаяся в правильности отделения вирусов от безопасного содержимого, поэтому необходима точка централизованного управления для эффективной защиты сети и сервера IIS. Большая часть сканеров отличается друг от друга в возможностях сканирования не более чем на два процента, поэтому основными их различиями является масштабируемость, управляемость и простота использования. Важными свойствами сканеров также являются скорость сканирования, лечение зараженных объектов, автоматическое обновление и круглосуточная техническая поддержка. Хороший сетевой антивирусный пакет программ поддерживает сканирование сжатых файлов, обнаруживает макровирусы, выявляет вирус в любом месте его проникновения в систему и останавливает его распространение с рабочих станций на серверы и наоборот. Для минимизации затрат ресурсов антивирусное программное обеспечение должно выполнять сканирование без существенного воздействия на операции с файлами, а также лечить большую часть файлов "на лету".
Внутреннее обучение или сторонние обучающие курсы?
Ответ на вопрос, каким образом обучить персонал компании, зависит от ресурсов организации. При наличии собственных служб обучения можно легко преобразовать конкретные политики безопасности в обучающий материал. Однако этот способ, скорее всего, применим только к крупным организациям, и в большинстве случаев для обучения сотрудников придется прибегнуть к сторонним ресурсам. Сторонние обучающие организации предлагают курсы, соответствующие профилю политики безопасности организации. При этом необходимо четко фиксировать, кто прошел эти курсы и успешно подтвердил свои знания, так как это может быть весомым аргументом в суде. Этим организациям необходимо предоставить курсы для руководящего состава компании, а также для сотрудников, имеющих непосредственный доступ к важным аспектам бизнеса. В зависимости от области, к которой относится компания, можно привлечь прочих сотрудников, имеющих доступ к сети (например, службы очистки данных или партнеров по бизнесу). Это легче сделать с помощью стороннего преподавателя, так как ему удобнее осуществлять обучение в различных местах.
Выбор оптимального решения по соотношению цена/качество
В данной лекции рассмотрен большой объем материала, и вы можете так и не понять, на что разумнее всего потратить деньги. Конечной целью при вынесении решения о привлечении сторонних структур для повышения уровня защищенности является обеспечение безопасности ресурсов сети. Не пытайтесь решить разом все проблемы, связанные с безопасностью; руководствуйтесь последовательным подходом, обрабатывая в первую очередь самые важные аспекты. Посмотрите, насколько качественно программа или служба решит ту или иную задачу, не приведет ли это действие к возникновению побочных проблем, к увеличению персонала для обслуживания какого-либо компонента. Если вы не знаете, как правильно вложить средства, отведенные для обеспечения безопасности, обратитесь за информацией к веб-сайту RiskWatch по адресу www.riskwatch.com. На этом сайте расположен пакет программ, осуществляющий анализ угроз и уязвимых мест, которые необходимо учитывать при определении эффективных мер безопасности, а также выдающий рекомендации по поводу того, на что следует потратить денежные средства. Посредством предположений "что-если" вы определите, какие потенциальные меры безопасности отвечают необходимому уровню защиты; этот подход используйте и для распределения бюджета. Сайт Insecure.org производителя программы nmap (утилиты сканирования портов больших сетей) содержит перечень пятидесяти наиболее эффективных средств защиты, составленный на основе мнений 1200 пользователей nmap о предпочитаемых ими утилитах безопасности. Этот перечень доступен по адресу www.insecure.org/tools.html.
Выбор системы обнаружения вторжений
Индустриальные стандарты предусматривают использование как NIDS, так и HIDS. Если вы не можете себе позволить обе системы, для защиты сети сначала примените NIDS, а затем HIDS. Система NIDS обеспечит большую детализацию сетевого трафика, так как HIDS предоставляет информацию об определенном компьютере или сервере, а информация о трафике в этой системе не предусмотрена. Многие системы NIDS блокируют атаку и предотвращают несанкционированный доступ хакера. Несмотря на то, что эти методы различны по своей эффективности, они выполняются в реальном времени и, следовательно, потенциально ограничивают ущерб, который может причинить атака. Так как системы HIDS основаны на анализе файлов журналов, они предоставляют информацию об атаке только после ее проявления. Гибридные IDS позволяют реагировать в реальном времени, однако обеспечивают защиту только определенного узла. Наконец, системы NIDS часто взаимодействуют с другими системами периметровой защиты посредством динамического обновления политик для обработки угроз в реальном времени. Необходимо, чтобы выбранная система IDS удовлетворяла как настоящим, так и будущим требованиям. Важным аспектом является степень конфигурирования, так как настройка системы позволяет адаптировать IDS к вашей уникальной среде и повысить смысловое значение генерируемых данных. Так как IDS работает в качестве сигнализации проникновения, необходимо обеспечить соответствующее реагирование в случае тревоги. Для этого разработайте политику реагирования, заключающуюся в создании и всестороннем тестировании процедур на случай проявления вредоносной атаки. Для обеспечения простоты IDS следует приобретать систему на отдельном аппаратном оборудовании, а не программный компонент, применение которого может занять больше времени. Можно создать систему IDS посредством комбинирования персональных и корпоративных сетевых экранов с журналами, их автоматизированными анализаторами и устройствами для прослушивания пакетов. В малой сети часто оказывается более разумным применение самостоятельно сконструированных устройств, если есть опыт собственных разработок.
Безопасность IIS
Администрирование и ведение журнала
С помощью средства Windows Media Administrator контролируется управление интерактивным содержимым и файлами, отслеживается общий уровень активности системы в режиме реального времени, создаются журналы, содержащие информацию о клиенте и о событиях сервера для выявления нежелательной активности. Совет. Служба Media Services является относительно новой технологией, и в настоящее время в ней обнаруживаются все новые и новые пробелы в безопасности; по этой причине следует быть в курсе новостей, освещаемых на сайте www.microsoft.com/windows/windowsmedia.
Безопасность исходящего трафика
Для всех подключений к удаленным доменам можно установить шифрование исходящего трафика по умолчанию или настроить отдельные домены на свои собственные параметры шифрования во вкладке Delivery (Доставка). Для шифрования всех исходящих сообщений, направленных на удаленные домены, нажмите на кнопку Outbound Security (Безопасность исходящего трафика) в окне Properties (Свойства) и отметьте опцию TLS Encryption (Шифрование TLS) (см. рисунок). Безопасность исходящего трафика определяет аутентификацию SMTP-сервера на другом SMTP-сервере, а также шифрование исходящих сообщений. Чтобы настроить параметры по умолчанию для отдельного удаленного домена, создайте новый домен в области Domains (Домены). Откройте окно Properties для удаленного домена и нажмите на кнопку Outbound Security (Безопасность внешнего трафика). После этого отметьте опцию TLS Encryption (Шифрование TLS) для настройки параметра; помните, что устанавливаемые здесь параметры применяются только к домену, к которому относится данный объект. Для
шифрования входящих сообщений нужно установить сертификат сервера. Отправка зашифрованных сообщений не требует сертификата на локальном сервере.

Безопасность каталога
С помощью этой вкладки можно ограничить доступ по IP-адресам пользователей. По умолчанию доступ к FTP-сайту разрешен со всех IP-адресов, но иногда нужно установить доступ только с IP-адресов, лежащих в определенном диапазоне; этими пользователями могут быть, например, клиенты компании или пользователи интранет-сети. Это можно сделать через блокировку доступа со всех компьютеров с последующим указанием доверенных IP-адресов в виде исключений (см. рис. 10.5).
 Рис. 10.5. Данный FTP-сайт разрешит доступ только компьютеру с IP-адресом 192.168.16.5 Можно сделать наоборот – разрешить всем компьютерам доступ к сайту, после чего указать отдельные компьютеры, доступ с которых запрещен. Это полезно в случае, если в результате анализа журналов системы выявлены подозрительные действия с определенного IP-адреса и нужно запретить доступ к сайту с соответствующего компьютера. Можно запретить доступ и по имени домена, чтобы конкурентам с сайта rival.com был недоступен ваш FTP-сайт. Совет. При запрете доступа к FTP-сайту по имени домена служба FTP будет работать медленнее, так как FTP-серверу теперь придется выполнять обратный поиск и определять, является ли IP-адрес компьютера, с которого осуществляется попытка доступа, запрещенным для доступа
FTP повышает общую эффективность интернет-служб, однако следует в обязательном порядке изменить настройки по умолчанию для обеспечения безопасности службы и определить, как и кем она будет использоваться.
Безопасность Windows Media
Функции безопасности Windows Media ограничивают доступ к медиа-данным на сервере Windows Media и реализовывают платное содержимое. С помощью последней версии Windows Media Rights Manager SDK (Пакет разработки диспетчера прав) создаются приложения, выполняющие шифрование или пакетирование цифровых медиа-файлов и выпускающие лицензии на них. Пакетный файл Windows Media содержит версию файла, зашифрованную при помощи ключа, чтобы открыть файл смог только тот пользователь, который получил на него лицензию. Лицензия выдается отдельно от пакетного файла Windows Media, поэтому содержимое и лицензию на это содержимое можно получить в разное время. Зашифрованные файлы передаются на компьютер в потоковом режиме или загружаются на компьютер пользователя.
Домашний каталог
До сих пор вы настраивали число пользователей, имеющих право на доступ к сайту, способ их аутентификации и создавали сообщение, отображаемое при входе. Теперь нужно определить, какие действия пользователи могут выполнять после установки соединения с сервером. Определите используемый FTP-сайтом каталог или виртуальный каталог на вкладке Home Directory (Домашний каталог) (см. рис.10.4). Никогда не используйте общее сетевое расположение, так как оно управляется посредством привилегий доступа учетной записи общего расположения. Это сделает настройку безопасного доступа к нему более сложной, чем управление, что не соответствует уровню риска. Если позволяет бюджет, установите FTP-сервер на другом сервере, нежели основной сервер IIS. В противном случае расположите корневые папки на другом томе. Это не только изолирует FTP-службу, но и упростит управление дисковыми квотами в Windows 2000 и разрешением на запись.
 Рис. 10.4. Никогда не используйте общее расположение в качестве каталога для FTP-сайта После выбора расположения каталога включите для него разрешение Read (Чтение) или Write (Запись). Если предоставить доступ к FTP-сайту для чтения, пользователь увидит физические каталоги и файлы, имеющиеся в домашнем каталоге, а также все созданные виртуальные каталоги, и сможет считывать и загружать любые файлы. Разрешение на запись позволит пользователям отгружать файлы на FTP-сайт. Если необходимо предоставить разрешение Write (Запись) для каталога, то присвойте это разрешение отдельному виртуальному каталогу, не имеющему разрешение на чтение. Это делается по той причине, что предоставление анонимным пользователям права на чтение и запись в один и тот же каталог создает так называемый warez-сайт. Хакеры используют такие сайты для отгрузки пиратского программного обеспечения или музыкальных файлов, что обеспечит вам серьезные проблемы, связанные с авторскими правами. Разрешение Read (Чтение) для отгруженных файлов присваивайте только внутренним пользователям с соответствующими правами.
Контроль доступа
На вкладке Access (Доступ) (см. рис. 10.8) находятся параметры, предназначенные для настройки доступа клиентов к виртуальному серверу NNTP и безопасности передачи данных, включая аутентификацию, шифрование, ограничение чтения или публикации статей, разрешение или запрет загрузки NNTP-серверами групп новостей. Для настройки методов аутентификации, поддерживаемых службой NNTP, нажмите на кнопку Authentication (Аутентификация).
 Рис. 10.8. Используйте вкладку Access (Доступ) для настройки основных параметров безопасности NNTP Если группа новостей доступна всем пользователям, то включите опцию Allow Anonymous Connections (Разрешить анонимные подключения). Смените учетную запись IUSR_имя-компьютера, используемую анонимными пользователями, нажав на кнопку Anonymous (Анонимный доступ). Укажите учетную запись, созданную специально для анонимных подключений NNTP. Не включайте опцию Basic Authentication (Базовая аутентификация), так как это разрешит передачу имен пользователей и паролей в открытом виде. Если у пользователей имеется клиент новостей, например, Microsoft Outlook Express, поддерживающий аутентификацию Windows Security Package (Пакет безопасности Windows), выберите его для обеспечения безопасного входа и аутентификации пользователей групп новостей. В качестве альтернативы потребуйте SSL-аутентификацию клиентов, чтобы пользователи при входе вводили SSL-зашифрованные имена и пароли. При наличии у пользователей цифровых сертификатов свяжите эти сертификаты с учетными записями Windows, включив поддержку сертификатов клиентов. Это предотвратит обманное получение доступа злоумышленником под видом легального пользователя. Рекомендуется использовать именно этот подход, если статьи групп новостей являются конфиденциальными: ведь файловые разрешения NTFS и аудит применимы к каждому пользователю. На рисунке 10.9 показаны параметры NNTP-сервера, требующие от пользователей предоставления цифрового сертификата, связанного с учетной записью Windows.

На вкладке Access (Доступ) (см. рис. 10.8) находятся параметры, предназначенные для настройки доступа клиентов к виртуальному серверу NNTP и безопасности передачи данных, включая аутентификацию, шифрование, ограничение чтения или публикации статей, разрешение или запрет загрузки NNTP-серверами групп новостей. Для настройки методов аутентификации, поддерживаемых службой NNTP, нажмите на кнопку Authentication (Аутентификация).
 Рис. 10.8. Используйте вкладку Access (Доступ) для настройки основных параметров безопасности NNTP Если группа новостей доступна всем пользователям, то включите опцию Allow Anonymous Connections (Разрешить анонимные подключения). Смените учетную запись IUSR_имя-компьютера, используемую анонимными пользователями, нажав на кнопку Anonymous (Анонимный доступ). Укажите учетную запись, созданную специально для анонимных подключений NNTP. Не включайте опцию Basic Authentication (Базовая аутентификация), так как это разрешит передачу имен пользователей и паролей в открытом виде. Если у пользователей имеется клиент новостей, например, Microsoft Outlook Express, поддерживающий аутентификацию Windows Security Package (Пакет безопасности Windows), выберите его для обеспечения безопасного входа и аутентификации пользователей групп новостей. В качестве альтернативы потребуйте SSL-аутентификацию клиентов, чтобы пользователи при входе вводили SSL-зашифрованные имена и пароли. При наличии у пользователей цифровых сертификатов свяжите эти сертификаты с учетными записями Windows, включив поддержку сертификатов клиентов. Это предотвратит обманное получение доступа злоумышленником под видом легального пользователя. Рекомендуется использовать именно этот подход, если статьи групп новостей являются конфиденциальными: ведь файловые разрешения NTFS и аудит применимы к каждому пользователю. На рисунке 10.9 показаны параметры NNTP-сервера, требующие от пользователей предоставления цифрового сертификата, связанного с учетной записью Windows.

Настройка сервера индексов
Так как сервер индексов позволяет пользователям осуществлять поиск на сайте, необходимо аккуратно следить за тем, какие файлы и папки индексируются сервером; в противном случае пользователи смогут найти и прочитать важную информацию, не предназначенную для общего пользования. Вы можете включить индексирование на уровне сервера, веб-сайта или папки. Параметры уровня сервера применяются к индексируемому содержимому на всех веб-сайтах сервера; параметры уровня сайта применяются ко всему индексируемому содержимому на конкретном сайте; параметры уровня папки применяются ко всему индексируемому содержимому внутри рассматриваемой папки и всех ее подпапок. Управление сервером индексов осуществляется с помощью оснастки MMC Index Server Manager (Диспетчер сервера индексов) или консоли MMC Computer Management (Управление компьютером). Для открытия консоли Computer Management нажмите на Start (Пуск), выберите Settings\Control Panel\Administrative Tools\Computer Management (Настройка\Панель управления\Администрирование\Управление компьютером). В дереве консоли разверните пункт Services and Applications (Службы и приложения), после чего щелкните на Indexing Service (Служба индексирования). После открытия Indexing Service вы увидите два каталога по умолчанию – System и Web. Каталог System содержит диск C и должен быть удален немедленно. Каталог Web содержит папку inetpub\wwwroot и другие папки, которые нельзя индексировать на защищенном сервере, например, папку iisadmin (см. рисунок).

Следует удалить и этот каталог, после чего создать новый каталог, добавив в него только те папки, в которых пользователи веб-сайта будут осуществлять поиск данных. Это уменьшит риск индексирования и открытия доступа к важным документам или системным паролям, включенным в сценарии. Важно. Сервер индексов может индексировать и предоставлять доступ к документам в виртуальном каталоге, указывающем на удаленное расположение. Отключите опцию Add Network Share Alias Automatically (Автоматически добавлять псевдоним сетевого расположения) на вкладке Tracking (Отслеживание) окна Index Server Properties (Свойства сервера индексов), чтобы запретить случайное добавление общих сетевых устройств в каталог. Как уже неоднократно говорилось, ни в коем случае не следует использовать удаленные расположения в архитектуре веб-сайта.
Обеспечение безопасности NNTP-сайта
Для управления службой NNTP через Internet Services Manager необходимо быть членом локальной группы Administrators (Администраторы). Щелкните правой кнопкой на объекте NNTP, чтобы отобразить окно Properties (Свойства), содержащее четыре вкладки (см. рис. 10.7). Как и для FTP, включите ведение журнала активности NNTP для всех групп новостей на уровне виртуального сервера NNTP и на уровне отдельного виртуального каталога. Все события, генерируемые службой NNTP, заносятся в системный журнал, а в индикаторе производительности Performance Monitor появятся счетчики для службы NNTP.
 Рис. 10.6. С помощью окна Properties (Свойства) каталога по умолчанию укажите каталог, который будет использовать служба NNTP
 увеличить изображение Рис. 10.7. Нажмите на кнопку Connection (Подключение) на вкладке General (Общие), чтобы установить пределы подключений для NNTP-сервера
Обеспечение безопасности сайта
FTP-серверы управляются и настраиваются (как и IIS) с помощью программы Internet Services Manager (ISM), осуществляющей контроль над отдельными FTP-сайтами. Службой FTP можно управлять с помощью консоли Services Management Console или команды Net (см. раздел "Запуск и остановка служб"). Параметры FTP-сайта можно настраивать на трех уровнях: главном, уровне сайта и уровне виртуального каталога. Параметры на главном уровне и уровне сайта наследуются всеми новыми FTP-сайтами. Откройте список Master Properties (Главные свойства) (см. рис. 10.1), щелкнув правой кнопкой мыши на узле веб-сервера в диспетчере Internet Services Manager. Отдельные параметры, настроенные на уровне конкретного сайта и виртуального каталога, будут игнорировать родительские параметры. Можно создать на сервере несколько FTP-сайтов, чтобы FTP-сервер не выглядел единственным сервером.
 Рис. 10.1. В окне IIS Master Properties (Главные свойства IIS) настраиваются значения по умолчанию, наследуемые всеми сайтами Ограничение полосы пропускания, настраиваемое в окне Internet Server Properties (Свойства сервера интернета), применяется ко всем службам интернета, работающим на сервере IIS; однако, в отличие от веб-сайтов, невозможно управлять этим ограничением для отдельного FTP-сайта. Если сервер IIS использует то же интернет-подключение, что и внутренние пользователи, примените параметр Maximum Network Use (Максимальное использование сети), чтобы запретить использование интернет-соединения службами FTP и Web в случаях повышенной активности или атаки на отказ в обслуживании. Выберите параметр Enable Bandwidth Throttling (Включить ограничение полосы пропускания) и введите максимальное число килобайт в секунду, доступное серверу IIS (см. рис. 10.1). Мы рассмотрим каждый из параметров службы, влияющий на уровень защищенности сервера. Среди этих параметров выделяются параметры производительности, предотвращающие атаки на отказ в обслуживании. Для корректной настройки всех создаваемых FTP-сайтов необходимо сконфигурировать главные свойства FTP сервера интернета. Щелкните правой кнопкой мыши на объекте в диспетчере ISM и в появившемся меню выберите Properties (Свойства). После этого в ниспадающем списке Master Properties (Главные свойства) выберите FTP Service (Служба FTP) и нажмите на кнопку Edit (Изменить), чтобы открыть окно FTP Service Master Properties (Главные свойства службы FTP) (см. рис. 10.2).
 Рис. 10.2. Уменьшите число соединений по умолчанию в окне FTP Service Master Properties (Главные свойства службы FTP), равное 100 000, если не требуется поддержка такого количества подключений
Обеспечение безопасности SMTP-сервера
Управление сервером SMTP осуществляется из консоли ISM Management, поэтому для изменения его параметров нужно быть членом локальной группы Administrators (Администраторы). Чтобы открыть диалоговое окно Properties (Свойства) (см. рис. 10.12), щелкните правой кнопкой мыши на сервере SMTP и в появившемся меню выберите Properties. Необходимо сразу же настроить параметры соединения и включить ведение журнала. Можно использовать такие же настройки журнала, что и для IIS.
 Рис. 10.12. Окно SMTP Server Properties (Свойства сервера SMTP) содержит свой собственный набор вкладок Вспомнив, как установлены ограничения на подключение к FTP-серверу, нужно ограничить максимальное число подключений к серверу SMTP, чтобы ни один отдельный домен не смог полностью контролировать входящие и исходящие подключения службы SMTP. Нажмите на кнопку Connection (Подключение) на вкладке General (Общие) и установите число соединений и временные периоды на нужные значения.
Ограничение доступа к содержимому посредством каталогов
Каталог сервера индексов представляет собой папку с файлами, содержащими данные индексирования. Сервер индексов записывает в каталог генерируемую информацию о содержимом и свойствах. В этом каталоге осуществляется управление разрешением на доступ пользователей к индексированным документам. Каждый раз при отправке пользователем запроса сервер индексов проверяет данные о защищенности файла. В результат запроса включаются только разрешенные документы. Это отличает данную систему от других поисковых машин, которые отображают ссылки на все документы, удовлетворяющие заданным условиям поиска, даже если пользователь не может прочесть сам документ. Индексирование на сервере индексов Microsoft Index Server основано на виртуальных каталогах, и не существует метода исключения определенных физических каталогов из процесса индексирования.
Ограничение подключений
Если служба FTP предназначена для нескольких отдельных клиентов или сотрудников, на сервере не нужна поддержка множества единовременных подключений, так как это упрощает хакерам реализацию атаки на отказ в обслуживании. На вкладке FTP Site (FTP-узел) в области Connection (Подключение) в поле Limited To (Ограничено) введите соответствующий предел согласно назначению сервера. После этого на вкладке Message (Сообщение) включите отображение сообщения пользователям, пытающимся подключиться к серверу после достижения максимально допустимого числа подключений. В поле Connection Timeout (Время простоя соединения) введите время (в секундах), по истечении которого сервер отключит неактивных пользователей. Такая настройка параметров обеспечит закрытие всех подключений, если это не сделает протокол FTP.
Ограничение удаленного администрирования
Некоторые функции управления сервером индексов по умолчанию доступны с удаленного веб-сайта, что представляет угрозу безопасности, так как посторонний пользователь может внести несанкционированные изменения. Если нужен дополнительный контроль над административными операциями, примените контроль разрешений доступа для файлов .ida, .idq и .htx, определяющих метод вывода результатов сервером индексов. Совет. Все административные операции сервера индексов управляются посредством перечня контроля доступа в ключе системного реестра HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ ContentIndex.
Операторы
Вкладка Security (Безопасность) позволяет наделить ограниченными полномочиями пользователей и группы на SMTP-сервере, однако эти полномочия не относятся к другим аспектам IIS в отличие от других типов операторов. Несмотря на то, что SMTP-служба является полезным компонентом с интересными возможностями, она очень далека от полнофункционального почтового сервера. Тем не менее, эта служба принесет немалую пользу, если будет обеспечена ее безопасность и правильная настройка.
Отключение пользователей
В окне Properties (Свойства) FTP-сайта выясните, какие пользователи в данный момент подключены к сайту, нажав на кнопку Current Sessions (Текущие сеансы), как показано на рисунке. Анонимные пользователи отображаются с использованием вопросительных знаков.

Для быстрого отключения определенного пользователя (например, возникло подозрение, что он использует сервер не по назначению) выделите его (или их) и нажмите на кнопку Disconnect (Отключить) или отключите всех пользователей, нажав на кнопку Disconnect All (Отключить всех). Совет. Используйте Internet Services Manager (Диспетчер служб интернета) для управления отдельными FTP-сайтами. Например, если на сервере находятся два FTP-сайта, можно остановить службу FTP на одном сайте, но оставить второй сайт работающим. Суть этого действия заключается в том, что служба FTP продолжает выполняться, а остановленный FTP-сайт переводится в автономный режим.
Параметры файла запроса данных интернета
В файле Internet Data Query строка CiRestriction= представляет собой запрос, который обрабатывается сервером индексов, а строка CiTemplate= указывает файл, предназначенный для приема информации из файла .idq. В этой строке, как правило, указывается файл с расширением .htx. Избегайте изменения параметров строки CiTemplate, так как это может привести к случайной передаче через сеть файлов в каталогах сценариев с разрешением только на выполнение. Например, если файл .idq содержит строки [Query] CiTemplate=%CiTemplate%
то клиент может отправить URL, содержащий эту строку в строке запроса CiTemplate=/scripts/payrollaccess.pl
что позволит неавторизованному пользователю прочесть содержимое файла сценария Perl. Для исключения этой возможности рекомендуется переключаться между несколькими файлами .htx посредством использования только базового имени файла и добавления каталога сценариев и расширения имени файла взамен параметра, например: [Query] CiRectriction=%q% CiTemplate=/scripts/%t%.htx
В файле .idq можно указать файлы, которые не должны отображаться в результатах поиска. Например, если виртуальный корневой каталог /reports указывает на D:\reports, но результаты из D:\reports\ private не должны отображаться в конечном наборе данных, измените параметр CiRestriction в файле .idq следующим образом: CiRestriction=%CiRestriction% AND NOT #path D:\reports\private*Важно. Сервер индексов будет индексировать подкаталог, не имеющий разрешение Read (Чтение), если он находится внутри каталога, имеющего разрешение Read (Чтение). Во избежание этого замаскируйте непредназначенные для чтения каталоги посредством установки CiRestriction в файле запроса .idq. Например, скрыть папку с именем \_readforbidden можно установкой CiRestriction в файле .idq на значение CiRestriction=(%UserRestriction%)&!#vpath *\readforbidden\*.
Политики истечения срока размещения
Сервер NNTP поддерживает тысячи различных групп новостей, а в популярных группах новостей публикуются сотни статей в день. Если не ограничить число публикуемых статей, то на NNTP-сервере возникнет проблема нехватки пространства на жестком диске; если в этом же разделе находится и операционная система, то сервер может попросту выйти из строя. Это еще одна причина, по которой следует размещать файлы NNTP на отдельном жестком диске. Можно уменьшить занимаемое статьями группы новостей дисковое пространство, применив политику истечения срока размещения, которая автоматически удаляет статьи по достижении ими определенного возраста. Для создания данной политики щелкните правой кнопкой мыши на узле Expiration Policies (Политики истечения срока) и выберите New (Создать), после чего выберите Expiration Policy (Политика истечения срока размещения). Откроется Expiration Policy Wizard (Мастер политики истечения срока размещения), с помощью которого можно создать новую политику.
 Рис. 10.11. Укажите адрес электронной почты, на который отправляются статьи для проверки, либо параметры домена модератора по умолчанию
Разрешения папок и файлов
Настройка разрешений на вкладке FTP Site (FTP-сайт) или Virtual Directory (Виртуальный каталог) не может игнорировать атрибуты безопасности NTFS рассматриваемого каталога или находящихся в нем файлов. Если разрешения NTFS для каталога установлены только на чтение, то даже при наличии доступа на чтение и запись во вкладке Directory (Каталог) пользователь сможет осуществлять доступ только для чтения. В настоящий момент пользователям предоставлены самые ограниченные права. Следует просто добавить пользователей, которым нужен доступ к каталогу FTP, и присвоить им минимальные разрешения. Пользователи должны обладать привилегией локального входа, а также разрешением Read (Чтение) или Write (Запись). Не предоставляйте им право Access this Computer from the Network (Осуществлять доступ к этому компьютеру из сети), которое позволяет обходить службы Web, FTP или Gopher. Важно. Предоставление права Access this Computer from the Network позволяет пользователю обходить службы FTP для подключения к серверу. Это обстоятельство не соответствует одному из важных условий безопасности IIS. При входе клиента на сервер доступ пользователя ограничивается домашним каталогом FTP и его подкаталогами. Это хороший метод управления областями, к которым имеет доступ пользователь.
Сценарии аутентификации
Изучите следующие сценарии аутентификации перед разрешением или запретом анонимного подключения к FTP-сайту. Все пользователи осуществляют доступ к FTP-сайту из интернета. Следует разрешить только анонимные подключения, что запретит использование реальных имен пользователей и паролей посредством отправки их в открытом виде через интернет. Все пользователи осуществляют доступ к FTP-сайту через локальную сеть. Необходимо, чтобы каждый пользователь входил в систему под своей учетной записью, и использовать функции безопасности NTFS для управления разрешениями на доступ. Если нет уверенности в том, что сеть является доверенной (что реально для сети небольшого размера), то используйте только анонимные подключения для запрета передачи паролей в открытом виде. Пользователи доверенной сети по умолчанию входят в собственный подкаталог FTP. Отключите опцию Allow Anonymous Connections (Разрешить анонимные подключения) и создайте учетную запись Windows для каждого из пользователей. Присвойте учетным записям Administrators (Администраторы) и System (Система) право Full Control (Полный доступ) и удалите группу Everyone (Все пользователи). Создайте подпапку для каждого пользователя, наследующую параметры безопасности корневой папки, добавьте пользователя, использующего папку, и присвойте ему право Full Control (Полный доступ). Пользователи осуществляют доступ к FTP-сайту как из интернета, так и из локальной сети. Из-за ограничений протокола FTP следует разрешать только анонимные подключения, чтобы локальные пользователи не передавали свои пароли в открытом виде. FTP-сайт позволяет пользователям обмениваться конфиденциальными файлами. Необходимо установить сертификат сервера и предоставить пользователям такую программу, как SecureFX от Van Dyke Software, расположенную по адресу www.vandyke.com/products/securefx/. Программа SecureFX обеспечивает соединение SFTP (Безопасный FTP) посредством шифруемого SSH2-соединения, защищающего весь трафик от сетевого прослушивания. В качестве альтернативы можно использовать сетевые экраны типа Microsoft ISA Server, работающие через протокол IPSec, для шифрования FTP-трафика и аутентификации пользователей посредством входных данных их учетных записей Windows. Важно. Используйте для FTP-каталогов файловую систему NTFS. Файловая система FAT поддерживает безопасность только на уровне общего расположения.
Сервер индексов Microsoft и служба индексирования содержимого
По мере увеличения размеров веб-сайта он будет содержать все больше данных, доступных пользователям, и вам понадобится поисковая система для облегчения поиска нужной информации. Сервер индексов Microsoft представляет собой службу, дополняющую Internet Information Server, которая обеспечивает возможность поиска текстовых документов (форматов HTML, MS Word, Excel и PowerPoint) на сервере. Операции сервера индексов выполняются службой индексирования содержимого, функционирующей как служба NT, параметры которой изменяются с помощью консоли Services Management Console (Управление службами). Сервер индексов составляет общий перечень содержимого и свойств документов, находящихся в определенном наборе каталогов (называемом областью), которые коллективно группируются в один каталог. Как упоминалось ранее, сервер индексов может индексировать сообщения NNTP на сервере новостей. Перед использованием сервера индексов выделите дополнительное дисковое пространство и, если требуется, увеличьте размер оперативной памяти, чтобы обеспечить его корректную работу. Он может занимать до 40 процентов размера Corpus (это весь набор индексированных каталогов и документов). Наверное, вы сейчас скажете: "Здорово, теперь на моем сайте есть даже поисковая система!" К сожалению, сервер индексов стал причиной возникновения некоторых угроз безопасности веб-сайтов IIS из-за ошибок в настройке. Например, запрос поиска в виде формы может передавать до 4 килобайт данных, но если объем запроса будет больше, то работа сервера индексов станет нестабильной. Все отправляемые запросы не должны превышать предельно допустимого значения (см. лекцию 11). Совет. Если свободное дисковое пространство на диске индексов подходит к концу (остается менее 3 Мб свободного места), фильтрация будет временно остановлена, и в журнале событий появится запись о переполнении диска.
Служба FTP – протокол передачи файлов
FTP представляет самый простой способ обмена файлами между удаленными компьютерами и используется для загрузки или отгрузки файлов на другой компьютер. Это стандартный протокол интернета, оптимизированный для передачи данных через сети TCP/IP. Для надежной передачи данных FTP устанавливает соединение клиент/сервер с использованием двух портов TCP на компьютере-клиенте и сервере. Первый порт называется FTР Control и обеспечивает начало сеанса и контроль ошибок; второй порт называется FTP Data и обеспечивает непосредственную передачу данных между клиентом и сервером. Служба FTP использует хорошо известный порт 21 для операций контроля и порт 20 для передачи данных. Клиентские порты TCP присваиваются динамически при создании сеанса. "Хорошо известные" номера портов зарезервированы организацией ICANN (Internet Corporation for Assigned Names and Numbers) для использования конечными точками приложения, которые устанавливают связь через протоколы TCP или UDP. Каждый тип приложения имеет свой собственный и, следовательно, "хорошо известный" номер порта. Когда приложение на одном клиенте устанавливает соединение с другим клиентом, оно указывает на конкретное приложение посредством номера порта. Известные порты лежат в диапазоне от 0 до 1023, зарегистрированные порты – с 1024 по 49 151, а оставшиеся порты, вплоть до 65 535, используются в качестве динамических или частных портов. Вы можете сменить номер порта, используемый любой службой IIS, включая SMTP и NNTP. Это делается из соображений безопасности в небольшой частной сети; однако большинство хакеров используют сканеры портов для нахождения открытых портов. Служба FTP позволяет пользователям загружать с сайта файлы, например, руководства по использованию товаров, сотрудникам отдела продаж работать с заказами или отчетами, находясь в отъезде или в пути. Однако за эти возможности можно заплатить немалую цену. Протокол FTP осуществляет передачу всех данных, включая имена пользователей и пароли, через сеть в открытом виде, что открывает доступ к локальной файловой системе любому пользователю в сети, если не обеспечена должная защита (право на локальный вход требуется каждому пользователю, подключающемуся к FTP-серверу). Совет. При смене значения контрольного порта FTP вы скроете свой сервер от большинства клиентов FTP в интернете. В этом случае сообщите новый номер порта только тем пользователям, которым предоставляется доступ к FTP-службе, например: ftp://www.ваш_сервер.com:1025.
Служба NNTP
IIS обеспечивает поддержку протокола NNTP (Network News Transport Protocol) – интернет-стандарта для чтения и публикации статей в группах новостей. Группы новостей представляют собой что-то вроде почтового ящика, доступного каждому пользователю. Статьи публикуются аналогично сообщениям электронной почты, отправляемым в почтовый ящик адресата. Общие группы новостей являются прекрасным способом предоставления общего доступа и обеспечения обмена информацией. Так как группы новостей можно защитить посредством шифрования SSL и разрешений NTFS, они представляют собой идеальный способ связи с определенными группами пользователей, например, с сотрудниками, поставщиками и клиентами, при наличии собственной группы новостей у каждой из групп пользователей. Для управления службой NNTP используется Internet Services Manager (Диспетчер служб интернета), как показано на рисунке.
 увеличить изображение
NNTP следует устанавливать только после настройки безопасности службы IIS. Для SSL-аутентификации клиентов установите сертификат для сервера IIS. При установке NNTP в папке Inetpub создается папка nntpfile, которая содержит вложенные папки и файлы, предназначенные для управления службой NNTP и группами новостей. Как и для FTP, расположите эти корневые папки на другом томе NTFS, чтобы обеспечить контроль доступа и достаточное количество пространства. Активные группы новостей предъявляют высокие требования к дисковому пространству. Для изменения расположения корневых папок откройте объект NNTP в Interent Services Manager (Диспетчер служб интернета) и щелкните на записи Virtual Directories (Виртуальные каталоги). В правой части окна в поле Newsgroup Subtree (Дерево группы новостей) отобразятся каталоги, используемые NNTP (см. рисунок).
 увеличить изображение
Дважды щелкните на каталоге Default (Каталог по умолчанию) для открытия окна Properties (Свойства) (см. рис. 10.6), после чего нажмите на кнопку Contents (Содержимое). Выберите том и каталог для использования службой NNTP. Обратитесь к разделу "Виртуальные каталоги" далее в этой лекции, чтобы узнать, как настроить ограничения на доступ к этим каталогам.
Служба SMTP (Simple Mail Transport Protocol)
SMTP (простой протокол передачи сообщений электронной почты) представляет собой основной протокол, используемый для передачи сообщений электронной почты через интернет. IIS обеспечивает его поддержку посредством службы SMTP, которая устанавливается в качестве дополнительного компонента. Однако не думайте, что это полнофункциональная почтовая система, как, например, Microsoft Exchange. Служба SMTP не поддерживает протоколы POP3 или IMAP, которые позволяют пользователям хранить сообщения в нескольких частных расположениях. Так как SMTP лишь отправляет электронную почту с одного сервера на другой, ни SMTP, ни IIS не могут обрабатывать входящую почту и помещать ее в почтовые ящики для чтения пользователями. Так зачем же устанавливать службу SMTP, если она не обеспечивает функциональность почтового ящика? Эта служба облегчает приложениям доступ к сервису электронной почты и может пригодиться, если вам понадобится простой почтовый SMTP-сервер. Важно. Windows 2000 устанавливает SMTP по умолчанию, когда сервер переходит в статус Domain Controller (Контроллер домена), так как SMTP является дополнительным транспортным методом, используемым для передачи информации между контроллерами доменов. Если контроллер домена не настроен непосредственно на использование SMTP, отключите службу SMTP, если она не используется еще где-нибудь.
Если сайт требует наличия SMTP, необходимо выполнить настройку параметров безопасности. Работа SMTP на сервере IIS делает его уязвимым к атакам на отказ в обслуживании, атакам с произвольным кодом, массовым рассылкам, программам прослушивания сети, перехватывающим сообщения при их маршрутизации с одного сервера SMTP на другой. Как и для FTP-сервера, настройте SMTP-сервер для обеспечения минимального количества необходимых служб.
Службы Simple TCP/IP
Simple TCP/IP Services (Простые службы TCP/IP) являются компонентом сетевых служб; они обеспечивают работу служб Character Generator (Генератор символов), Daytime (Время суток), Discard (Сброс), Echo (Эхо) и Quote of the Day (Квота дня). Этот компонент не нужен для IIS, однако многие администраторы устанавливают его, ошибочно полагая, что его используют службы, работающие с протоколами TCP/IP. Мы настоятельно рекомендуем не устанавливать этот компонент, так как уже выполнялись атаки на отказ в обслуживании, направленные на эти службы в Windows 2000. Допустим, что имеются программы, выполняющие по отношению к системам с работающей службой Echo обманные действия, например, реализацию постоянного отражения сообщений в прямом и обратном направлениях. Для проверки состояния службы Simple TCP/IP Services дважды щелкните на каждом подключении локальной сети, имеющемся в окне Network and Dial-up Connections (Сеть и удаленный доступ), и нажмите на кнопку Properties (Свойства) (см. рис. 10.14). Если в списке Components (Компоненты) содержится (или включен) компонент Simple TCP/IP Services, выберите его и нажмите на кнопку Uninstall (Удалить).
 Рис. 10.14. Подключение сервера настроено правильно, так как включены в работу только необходимые службы Службы IIS играют значительную роль в успехе сайта, однако следует включать в работу только самые необходимые службы. Каждая служба представляет собой потенциальную точку доступа для хакеров, поэтому компоненты нужно тщательно настроить, постоянно контролировать их работу, обновлять посредством установки специализированных надстроек безопасности.
Службы Windows Media
Службы Windows Media, по существу, не являются службами IIS, однако потоковая передача данных становится популярной веб-службой, поэтому скажем несколько слов о параметрах безопасности медиа-файлов. Если сайт содержит лишь несколько звуковых файлов, то можно использовать потоковое воспроизведение; однако если вниманию пользователей предлагаются веб-демонстрации или конференции, лучше всего использовать для их доставки сервер Windows Media. Компоненты Windows Media обеспечивают множество недоступных по отдельности дополнительных возможностей посредством потоковой передачи данных с IIS. Сервер Windows Media не только эффективнее веб-сервера использует системные ресурсы (процессорное время и полосу пропускания сети), но также обеспечивает две важные функции безопасности – Windows Media Security (Безопасность Windows Media) и Logging (Ведение журнала).
Сообщения
FTP-службы IIS позволяют отображать приветственное сообщение, настраиваемое на вкладке Messages (Сообщения), показанной на рисунке ниже. Используйте это сообщение для предупреждения об условиях и правилах, с которыми пользователи должны согласиться, прежде чем приступить к работе с сайтом. Например, текст сообщения может быть таким: "Это частная компьютерная система, предназначенная только для авторизованного использования. Несанкционированное использование ресурса влечет за собой уголовную ответственность. Доказательства незаконного использования, фиксируемые посредством мониторинга, могут быть использованы в судебных процессах по факту административного, уголовного нарушения или иного преступления. Использование данной системы подразумевает ваше согласие с условиями мониторинга в указанных целях". В сообщении укажите текст, подходящий для конкретного сайта (посоветуйтесь с квалифицированным специалистом).

Учетные записи безопасности
Для получения доступа к FTP-серверу пользователи должны осуществлять вход в систему. На вкладке Security Accounts имеются средства управления, позволяющие определить, кто имеет доступ к FTP-серверу, и кто является его администратором. Для предоставления общего доступа из интернета к файлам FTP-сервера выберите опцию Allow Anonymous Connection (Разрешить анонимное подключение) и укажите учетную запись, которая будет использоваться для анонимного доступа. На рисунке 10.3 показано, что учетной записью по умолчанию является IUSR_имя-компьютера. Эта же учетная запись используется для анонимного доступа из интернета к IIS-серверу. (Если служба FTP настроена на разрешение анонимного доступа, клиенты смогут входить в систему под именем "anonymous". Как правило, анонимные пользователи FTP вводят в качестве пароля свой адрес электронной почты. Internet Explorer осуществляет автоматический анонимный вход на любой FTP-сервер, разрешающий анонимное подключение.) Если используется одна и та же учетная запись для обеих служб, то любая "брешь" в службе FTP подвергает опасности и сервер IIS. Если только серверам FTP и IIS не требуется доступ к одним и тем же папкам (что не рекомендуется), создайте новую учетную запись для анонимных пользователей FTP. Используя раздельные учетные записи, разрешения NTFS смогут контролировать права доступа, и возникающие проблемы будут относиться только к FTP-папкам. Выбор опции Allow Only Anonymous Connections (Разрешить только анонимные подключения) позволит пользователям выполнять только анонимный вход. Это запретит использование имен и паролей через небезопасное FTP-подключение и предотвратит попытки хакеров получить доступ через учетную запись администратора. При выключении опции Allow Anonymous Connections при каждом запросе пользователя будет появляться диалоговое окно аутентификации для ввода имени и пароля.
 Рис. 10.3. Включите анонимные подключения, чтобы разрешить общий доступ к FTP-сайту из интернета, но используйте для этого другую учетную запись
Важно. Опция Allow Only Anonymous Connections не предотвратит попытки неосведомленных сотрудников использовать свои имена пользователей и пароли для входа на FTP-сервер. Убедитесь, что сотрудники компании знают о правилах входа на FTP-сервер и не будут подвергать свои пароли опасности перехвата.
Наделите отдельных пользователей или группы пользователей привилегиями операторов на общем уровне и уровне отдельных сайтов, добавив их в список операторов FTP-сайта. Операторы FTP-сайта представляют собой специальную группу, имеющую ограниченные полномочия администрирования на отдельных FTP-сайтах. Операторы администрируют параметры, влияющие только на подконтрольные им сайты. У них нет доступа к параметрам IIS, настройкам компьютера или к настройкам сети. Например, можно присвоить одному сотруднику из каждого отдела компании права оператора FTP-сайта соответствующего отдела организации. Оператор устанавливает разрешения на доступ к FTP-сайту, ведет журнал и настраивает сообщения, однако не может изменять настройки идентификации FTP-сайтов и анонимные имя пользователя и пароль, создавать виртуальные каталоги или изменять их пути. Учетные записи операторов не обязательно входят в группу администраторов Windows. Операторы сайтов могут относиться и к другим службам IIS, таким как WWW, NNTP и SMTP.
Важно. Если анонимные подключения не используются, следует усилить пароли посредством изменения политики безопасности Windows.
Управление группами новостей
NNTP-сайт по умолчанию содержит четыре объекта в панели Scope (Область). Newsgroups (Группы новостей). Перечень групп новостей, имеющихся на сервере NNTP.Expiration Policies (Политики истечения срока размещения). Перечень политик, управляющих автоматическим удалением статей группы новостей.Virtual Directories (Виртуальные каталоги). Перечень виртуальных каталогов, используемых службой NNTP для хранения статей группы новостей.Current Sessions (Текущие сеансы). Перечень удаленных клиентов NNTP и серверов, задействованных в отгрузке и загрузке статей.
После создания группы новостей дважды щелкните на ней для настройки параметров. Включение опции Read Only (Только чтение) запрещает всем пользователям, за исключением администратора NNTP или модератора (редактора, обязанностью которого является проверка статей), публиковать статьи в группе новостей. Если необходим жесткий контроль над статьями, публикуемыми в группе новостей (например, при публикации пресс-релизов компании), включите опцию Read Only (Только чтение) или Moderated (Модерируемая). В модерируемой группе новостей пользователи не смогут напрямую публиковать статьи. Статьи отправляются на адрес электронной почты модератора для проверки, и только после этого располагаются в группе новостей (см. рис. 10.11).
Установка компонентов IIS
Компоненты IIS устанавливаются при инсталляции IIS, или позднее, с помощью мастера установки и удаления программ, имеющегося в панели управления Windows. Отметьте компонент Internet Information Services, нажмите на кнопку Details (Детали) и выберите любые дополнительные службы IIS, которые необходимо установить (см. рисунок ниже). Совет. При установке сервера IIS инсталлируйте только те компоненты, которые обеспечивают работу нужных служб.
Каждая устанавливаемая служба представляет собой потенциальную точку входа на сервер, так как она обрабатывает запросы клиентов. Чем больше служб работает на сервере, тем больше точек входа доступно для реализации атак. Назначение веб-сайта и соответствующая ему политика безопасности определяют, какие дополнительные службы должны быть установлены и включены. Не следует устанавливать или включать ненужные службы. Сетевая политика доступа к службам определяет, какие службы IIS и при каких обстоятельствах разрешены и запрещены. В лекции 3 рассказывалось о минимальном наборе служб, необходимом для работы IIS. Единственными необходимыми службами IIS являются службы World Wide Web (WWW) Publishing Service и IIS Admin Service.
 увеличить изображение
Все разделы, используемые IIS-службами, должны иметь файловую систему NTFS для контроля доступа и использования защиты NTFS. Располагайте содержимое каждой поддерживаемой службы (WWW или FTP) в отдельном разделе либо, что предпочтительнее, на отдельном томе. Убедитесь, что сервер имеет ресурсы, необходимые для поддержки дополнительных служб с использованием настроек безопасности, так как их работа отрицательно скажется на общей производительности системы. Далее вы увидите, что некоторые конфигурации безопасности используют значительную долю ресурсов. Давайте начнем со службы протокола FTP (протокол передачи файлов).
Ведение журнала FTP-активности
В соответствии с политикой аудита безопасности необходимо осуществлять запись FTP-активности, поэтому отметьте опцию Enable Logging (Вести журнал). Для включения записи активности пользователей отметьте опцию Log Visits (Записывать в журнал посещения) на вкладке Home Directory (Домашний каталог) для каждого сайта FTP. Система обнаружения вторжений поддерживает мониторинг журналов, однако следует выяснить формат этих журналов. Параметры и настройки журнала должны быть такими же, как и для службы WWW.
Виртуальные каталоги
Виртуальный каталог NNTP является альтернативным физическим расположением групп новостей по умолчанию C:\Inetpub\nntpfile\root\имя_группы_новостей. Вы можете использовать общие папки; однако этого нельзя делать при условиях, о которых шла речь при рассмотрении FTP-сервера ранее в этой лекции. Преимущество использования виртуальных каталогов заключается в том, что статьи групп новостей располагаются на нескольких устройствах, что облегчает присвоение разрешений и повышает производительность ввода/вывода. Виртуальный каталог может содержать статьи отдельной группы новостей, а также статьи всей категории группы новостей. Например, с помощью узла Virtual Directories (Виртуальные каталоги) можно создать виртуальный каталог для хранения всех групп новостей, относящихся к внутренним уведомлениям, на одном дисковом накопителе и еще один виртуальный каталог для общих групп новостей – на другом. Безопасные подключения. На рисунке 10.3 показано окно Properties (Свойства) виртуального каталога, содержащее параметры доступа пользователей, параметры соединения и контроля за содержимым. Для защиты групп новостей от сетевого прослушивания включите использование безопасных соединений, чтобы клиенты в обязательном порядке подключались к службе NNTP через SSL для шифрования исходящих данных. Для выполнения этого действия понадобится сертификат веб-сервера. Ограничения доступа. При помощи параметра Allow Posting (Разрешить публикацию) можно разрешить или запретить публикацию в группе новостей новых статей, а опция Restrict newsgroup visibility (Ограничить видимость группы новостей) обеспечивает отображение группы новостей только тем пользователям, которые имеют разрешение на доступ к ней. Мы рекомендуем использование этой опции всеми частными группами новостей. Индексирование новостей. Пользователям групп новостей можно предложить возможность поиска определенного текста в статьях новостей. NNTP использует Microsoft Indexing Services (Службы индексирования Microsoft) для регулярного сканирования статей группы новостей и создания базы данных, в которой осуществляется поиск информации. Однако служба индексирования может отобразить неверную статью с важной информацией, если не настроить должным образом ее работу. Перед включением этой возможности изучите раздел "Сервер индексов Microsoft и служба индексирования содержимого". NNTP представляет собой одну из наиболее успешных технологий, применяемых в интернете, которая позволяет легко и быстро производить обмен информацией и не представляет угроз безопасности в отличие от службы FTP. Тем не менее, необходимо в обязательном порядке настроить разрешения NTFS, ограничить и обеспечить безопасность любых имеющихся групп новостей, доступ к которым разрешен только определенному кругу пользователей.
Вкладка Settings (Параметры)
На вкладке Settings (Параметры) можно настраивать максимальный объем новостных статей и рассылок, а также разрешать или запрещать другим серверам использование новостей, расположенных на NNTP-сервере. На рисунке 10.10 показана вкладка Settings с настройками предельного объема статей. Различие между опциями Limit post size (Ограничить размер статьи) и Limit connection size (Ограничить размер подключения) заключается в следующем. Предельным размером статьи является максимальный размер отдельной опубликованной статьи, а предельным размером подключения является полный объем всех статей, которые может опубликовать пользователь в течение одного подключения. Установите пределы, соответствующие типу групп новостей. Если у вас имеются управляемые группы новостей без определенного модератора, укажите домен модератора по умолчанию, чтобы статьи отправлялись на адрес имя_группы_новостей@домен_модератора_по_умолчанию.
 Рис. 10.10. Во вкладке Settings (Параметры) определяется способ публикации статьи на NNTP-сервере Опция Allow News Servers to Pull Articles from This News Server (Разрешить другим сайтам использовать статьи с этого сервера). Удаленные NNTP-серверы могут загружать локальные группы новостей и их статьи, после чего открывать к ним общий доступ. Данная опция включена, если группы новостей предназначены для общего пользования, и отключена при необходимости контроля статей в группе новостей. Опция Allow Control Messages (Разрешить контрольные сообщения). Клиенты для чтения новостей и другие серверы NNTP могут отправлять команды для создания и удаления групп новостей на NNTP-сервере либо для отмены ранее опубликованных статей. Отключите эту опцию, чтобы контрольные сообщения, получаемые сервером, только протоколировались, но не обрабатывались. Это позволит контролировать происходящее на сервере NNTP.
Windows Media и сетевые экраны
Windows Media, как правило, осуществляет потоковую передачу данных через UDP/IP по целому диапазону портов. Для предотвращения проблем, связанных с открытием столь большого числа портов, можно реализовать потоковую передачу через TCP/IP по одному порту (1755). Если политика безопасности не позволяет открывать порт, не являющийся широко используемым, Windows Media может осуществлять потоковую передачу через HTTP по порту 80. Следующая конфигурация сетевого экрана позволит пользователям интернета осуществлять доступ к серверу Windows Media, находящемуся под его защитой. Потоковая передача файлов Windows Media Technologies (ASF) через UDP: Вход: TCP через порт 1755 Вход: UDP через порт 1755 Выход: UDP в диапазоне портов 1024 – 5000 (присвоение портов осуществляется случайным образом в диапазоне 1024 – 5000, но открывается только необходимое количество портов).
Потоковая передача файлов Windows Media Technologies (ASF) через TCP: Вход/выход: TCP через порт 1755 Потоковая передача ASF через HTTP Вход/выход: TCP через порт 80
Порт "Выход" является портом, используемым Microsoft Windows Media Player или другими клиентами для связи с сервером.
Запуск и остановка служб
Вы можете запускать, останавливать, приостанавливать и возобновлять работу служб FTP, SMTP и NNTP с помощью Internet Services Manager (Диспетчер служб интернета), консоли Services Management (Управление службами), а также из командной строки при помощи сетевых команд, приведенных в табл. 10.1.
Таблица 10.1. Сетевые команды, предназначенные для управления службами IISДействиеКоманда NetСостояние подключения | Start | net start | Запускает службу и разрешает новые подключения. | | Stop | net stop | Выполняет немедленное закрытие службой всех подключений. | | Pause | net pause | FTP-служба запрещает создание новых подключений, но не отключает текущих пользователей. Служба SMTP запрещает установку новых подключений, но продолжает доставку и прием сообщений через имеющиеся соединения. Служба NNTP запрещает новые подключения, но продолжает передачу новостей через имеющиеся соединения. | | Resume | net continue | Возобновляет работу после паузы и разрешает новые подключения. |
Имейте в виду, что между командами Stop и Pause существует различие. Несмотря на то, что обе команды запрещают установку новых подключений, команда Pause не закрывает имеющиеся соединения; это делает команда Stop. Именами программ служб FTP, NNTP и SMTP являются msftpsvc, nntpsvc и smtpsvc соответственно. Таким образом, для остановки службы FTP наберите и выполните в командной строке следующую команду: net stop msftpsvc
Защита файлов сервера индексов при помощи параметров безопасности файлов NTFS
Сервер индексов полностью интегрирован с безопасностью IIS и Windows 2000 Server, поэтому можно контролировать доступ к индексированным документам, позволяя пользователям просматривать только разрешенные документы. Следовательно, для обеспечения общей безопасности системы очень важно расположить сервер индексов в разделе с файловой системой NTFS, как и все папки, предназначенные для индексирования. Ключевыми файлами сервера индексов, требующими контроля, являются следующие файлы. Файлы Internet Data Query (.idq). Определяют область поиска и ограничения на поиск, установленные на сервере индексов.Сценарии Index Data Administration (.ida). Файлы, аналогичные предыдущему типу; в них хранятся запросы администрирования.Шаблон расширения HTML (.htx). Шаблон, устанавливающий формат отображения пользователю результатов посредством преобразования данных запроса в файл HTML.Файлы форм запроса (.htm). Форма отправки запроса на поиск.Папки каталогов (.wci). Состоят из индексов содержимого и свойств, а также из других файлов, содержащих индексированные данные.
Безопасность IIS
AccessControl
Установите значение AccessControl, равное 1; в противном случае каждый раз при создании подсайта любой пользователь получит права автора по отношению к этому подсайту, пока параметры доступа не будут настроены вручную.
ЗначениеГлобальноДля виртуального сервераДля подсайта | 1 | Да | Да | Нет |
ActivePerl
Технология ActivePerl разработана фирмой ActiveState и доступна бесплатно на сайте http://www.activeperl.com/. Perl является популярным языком программирования, в особенности среди разработчиков для платформы UNIX. Windows-версия ActivePerl обеспечивает дополнительные возможности платформы IIS – PerlScript и Perl для ISAPI. Рекомендуется использовать ActivePerl при перемещении веб-сайта с сервера UNIX или по желанию разработчиков. ASP взаимодействует с IIS через ISAPI и ASP DLL, а Perl использует интерпретатор – комбинированный исполняемый файл Perl.exe. Perl.exe работает как независимое приложение, используя дополнительные ресурсы сервера при каждом его вызове веб-сервером для обработки запроса, что снижает эффективность. При возникновении ошибки внутри сценария веб-сервер будет ожидать истечения срока запроса, так как он не может контролировать Perl. А сценарий CGI тем временем продолжит использование системных ресурсов и в конечном итоге вызовет сбой в работе сервера (сам Perl не влияет на работу веб-сервера). В отличие от большинства версий Perl PerlScript позволяет внедрять теги сценариев непосредственно в веб-страницу, аналогично VBScript в страницах ASP. При установке ActivePerl выберите инсталляцию Perl для ISAPI, чтобы ActivePerl выполнялось как приложение ISAPI, аналогично ASP. Совет. Ознакомьтесь с бесплатными безопасными сценариями Perl, которые обеспечивают нужную функциональность и предотвращают возникновение пробелов в безопасности, на веб-сайте http://superscripts.com/resources.
Активные страницы сервера (ASP)
Страницей ASP является HTML-страница, содержащая один или более сценариев, обрабатываемых IIS перед передачей пользователю. ASP взаимодействует с IIS через ISAPI и asp.dll (динамически подсоединяемая библиотека ASP), которые являются сопровождающими приложениями в том же пространстве памяти, что и IIS. Это обеспечивает малое время реагирования, так как asp.dll имеет прямой доступ к значениям памяти IIS. Asp.dll выполняется с привилегиями учетной записи IWAM_имя-компьютера. IIS настроен на использование ASP по умолчанию, поэтому для создания динамического содержимого не нужно устанавливать дополнительное программное обеспечение. Совет. ASP также является сокращением от Application Service Providers (Поставщики услуг приложений). Они обеспечивают управление компьютерными услугами из удаленных центров через интернет или частную сеть.
ASP вызывает компоненты Component Object Model (COM) для обеспечения лучшей функциональности с помощью обработки ресурсов серверной части, однако эта возможность представляет угрозу безопасности. Следует отключить или удалить все ненужные для работы сайта компоненты COM, например, File System Object (Объект файловой системы), предоставляющий веб-приложениям доступ к жестким дискам. Для отключения File System Object выполните следующую команду: regsvr32 scrrun.dll /u
Для получения более подробной информации о приложениях COM используйте апплет Component Services (Службы компонентов) из папки Administrative Tools (Администрирование). Совет. Технология COM в интернете известна как ActiveX – программная архитектура, позволяющая создавать приложения из программных компонентов многоразового использования. Метод создания и использования компонентов формирует базу для высокоуровневых программных служб, таких как OLE (сокр. от object linking and embedding – связывание и внедрение объектов), обеспечивающих межпрограммное использование сценариев и передачу данных.
AllowExecutableScripts
Установите значение AllowExecutableScripts на нуль, если не нужно помечать отдельные файлы как исполняемые.
ЗначениеГлобальноДля виртуального сервераДля подсайта | 0 | Да | Да | Нет |
Безопасность приложения
IIS предоставляет три возможных процесса для выполнения приложения. Процесс, используемый веб-службами (Inetinfo.exe).Объединенный процесс, являющийся отдельным вхождением DLLHost.exe.Процесс, отдельный от веб-служб (DLLHost.exe).
Они обеспечивают различные уровни защиты. При возникновении ошибки в приложении процесс, в котором оно выполняется, перестает отвечать на запросы. По умолчанию inetinfo.exe выполняется в своем собственном процессе, а другие приложения – в одном и том же объединенном процессе. Необходимо найти оптимальное соотношение между производительностью и уровнем защиты приложения. Приложения, выполняющиеся в веб-службах, обрабатывают результат с большей производительностью, но и с большей вероятностью того, что неправильно функционирующее приложение сделает недоступными веб-службы. Следовательно, inetinfo.exe выполняется в собственном процессе, жизненно важные приложения – в своих процессах (высокий уровень безопасности), остальные приложения – в объединенном процессе (средний уровень безопасности).
Библиотеки DLL пакета FPSE
FrontPage использует все возможности FPSE. Когда автор или администратор выполняет операцию при помощи FrontPage, он подключается к серверным расширениям, используя протокол удаленного вызова процедур RPC, лежащего в основе HTTP и HTML. Запрос POST отправляется из клиента FrontPage одной из трех библиотек DLL FPSE. Запросы на действия по администрированию передаются библиотеке Admin.dll.Запросы на действия по авторству передаются библиотеке Author.dll.Запросы на действия по просмотру передаются библиотеке Shtml.dll.
Когда веб-браузер или FrontPage-расширенный веб-сайт запрашивает страницу, требующую FPSE, например, форму отправки данных поиска, он отправляет запрос POST программе просмотра Shtml.dll. После получения службой IIS запроса для FPSE она осуществляет вход в систему и имитирует пользователя, после чего запрос передается напрямую библиотеке Admin.dll, Author.dll или Shtml.dll. Далее библиотека DLL FPSE сверяет разрешения имитируемого администратора, автора или посетителя со списком ACL в корневой папке веб-сайта или страницы. При положительном результате проверки запрос обрабатывается; в противном случае клиенту FrontPage или браузеру передается сообщение "Доступ запрещен".
ClientVerCutoff
Устанавливает самую раннюю версию клиента FrontPage, подключаемую к серверу.
ЗначениеГлобальноДля виртуального сервераДля подсайта | Любая версия | Нет | Нет | Да |
Директивы вставок серверной части (SSI)
Серверная часть представляет собой ограниченный тип приложения CGI. На самом деле ASP распознает элементы SSI просто в виде инструкции при обработке файла. На странице ASP можно использовать инструкцию #include для замещения этой инструкции содержимым другого файла. Следующая строка кода обеспечивает включение файла postalrates.inc в нужное место:
Для обработки директивы SSI #include используется библиотека ssinc.dll, а затем asp.dll интерпретирует всю страницу. Это очень удобно при повторном использовании нескольких строк кода на различных страницах. Microsoft рекомендует применять вставку файлов для облегчения работы с ним, так как в этом случае для изменения кода на нескольких страницах требуется изменение только одной. Однако при открытии файла вставки непосредственно в браузере злоумышленник получит доступ к исходному коду, так как файлы вставок не обрабатываются ASP. Для предотвращения этого следует либо связать файлы вставок с расширением .inc с ASP, либо переименовать их, указав расширения .asp, чтобы обеспечить выполнение всего кода сценариев и возврат в веб-браузер только результатов обработки. (Обратитесь к разделу "Совместимость с приложением" в этой лекции.) IIS поддерживает пять директив SSI: #config #echo #fsize #flastmod #exec
Нельзя применять эти директивы на странице ASP. Вместо этого используйте одно из специальных расширений HTML, по умолчанию настроенных на употребление директив SSI в IIS: .stm, .shtm и .shtml. На защищаемом сервере директива #exec должна быть отключена, так как она позволяет выполнять программы командной строки или CGI в контексте веб-сервера в отдельном пространстве памяти. IIS по умолчанию отключает эту директиву, но следует убедиться, что следующий параметр реестра установлен на нуль (или отсутствует): HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\ Parameters\SSIEnableCmdDirective.
Дополнительные методы обеспечения безопасности веб-содержимого
Некоторые из динамических элементов веб-содержимого могут быть секретными или разрешенными для доступа только тем пользователям, которые зарегистрировались для использования предоставляемой услуги. Можно контролировать доступ к таким страницам посредством создания списков контроля доступа (ACL) и учетных записей Windows. Но такой подход не применишь на сайте, связанном с электронной коммерцией, так как у него будут тысячи пользователей. Посредством использования сценариев легко осуществляется контроль доступа к страницам без создания учетных записей пользователей Windows.
Файловая система с шифрованием
Файловая система с шифрованием (EFS) обеспечивает внутреннее шифрование файлов, используемое файловой системой Windows 2000 и позволяющее шифровать файлы и папки в томах NTFS. EFS включается для документов в Windows 2000 посредством дополнительного файлового атрибута. Для шифрования содержимого папки перейдите к папке в Windows Explorer (Проводник Windows), щелкните правой кнопкой мыши на папке и выберите команду Properties (Свойства), чтобы открыть соответствующее окно (см. рис. 11.9).
 Рис. 11.9. Обеспечьте шифрование содержимого папки, включив соответствующую опцию в окне Proрerties (Свойства) Нажмите на кнопку Advanced (Дополнительно) и отметьте опцию Encrypt Contents To Secure Data (Шифровать содержимое для защиты данных) (см. рис. 11.10). Нажмите на OK, чтобы вернуться в Windows Explorer. После обеспечения шифрования папки можно работать с ней и находящимися в ней файлами, как с любыми другими файлами и папками, поскольку процесс шифрования прозрачен для пользователя. Тем не менее, любой злоумышленник, который попытается открыть, скопировать, переместить или переименовать зашифрованные файлы, получит сообщение об отказе в доступе.
 Рис. 11.10. Диалоговое окно Advanced Atributes (Дополнительные атрибуты) позволяет включить шифрование файла или папки Предупреждение. EFS не сможет шифровать файлы с атрибутом System (Системный). Не пытайтесь преодолеть эту меру защиты для шифрования файлов в системной папке. Секретные ключи, необходимые для расшифровки, недоступны при загрузке системы, поэтому если системные файлы будут зашифрованы, система окажется в нерабочем состоянии.
Итак, каким же образом используется EFS для защиты секретного содержимого на веб-сайте? Наиболее часто EFS применяется в корпоративных сетях, в которых каждый пользователь имеет свою собственную веб-папку для публикации документов. Создав зашифрованную подпапку, каждый пользователь имеет доступ к частным документам через интрасеть, но остальным пользователям эти документы недоступны, даже если на сайте включена анонимная аутентификация. Причина в том, что шифруемые EFS файлы являются частными файлами, и к ним имеет доступ только пользователь, зашифровавший их. В качестве метода аутентификации используется встроенная аутентификация Windows или смешанная аутентификация в зависимости от настроек веб-сайта. Важно. При использовании EFS следует шифровать папки, а не отдельные файлы, так как приложения создают временные файлы в тех же папках, где находятся исходные, особенно в процессе редактирования. При использовании шифрования на уровне папки временные файлы не будут сохраняться в виде открытого текста. По этой же причине следует применить шифрование к папке Temp, расположенной по адресу %SystemRoot%\TEMP.
Фильтрация вводимых данных
Вводимыми данными называются данные, передаваемые сценариям для обработки; они обычно поступают из веб-формы, из базы данных или из другого источника. Фильтрация ввода работает посредством удаления специальных символов из вводимой информации, которые позволяют генерировать сценарий в потоке данных HTML. Ниже приведены специальные символы: < > " ' % ; ) ( & + -
Конкретная ситуация может потребовать фильтрацию дополнительных символов, помимо указанных.
Фильтры ISAPI
Фильтры ISAPI отличаются от приложений тем, что они управляются событиями веб-сервера, а не запросами клиентов. Фильтр ISAPI закрепляется в системе и отслеживает определенные события при попытках клиентов открыть страницу на сервере. Приложение фильтра располагается между подключением к клиенту и серверу HTTP, что позволяет контролировать обмен данными между IIS и клиентом, а также расширять функциональные возможности сервера посредством реализации дополнительных журналов HTTP и шифрования. Работа фильтров ISAPI основывается на уведомлениях об этапах, которые проходит каждый запрос, передаваемый сервером IIS фильтру ISAPI. Каждое уведомление поддерживает собственный тип данных, соответствующий определенному этапу процедуры запроса. При приеме уведомления от IIS фильтр ISAPI управляет данными уведомления и способом дальнейшей обработки запроса IIS. Программа URLScan, о которой пойдет речь ниже, является примером использования фильтров ISAPI для повышения уровня безопасности IIS. Важно. Если вы заключаете контракт со сторонними разработчиками для построения интранет-сайта или веб-сайта, или если на сервере используются готовые библиотеки ISAPI DLL, обратитесь к заметке "Проверки сторонних программ" в лекции 9.
Кодировка HTML
IIS передает документ HTML веб-браузеру в виде потока байтов, а браузер воспринимает их как последовательность символов. Для правильного отображения этого потока все HTML-страницы и страницы с активным содержимым должны содержать дополнительную информацию о кодировке символов. Если в страницах не будет указана используемая кодировка, веб-браузер отформатирует их некорректно, и на странице может выполниться вредоносный код. Так как наборы символов имеют несколько представлений, применяемых в виде тегов HTML (например, "<" или ">"), фильтр может исключать не все вхождения символов, в результате чего вредоносный код останется незамеченным. При фильтрации вводимых пользователем данных следует указать набор символов, используемый на веб-страницах, для обеспечения фильтрации специальных символов. Необходимо установить кодировку для каждой страницы и разрешить передачу заведомо безопасных символов, а не исключать небезопасные символы. Так как постоянно разрабатываются новые браузеры и языки сценариев, нельзя быть на сто процентов уверенным в том, что учтены все возможные комбинации символов, представляющие опасность для системы. Чтобы установить кодировку символов на веб-странице, необходимо включить в код страницы тег МЕТА, который должен стоять как можно выше в коде страницы, по возможности сразу после тега
. В этом примере веб-браузер будет использовать для отображения страницы кодировку ISO-8859-1:
Safer HTML
Широко используемыми в интернете кодировками являются: ISO-8859-1, называемая Latin-1 (данная кодировка подходит для большинства языков с латинским алфавитом), ISO-8859-5, поддерживающая кириллицу, SHIFT_JIS или EUC_JP (представляют японский язык). Многие HTML-редакторы автоматически добавляют данный тег, полагая, что это очередное ненужное добавление, сделанное редактором. При изменении этого тега следует принимать во внимание территориальное расположение страниц.
Кодировка выходных данных для специальных символов
Все входные данные нужно кодировать при записи в виде HTML. Этот подход частично эффективен для тех данных, которые нельзя быстро проверить при вводе. Представьте себе, что в базе данных отсутствует контроль над процессом ввода информации. Недовольный зарплатой сотрудник организации может ввести вредоносный код в поле базы данных, который отобразится при вызове из сценария. Большая часть языков сценариев содержит функцию кодировки, например, методы объекта сервера ASP HTMLEncode и URLEncode. Разработчики должны помнить об этой форме кодировки серверной части и применять ее в тех местах, где это требуется. Такой подход аналогичен фильтрации за исключением того, что здесь кодируются данные, записываемые для отправки клиенту. Более подробная информация об обработке вводимых данных расположена на сайте CERT по адресу www.cert.org/tech_tips/malicious_code_mitigation.html.
Кодировщик сценариев
Одним из недостатков использования сценариев является то, что любые алгоритмы и код собственной разработки видны любому пользователю, которому разрешено редактировать файл, так как они хранятся в виде обычного текста. Этот недостаток в защите интеллектуальной собственности очень имеет большое значение, если вы предоставляете услуги веб-разработки другим пользователям или используете стороннюю помощь в поддержке сайта, так как у посторонних пользователей появляется возможность копирования кода. Кодировщик сценариев представляет собой простую утилиту командной строки, которую можно бесплатно загрузить с сайта http://msdn.microsoft.com/scripting/. Эта утилита позволяет кодировать сценарии серверной части, чтобы их исходный код был недоступен для просмотра или изменения. После того как сценарий закодирован, изменение любой части результирующего файла сделает его недействительным, что обеспечит его целостность. Клиенты, для которых разработан код, не смогут его изменять, что значительно упрощает решение проблем, связанных с ошибками, так как в данном случае вы будете уверены в том, что код не был изменен. Данная мера не предотвратит доступ хакера к коду, однако определенно нарушит планы большинства не слишком осведомленных пользователей. Сразу после отладки и тестирования сценария примените данную утилиту для кодирования окончательного сценария. Она кодирует только исходный код сценария, а остальное содержимое файла, представленное открытым текстом, не кодируется. Кодировщик сценариев использует маркеры в коде сценариев для определения того, с какого места необходимо начать кодирование. Следующий пример кода на языке VBScript демонстрирует использование маркера для кодирования всего кода, кроме сообщения об авторских правах:
При выполнении кодировщика сценариев весь текст сценария до стартового маркера не кодируется, а данные, находящиеся после маркера, будут закодированы. По завершении процесса кодирования указатель языка в теге
Пользователи будут перенаправляться на страницу Logoff.asp после пяти минут отсутствия каких-либо действий.Удалять из кода все комментарии. Хорошие разработчики всегда качественно комментируют создаваемый ими код, однако эти комментарии необходимо удалять на страницах, загружаемых на веб-сервер, потому что они могут стать подсказками для хакеров.Использовать компонент COM+ для хранения информации о подключениях к базе данных. Многие разработчики сохраняют информацию о подключениях базы данных в файле global.asa. Эта информация содержит имя сервера, имя базы данных, имя пользователя и пароль базы данных, поэтому она должна быть защищена. Обратитесь к разделу "Parsing the COM+ Constructor String" по адресу http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnduwon/html/d5bizdev.asp для получения дополнительных сведений.Использовать сохраненные процедуры для доступа к базе данных. Сохраненные процедуры обеспечивают больший уровень контроля над данными и производительностью работы SQL-выражений.
Перехват ошибок
Обычно веб-разработчики ограничены во времени и, как правило, ставят на первое место внешний вид, удобство работы и функциональность, а о безопасности думают далеко не в первую, если не в последнюю, очередь. В лекции 9 говорилось о том, что такой подход недопустим при разработке содержимого для интернета. Разработка и тестирование должны проводиться в автономном режиме для успешного устранения всех угроз безопасности создаваемых сценариев, а это возможно при таком выполнении сценария, когда семантические ошибки программирования выявляются сами по себе. Синтаксические ошибки находить легко, так как программный компилятор или интерпретатор прерывает выполнение кода и обозначает строку с синтаксической ошибкой. Плохо обученный разработчик исправит свои синтаксические ошибки, после чего отгрузит новый код, уверенный в отсутствии ошибок. Однако семантические ошибки или ошибки времени выполнения могут возникнуть во время непосредственного выполнения программы, что позволяет выявить исходный код любым пользователем, запустившим сценарий. Например, при добавлении шестого товара в корзину покупок электронного магазина произойдет семантическая ошибка, если максимальное число товаров для покупки, установленное в программе, равно пяти. Необходимо, чтобы код разрабатывался программистами с учетом аспектов безопасности. При написании безопасных программ следует проверять наличие файла перед его открытием, а также правильность вводимых значений. Код должен тестироваться посредством ввода различных значений, среди которых есть корректные значения, значения, являющиеся пограничными (т.е. находящиеся на границе между допустимыми и недопустимыми значениями), а также некорректные значения. Такое тестирование предотвратит большую часть ошибок, возникающих из-за вводимых пользователем данных. Поскольку идеально написанного кода не существует, необходимо обеспечить поддержку активным содержимым непредвиденных ошибок и отображение соответствующих уведомлений об их возникновении. По умолчанию файл 500-100.asp обрабатывает все ошибки, возникающие при компиляции или запуске файлов .asp.
При возникновении ошибки ASP IIS возвращает файл 500-100.asp с информацией о ней, например, номер строки, в которой произошла ошибка, и ее описание.
Следующий код VBScript фиксирует любые возникающие ASP-ошибки в файле журнала, а также выводит сообщение для пользователя. Эти действия предотвращают отображение исходного кода страницы, вызвавшей ошибку. Этот код можно модифицировать на передачу информации об ошибке по электронной почте веб-мастеру.
Листинг 11.1.
(html, txt)
Обработка ошибок устанавливается на главном уровне, веб-уровне или уровне каталога посредством изменения свойств сообщений об ошибках HTTP, передаваемых клиентам при их возникновении.
Для настройки IIS на отображение сообщения об ошибке откройте консоль Internet Services Manager (Диспетчер служб интернета) и щелкните правой кнопкой мыши на нужном сервере или веб-сайте. Выберите команду Properties (Свойства), откройте вкладку Custom Errors (Другие ошибки) и прокрутите вниз список сообщений об ошибках, чтобы отобразить HTTP Error 500;100 (см. рис. 11.11).
Нажмите на кнопку Edit Properties (Изменить параметры) для изменения параметров сообщения об ошибке, указав созданную или измененную страницу с текстом уведомления (см. рис. 11.12).
Совет. Убедитесь, что файл обработки ошибок не содержит синтаксических ошибок или ошибок времени выполнения; если в коде присутствуют ошибки, они отобразятся в веб-браузере. Строка 5 приведенного выше кода On Error Resume Next обеспечивает выполнение файла без возникновения ошибок.
 Рис. 11.11. Измененные страницы с информацией об ошибках предоставляют вам и вашим пользователям полезные данные
 Рис. 11.12. Если типом выводимых данных является URL, то этот URL должен существовать на локальном сервере
'Зафиксировать ошибку в файле журнала. 'Изменить путь к файлу журнала для конкретной системы. 'Нужно присвоить учетной записи IUSR_имя-компьютера разрешение на 'запись и изменение файла. strErrorLog = "D:\temp\custom_error.log" set objFSO = Server.CreateObject("Scripting.FileSystemObject") Set objTStream = objFSO.OpenTextFile(strErrorLog, 8, True) '8 = ForAppending If Err.Number = 0 Then objTStream.WriteLine strErrorMsg & vbCrlf End If If Err.Number = 0 Then objTStream.Close blnLogFail = False Else blnLogFail = True End If 'Вывод сообщения в веб-браузере. %>
Error К сожалению, запрошенная вами страница содержит ошибку и не может быть отображена. <% 'Добавить ссылки для возврата на предыдущую или домашнюю страницу. strReferrer = Request.ServerVariables("HTTP_REFERER") If Len(strReferrer) Then Response.Write "Вернуться на предыдущую страницу End IF Response.Write "Возврат на домашнюю страницу %> Пожалуйста, обратитесь к веб-мастеру для выяснения причин возникновения данной проблемы
Листинг 11.1.
Обработка ошибок устанавливается на главном уровне, веб-уровне или уровне каталога посредством изменения свойств сообщений об ошибках HTTP, передаваемых клиентам при их возникновении.
Для настройки IIS на отображение сообщения об ошибке откройте консоль Internet Services Manager (Диспетчер служб интернета) и щелкните правой кнопкой мыши на нужном сервере или веб-сайте. Выберите команду Properties (Свойства), откройте вкладку Custom Errors (Другие ошибки) и прокрутите вниз список сообщений об ошибках, чтобы отобразить HTTP Error 500;100 (см.
рис. 11.11).
Нажмите на кнопку Edit Properties (Изменить параметры) для изменения параметров сообщения об ошибке, указав созданную или измененную страницу с текстом уведомления (см. рис. 11.12).
Совет. Убедитесь, что файл обработки ошибок не содержит синтаксических ошибок или ошибок времени выполнения; если в коде присутствуют ошибки, они отобразятся в веб-браузере. Строка 5 приведенного выше кода On Error Resume Next обеспечивает выполнение файла без возникновения ошибок.
 Рис. 11.11. Измененные страницы с информацией об ошибках предоставляют вам и вашим пользователям полезные данные
 Рис. 11.12. Если типом выводимых данных является URL, то этот URL должен существовать на локальном сервере
Переменные конфигурации FPSE
Иногда информация, предоставляемая средствами командной строки, является очень скудной. Для проверки или настройки переменных конфигурации расширения сервера найдите их в реестре или в файле Service.cnf. Переменные устанавливаются на одном из следующих уровней. Глобальные переменные. Применяются ко всем виртуальным серверам и подсайтам на компьютере сервера и устанавливаются в реестре по адресу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Shared Tools\Web server Extensions\All Ports.Переменные виртуального сервера. Применяются к одному виртуальному серверу и устанавливаются в реестре по адресу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\ Web server Extensions\Ports\<Номер порта>.Переменные веб-сайтов и подсайтов. Устанавливаются посредством изменения текстового файла _vti_pvt/Service.cnf в корневом веб-сайте или подсайте.
Если переменная никогда не устанавливалась, она может не иметь записи в реестре. Конфликты настроек разрешаются в следующем порядке: переменные конфигурации подсайтов имеют высший приоритет, переменные конфигурации виртуальных серверов – средний приоритет, а переменные глобальной конфигурации – низший. Наиболее важные переменные описываются в последующих разделах. При использовании FPSE не требуется доступ с открытием файлов для общего пользования на компьютере веб-сервера, а пользователям не нужен ни FTP, ни Telnet для управления своими веб-страницами, так как управление осуществляется через HTTP. Тем не менее, внимательно отслеживайте все уведомления безопасности Microsoft, чтобы быть в курсе появления новых уязвимых мест. Программа FrontPage 2002 Server Extensions улучшена по сравнению с предыдущими версиями, но вам следует ознакомиться с онлайновой справкой и разобраться в том, как управлять этими расширениями.
Подписывание кода
Java-апплеты или элементы ActiveX повышают уровень функциональности сайта, реализовывая ниспадающие меню или бегущую строку. Так как пользователям интернета известны уязвимые места таких апплетов, то после их разработки и тестирования нужно убедить посетителей в том, что содержимому сайта можно доверять, и что он безопасен. Многие сетевые экраны настроены на блокирование апплетов без доверия, а политики безопасности предусматривают запрет установки и выполнения сторонних апплетов на компьютерах сети. Самым простым способом убедиться в безопасности апплета или макроса является подпись объекта при помощи цифрового сертификата подписи кода. Сертификат идентифицирует организацию и выпускается бюро сертификатов только после того, как оно подтвердит наличие организации и ее сферу деятельности. Примером бюро сертификатов является компания VeriSign. Сертификаты для подписывания кода (в VeriSign они называются цифровыми идентификаторами) позволят разработчикам ставить цифровую подпись на программное обеспечение и макросы для обеспечения безопасности их доставки через интернет. Любой пользователь, загрузивший подписанный цифровым сертификатом элемент ActiveX, Java-апплет, динамически подсоединяемую библиотеку, файлы .cab или .jar, может быть уверен в том, что загружаемый код действительно поступает от вас, а также в том, что он не был изменен или поврежден с момента создания и подписи. Подписывание программ выступает в роли упаковки, в которую "заворачивается" программное обеспечение, так как в случае изменения программы цифровая подпись станет недействительной аналогично тому, как поврежденная пленка на запакованных продуктах предупреждает потребителя о том, что с товаром что-то произошло. К сожалению, необходимо использовать различные сертификаты для подписи кода от двух основных поставщиков активного содержимого – Microsoft и Netscape. Технология Microsoft Authenticode позволяет ставить цифровую подпись на файлах .exe, .cab, .dll и .ocx; средства Netscape Object Signing позволяют заверять цифровой подписью Java-апплеты, сценарии JavaScript, надстройки и любые файлы JAR. Authenticode заверяет программы, предназначенные только для браузеров Microsoft Internet Explorer, а сертификаты Object Signing действительны только для браузеров Netscape. Вам понадобятся дополнительные сертификаты для подписи макросов для Office 2000/XP и объектов VBA, а также содержимого, созданного с помощью Macromedia Director Shockwave Studio или Macromedia Flash. Многоцелевые сертификаты для подписывания программ можно получить, например, от бюро сертификатов Thawte по адресу http://www.thawte.com. Эти сертификаты используются несколькими приложениями, поэтому не нужно приобретать отдельный сертификат для каждого подписываемого приложения.
Подсайты
FPSE позволяет создавать отдельные подсайты. Подсайт представляет собой законченный FrontPage-расширенный веб-сайт, который можно создать на любом уровне структуры содержимого, включая уровень, находящийся под другим подсайтом. Несмотря на то, что данные объекты при доступе через веб-веб-браузер выглядят как обычные подпапки, их можно полностью отделить от родительского веб-сайта. Если сайт содержит раздельные области содержимого, управление которыми осуществляется различными людьми, и нужно запретить авторам доступ ко всему содержимому сайта, используйте раздельные подсайты для сегрегации данных. Это позволит структуре содержимого веб-сайта соответствовать структуре предприятия; например, реализовывать для различных отделов управление только собственными областями данных на сайте. Так как каждый подсайт имеет свои настройки безопасности, безопасность может быть настроена на достаточно высоком уровне детализации параметров защиты. Например, автору FrontPage-расширенного веб-сайта не должно автоматически присваиваться разрешение на редактирование любых подсайтов. Так как виртуальный сервер имеет свои собственные параметры безопасности и свой собственный список пользователей, создание виртуального сервера является способом ограничения доступа к веб-содержимому. Дополнительным преимуществом виртуальных серверов и подсайтов является потенциально более высокая производительность, так как время, необходимое для пересчета гиперссылок, прямо пропорционально числу и размеру документов, хранимых на одном веб-сервере. Совет. Когда администратор устанавливает списки ACL для FrontPage-расширенного веб-сайта с помощью команды Permissions клиента, FrontPage выводит список учетных записей сервера по умолчанию. Можно создать ограниченный список пользователей и групп для каждого веб-сайта, расширенного при помощи FrontPage. Это предотвратит отображение полного списка учетных записей Windows. Обратитесь к документации FPSE и выясните, как это сделать.
PrivateBrowsable
Чтобы запретить посетителям сайта просматривать каталог _private, установите переменную PrivateBrowsable на нуль. После установки этот параметр будет применяться ко всем создаваемым веб-страницам. Он не оказывает влияния на веб-страницы, созданные перед установкой данного параметра.
ЗначениеГлобальноДля виртуального сервераДля подсайта | 0 | Да | Да | Нет |
ПРОБЛЕМА
Иван, молодой разработчик, работающий над новым сайтом электронной коммерции, создает сценарии ASP для подключения веб-сайта к базе данных Microsoft SQL Server, содержащей информацию о клиентах, т.е. их имена, адреса, заказы и т.д. В понедельник утром Иван заявляет, что немедленно увольняется из компании и начинает новую карьеру. Время, отведенное на разработку сайта, неумолимо истекает, поэтому необходимо привлечь на место Ивана другого сотрудника. Вас устраивало качество выполнения Иваном своей работы, однако нужно удостовериться в том, что ее можно использовать. Первым делом запретите Ивану доступ к файлам ASP и всей сети организации. Проинформируйте сетевого администратора о том, что учетная запись Windows, принадлежащая Ивану, должна быть удалена. Это запретит бывшему сотруднику доступ к сети. В дополнение к этому все члены команды разработки должны сменить свои пароли при следующем входе в систему. Это мера предосторожности необходима на тот случай, если Иван знает пароли других разработчиков компании. Так как Иван имел доступ к базе данных SQL Server, он знает имя пользователя и пароль доступа, используемый страницами ASP для открытия соединения. У него могла быть и своя собственная учетная запись SQL Server с повышенными привилегиями, позволявшими ему проводить работу по разработке. Проинформируйте администратора базы данных о том, что учетная запись Ивана в базе данных должна быть удалена, а также об изменении пароля, используемого страницами ASP. Кроме этого, необходимо сменить остальные системные пароли, которые мог знать Иван. Следующая задача состоит в том, чтобы провести обзор всей выполненной Иваном работы. Несмотря на то, что написанный им код хорошо закомментирован, нужно просмотреть каждую строку и выяснить следующее. Каждая страница содержит в начале строку, устанавливающую кодировку.Все данные, вводимые пользователем в формы, или данные из элементов cookie проверяются на наличие запрещенных символов.Все данные, получаемые из базы данных для отображения на веб-странице, подвергаются кодировке.В коде отсутствует опасный или вредоносный код, например, ненужный вызов почтового сервера.В коде не используются системные пароли, доступ к ним осуществляется с помощью компонента COM+.Все вызовы базы данных выполняются посредством сохраненных процедур.
После того как код Ивана пройдет эту проверку, протестируйте его на сервере разработки для выявления синтаксических или семантических ошибок. Проверка должна включать в себя передачу данных сценариям (не только корректных значений, но и величин, превышающих максимально допустимые значения или соответствующих граничным условиям). Например, проверьте, каким образом осуществляется поддержка заказа на сумму, равную точно $500, если максимально разрешенной суммой покупки является $500. Хотя Иван мог и вовсе не включать в код ненужные или вредоносные фрагменты, процедура проверки необходима, так как Иван осуществлял активный доступ к вашей сети и ее ресурсам.
Программное обеспечение для контроля над исходными файлами
В программах контроля над исходными файлами используется система приписки и отписки файлов, аналогичная системе выдачи и приема книг в библиотеке. Если файл занят пользователем, то его больше никто не может использовать или редактировать, пока он не будет освобожден. Если файл не приписан для редактирования, его никто не сможет изменить. В параметрах веб-приложения обеспечьте сохранение всех файлов на сервере разработки. Тогда пользователь сможет загружать нужный файл на свой компьютер, редактировать и тестировать его, после чего отгружать обратно на сервер. После одобрения внесенных изменений отредактированный файл можно отгружать на работающий сервер. Программное обеспечение, предназначенное для контроля над исходными файлами, можно интегрировать с IIS, если установлены серверные расширения FrontPage Server Extensions (FPSE). FPSE представляет собой набор программ и сценариев, поддерживающих разработку в FrontPage (популярный редактор веб-страниц от Microsoft) и расширяющих функциональные возможности IIS. Для установки FPSE прочтите раздел "Серверные расширения FrontPage" далее в этой лекции. Не рекомендуется устанавливать FPSE на веб-серверах. Если расширения FPSE установлены, включите контроль версий файлов. Откройте консоль Internet Services Manager (Диспетчер служб интернета) и в дереве консоли щелкните правой кнопкой мыши на веб-объекте, для которого включается контроль исходных файлов.Во всплывающем меню выберите Properties (Свойства), после чего откройте вкладку Server Extensions (Серверные расширения) (см. рис. 11.5).
 Рис. 11.5. Отслеживайте редактирование веб-содержимого с помощью включения контроля версий Отметьте опцию Enable Authoring (Включить разработку) и в поле Version Control (Контроль версий) выберите Use External (Использовать внешнюю программу) при наличии программы контроля над исходными файлами (например, Visual SourceSafe) или Use Built-In (Использовать встроенную программу) для использования базового контроля FrontPage.
Программа Visual SourceSafe (см. рис. 11.6) представляет собой приложение уровня предприятия для контроля над изменением исходных файлов; она дополнительно обеспечивает отслеживание версий и функции отката. Для получения информации об интеграции Visual SourceSafe с программой FrontPage обратитесь к разделу "Контроль исходных файлов серверных расширений" в Microsoft FrontPage Server Extensions Resource Kit.
 Рис. 11.6. Программа Microsoft Visual SourceSafe сохраняет файлы проектов в базе данных, позволяя открывать старые версии изменяемых файлов
FrontPage предоставляет два метода контроля над исходными файлами: встроенную упрощенную функцию контроля и интеграцию с внешней программой, совместимой с FrontPage (например, Visual SourceSafe). Упрощенный контроль над исходными файлами обеспечивает меры по контролю над пользователями, управляющими страницами веб-сайта с функциями приписки и отписки. Перед использованием этого компонента FrontPage на IIS необходимо установить FPSE.
Протокол исключений роботов
Для указания разделов сайта, которые не должны посещаться роботом, создайте специально отформатированный файл с именем robots.txt. Разместите этот файл на верхнем уровне веб-пространства, например, по адресу http://www.ваш_домен.com/robots. Когда робот найдет этот документ, он проанализирует содержимое данного файла, устанавливающее базовую политику доступа роботов. К сожалению, робот действует по принципу "разрешено все, что не запрещено". На сайте может существовать только один файл robots.txt, поэтому не размещайте файлы robots.txt в различных папках, так как роботы никогда не будут их считывать. Если веб-разработчики создают свои собственные файлы robots.txt, нужно осуществить их слияние в один файл. Можно также использовать META-теги роботов (о которых пойдет речь в следующем разделе). Содержимое файла robots.txt может быть таким: User-agent: * Disallow: /scripts/ Disallow: /includes/ Disallow: /mike/
В этом примере роботы могут посещать все части сайта, кроме трех вложенных папок: scripts, includes и mike. Регулярные выражения не поддерживаются в строках User-agent или Disallow, однако звездочка ("*") в поле User-agent имеет специальное значение – "любой робот". Следовательно, нельзя вводить в файл такие строки: Disallow: /tmp/* или Disallow: *.gif. Укажите отдельную строку Disallow для каждой папки, которую нужно исключить из списка посещаемых роботом объектов. Нельзя включать в запись и пустые строки, так как они используются для разделения нескольких записей. Ниже приведено несколько примеров того, как запретить роботам посещение всего сайта целиком или его отдельных частей. Чтобы исключить всех роботов для всего сайта: User-agent: * Disallow: /
Чтобы исключить всех роботов для отдельных папок на сайте: User-agent: * Disallow: /scripts/ Disallow: /includes/ Disallow: /private/
Чтобы исключить одного робота: User-agent: BadBot Disallow: /
Чтобы разрешить определенного робота: User-agent: WebCrawler Disallow:
Так как в этом случае не может существовать поле "Allow" (Разрешить), то для исключения всех файлов, кроме одного, поместите эти файлы в отдельную подпапку (например, private), и перенесите один файл на уровень выше, чем данная папка, например: User-agent: * Disallow: /corporate/private/
В качестве альтернативы можно явным образом запретить доступ робота к каждой странице: User-agent: * Disallow: /corporate/private.html Disallow: /corporate/sensitive.html Disallow: /corporate/hr.html
Файл robots.txt должен исключать все папки, кроме тех, которые действительно должны быть проиндексированы и доступны через поисковые машины интернета.
Проверка клиентской части
IIS передает данные, отправленные веб-формой, сценариям для обработки, и первой возможностью проверки и фильтрации этих данных является веб-браузер пользователя. Эта проверка называется проверкой клиентской части. Она реализуется с помощью сценариев JavaScript, так как они могут выполняться и в Internet Explorer, и в Netscape. Эта проверка подтверждает, что данные, обрабатываемые сценарием, действительно введены в полях формы. В примере функция JavaScript проверяет ввод номера телефона в поле формы с именем Telephone: function ValidateFormData(form) { var theNumber = form.Telephone.Value; var valid = true var GoodChars = "0123456789()-+ " var i = 0 if (theNumber =="") { // Возврат значения "ложь" при отсутствии номера телефона valid = false } for (i =0; I <= theNumber.length -1; i++) { if (GoodChars.indexOf(theNumber.charAt(i)) == -1) { alert(theNumber.charAt(i) + "является некорректным символом.") form.Telephone.focus(); valid = false } } return valid }
Данные, введенные в поле формы Telephone, проверяются перед отправкой на сервер посредством вызова функции ValidateFormData в методе onSubmit формы следующим образом:
|