Самоучитель
системного администратора

9.3. Контроль состояния программной среды серверов и станций

При эксплуатации системы администратор должен быть уверен в том, что на серверах и рабочих станциях отсутствуют известные уязвимости и что установленное программное обеспечение выполняет свои функции без наличия каких-либо закладок, недокументированных обменов данными и т. п. Понятно, что собственными силами проверить это невозможно, поэтому мы вынуждены доверять изготовителям программ и обеспечивать со своей стороны идентичность используемого комплекта ПО оригинальному дистрибутиву.

Индивидуальная настройка серверов

Типовая конфигурация операционной системы после стандартной установки "из коробки" позволяет сразу использовать систему в производственной деятельности. При этом в подавляющем большинстве случаев система содержит излишние функции и дополнительные компоненты в целях совместимости с эксплуатируемыми станциями, которые целесообразно отключить в целях повышения безопасности. Каждая избыточная функция — это дополнительный код, который может содержать потенциальные ошибки, может использоваться для проникновения в систему и т. п. Как правило, следует отключить запуск служб системы, не используемых в конкретной конфигурации, и настроить параметры безопасности (протоколы аутентификации, уровень предоставления информации анонимному пользователю и т. п.) по максимально возможному уровню с учетом специфики информационной системы. Такие настройки индивидуальны для каждого случая применения компьютера, поэтому привести универсальные рекомендации в данной книге не представляется возможным.

Отмечу только, что администратору системы следует оптимизировать каждый сервер под те задачи, которые он решает. Необходимые рекомендации можно легко найти на сайтах разработчиков программного обеспечения по ключевым словам "hardening" или "security guide". В подобных руководствах обычно достаточно подробно описываются параметры, влияющие на уровень безопасности системы, и возможные последствия в функционировании информационной структуры при их изменении. Администратору следует внимательно проанализировать каждый параметр и оценить целесообразность предполагаемых изменений.

Security Configuration Manager

В составе Windows Server присутствует программа Security Configuration Manager (SCM). Как видно по названию, SCM предназначена для настройки параметров безопасности сервера. Практически программа предлагает применить к системе один из шаблонов безопасности, выбрав ту или иную роль данного сервера.

SCM привлекательна тем, что предлагает применить комплексно все те рекомендации, которые содержатся в объемных руководствах по безопасности. Однако в реальных системах редко можно найти серверы с "чистой" ролью: обычно присутствуют те или иные модификации, заставляющие администратора тщательно ревизовать предлагаемые к назначению настройки. Поэтому данный мастер следует рассматривать только как первый шаг настройки сервера.

Security Compliance Manager

Microsoft разработал специальное средство для анализа и разворачивания в организации групповых политик безопасности — Microsoft Security Compliance Manager. Утилита доступна к бесплатной загрузке со страницы http://go.microsoft.com/ fwlink/?LinkId=182512. Установить ее можно на системы под управлением Windows Vista/Windows 7/Windows 2008; продукт требует сервера базы данных (бесплатная версия может быть загружена и настроена в процессе установки утилиты).

    Совет

    При установке продукта необходимо наличие подключения к Интернету: возможно, придется загрузить SQL Server Express. Кроме того, после установки продукт загружает с сайта Microsoft последние версии рекомендуемых параметров безопасности.

Microsoft подготовил рекомендуемые параметры настроек безопасности для систем, предназначенных для эксплуатации в типовых условиях, в условиях предприятия и для организаций с повышенным уровнем безопасности. Эти рекомендации представляют собой набор рекомендуемых параметров групповой политики для рабочих станций (Windows XP/Vista/Windows 7) и серверов (Windows Server 2003/2008). Обычно в конкретных условиях применить все рекомендации невозможно: например, какие-то компоненты, рекомендуемые для отключения, предполагается использовать. Утилита Security Compliance Manager и предназначена для того, чтобы сравнить текущие параметры групповой политики с рекомендациями, отредактировать их и применить групповую политику в организации.

Исключение уязвимостей программного обеспечения

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

    Примечание

    Исторически существуют различные названия обновлений: заплатки (Hot fix), которые обычно выпускаются после обнаружения новой уязвимости, сервис-паки (service pack), в которые включается не только большинство реализованных ко времени выпуска сервис-пака заплат, но и некоторые усовершенствования и дополнения основных программ и т. п. В данном контексте для нас не актуальны эти различия.

Использование эксплойтов

Уязвимости обнаруживаются постоянно, причем далеко не всегда — даже по критическим ошибкам — оперативно выпускаются нужные заплатки. При этом для того, чтобы воспользоваться уязвимостью, не надо быть "крутым" специалистом. Найти специальную программа (ее принято называть exploit), которая реализует эту уязвимость, в эпоху глобальных компьютерных сетей не представляет особого труда. В результате обычный пользователь получает инструмент, позволяющий ему, например, повысить свои права до уровня администратора или "свалить" сервер предприятия (рис. 9.11). Можно рассуждать о причинах такого поведения, но автору неоднократно приходилось сталкиваться с наличием подобного пользовательского интереса.

Рис. 9.11.
Программа Metasploit предназначена для осуществления атак на компьютеры. Воспользоваться уязвимостью пользователь может, найдя в Интернете соответствующий эксплойт. Дальнейшие его действия будут заключаться только в выборе варианта вторжения на чужой компьютер

Информация о найденных уязвимостях тщательно скрывается до момента выпуска исправлений программного кода. Однако этот факт не гарантирует наличие прорех в защите систем, которые уже начали эксплуатироваться злоумышленниками.

Поэтому своевременная установка заплат является необходимым, но не достаточным средством мер обеспечения безопасности данных.

Как узнать об обновлениях

Информация об обнаруженных уязвимостях публикуется на специализированных сайтах, адреса которых перечислены в этой главе ранее в разд. "Интернет-ресурсы, посвященные безопасности". Понятно, что просматривать оперативную информацию о событиях безопасности ежедневно практически нереально, поэтому целесообразно подписаться на существующие рассылки.

Ни в коем случае не следует доверять письмам электронной почты, советующим срочно установить то или иное обновление и часто содержащим "файл исправлений". Такие письма обычно являются фальсификацией.

Если у администратора появляется задача проанализировать какой-либо компьютер (или группу) на полноту установки обновлений безопасности, то самый простой способ — это загрузить с сайта Microsoft утилиту Microsoft Baseline Security Analyzer (MBSA, домашняя страница http://technet.microsoft.com/en-us/security/ cc184923). Утилита MBSA позволяет выполнить анализ компьютеров в организации (локального, удаленной системы или целой подсети) на наличие установленных обновлений безопасности и сформировать некоторые советы по повышению уровня защищенности систем рис. 9.12. Для анализа используются актуальные данные, загружаемые с сайта изготовителя (список актуальных обновлений с сервера Microsoft; поэтому для сканирования необходимо подключение к Интернету, хотя загруженный каталог обновлений можно потом перенести вручную на другой, автономный компьютер).

Рис. 9.12.
Результаты анализа системы с использованием MBSA

Существуют бесплатные средства проверки полноты установки обновлений и от других разработчиков. Если нужно проверить только один компьютер, то удобно воспользоваться Windows Vulnerability Scanner (http://www.pspl.com/download/ winvulscan.htm) — утилитой объемом менее 1 Мбайт, которая проверит состав установленных обновлений Microsoft. По результатам тестирования будет сформирован список отсутствующих обновлений, причем щелчок по номеру бюллетеня безопасности откроет в обозревателе Интернета страницу, с которой можно загрузить соответствующий патч (рис. 9.13).

Рис. 9.13.
Программа Windows Vulnerability Scanner отображает список обновлений, которые необходимо установить на компьютер

Эта программа удобна для анализа автономных компьютеров, поскольку содержит в себе список выпущенных патчей; очевидно, что она нуждается в периодическом обновлении с сайта изготовителя. Из неудобств работы я бы отметил то, что программа отображает больший список требуемых обновлений, чем детектируются средствами Microsoft (утилита не учитывает в некоторых случаях поглощение одних патчей другими).

Администратор может воспользоваться и любой программой, предназначенной для анализа безопасности компьютерных систем. Сегодня выбор на рынке подобных продуктов довольно разнообразен. Как правило, программы сканирования уязвимостей выполняют типовые операции: проверяют наличие уязвимостей по имеющейся у них базе, сканируют IP-порты, проверяют ответы на типовые HTTP-запросы и т. д. По итогам таких операций формируется отчет, предоставляемый администраторам, и приводятся рекомендации по устранению уязвимостей. На рис. 9.14 представлено окно одной из подобных программ — XSpider (http://www.xspider.ru/).

Рис. 9.14.
Программа XSpider провела тестирование системы и обнаружила уязвимости

    Примечание

    При тестировании информационной системы с помощью подобных программ следует проявлять особую осторожность. Во-первых, при тестировании резко повышается нагрузка на сеть. Во-вторых, отдельные тесты могут привести к аварийному завершению работы компьютеров.

Тестирование

К сожалению, сами обновления нередко становятся причиной ошибок в работе компьютерной системы. Те, кто более или менее периодически знакомится с конференциями по программным продуктам, наверняка помнят пики эмоций, когда после установки очередного сервис-пака система просто переставала работать. Автору неоднократно приходилось сталкиваться с ситуациями, когда установка обновлений приводила к сбоям системы, причем часто проблемы возникали не сразу, а уже в процессе эксплуатации, когда сбой в работе системы становился критичным для обеспечения бизнес-процессов организации.

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

Разработчики программного обеспечения советуют в обязательном порядке тестировать все устанавливаемые на рабочие компьютеры обновления. Тестирование должно проводиться в типовой для данной организации конфигурации для каждой версии операционной системы. Администратору следует самостоятельно определить, выполнение каких функций необходимо проверить после обновления. Понятно, что полностью протестировать систему после установки обновлений в условиях малой или средней организации практически нереально, но проверить хотя бы возможность загрузки компьютера и правильность выполнения основных бизнес-процессов — вполне возможно.

    Совет

    Ставьте полученные обновления сначала на неосновные компьютеры, в частности, попробуйте провести эту операцию на своей машине. И, конечно, заранее продумайте, как вы будете восстанавливать систему в случае ее краха. Например, есть ли у вас актуальные файлы резервной копии и насколько будет нарушено функционирование организации, если такое восстановление придется проводить сразу после применения обновления?

Обновления операционных систем Linux

Современные операционные системы Linux поддерживаются выпуском заплат на обнаруженные уязвимости. Этот процесс можно автоматизировать (запускать обновления по графику с использованием демона cron) или же устанавливать обновления вручную.

Операции выполняются по правилам соответствующей версии операционной системы. Например, для операционной системы Ubuntu ручное обновление выполняется двумя командами:

# apt-get update
# apt-get upgrade

Первая команда обновляет локальный список информации о пакетах, вторая — устанавливает новые версии пакетов.

В отличие от Windows-систем при установке обновлений на серверы Linux (без графической подсистемы) крайне редко требуется перезагрузка.

Для обновления рабочих станций Linux используются мастера операций (в графическом режиме), автоматически запускаемые в случае обнаружения исправлений.

Индивидуальные обновления Windows-систем

    Примечание

    Службы WSUS не поддерживают следующие продукты: Visual Studio 2002 или Visual Studio 2003, Report Viewer 2005 или Report Viewer 2008, Platform SDK: GDI+, Компоненты Office 2003, Office 2007 и Office 2010, все продукты Macintosh, MSN Messenger, Windows Live Messenger.

Обновления для Windows-систем публикуются службой Microsoft Update на серверах Microsoft (http://www.update.microsoft.com/microsoftupdate). На этой странице можно выполнить ручное сканирование систем Windows XP/2003 на наличие уязвимостей и установить необходимые пакеты. Для Windows 7/2008 нужно воспользоваться Центром обновления системы, который проверит наличие обновлений, поможет выбрать и установить нужные.

При установке систем одной из рекомендаций является настройка режима работы службы обновлений. Для индивидуальных рабочих мест можно выбрать вариант автоматической загрузки и установки обновлений (рис. 9.15).

Рис. 9.15.
Включение режима автоматических обновлений

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

Организация обновлений Windows-систем на предприятии

Обновление систем на предприятии имеет несколько особенностей.

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

Во-вторых, установка обновлений в организации должна быть контролируемой: обновления должны авторизоваться (получать разрешение от администратора на установку, лучше всего — после тестирования), операции нужно проводить по графику, с учетом типа компьютеров (отбор по группам, площадкам и т. п.), весь процесс должен протоколироваться с возможностью легкого составления отчетов по результатам.

В этих целях целесообразно использовать службу автоматического обновления — Windows Software Update Services (WSUS). Она распространяется бесплатно и предназначена для установки как обновлений операционной системы Windows, так и ряда продуктов Microsoft.

Страница с описаниями службы находится по адресу http://technet.microsoft.com/ en-us/windowsserver/bb332157. С этой страницы можно перейти на ссылку, по которой установочный пакет может быть загружен для серверов Windows 2003. Для Windows 2008 Server служба WSUS является дополнительной ролью, устанавливаемой в диспетчере сервера. Однако для того, чтобы эта роль появилась в списке доступных ролей, необходимо установить на сервер дополнение, описанное в документе http://support.microsoft.com/kb/940518.

Сама служба представляет собой приложение, работающее на веб-сервере IIS. Поэтому для ее установки необходимо выполнить ряд условий (установить компоненты). Установка компонент выполняется мастером в Windows 2008 Server (рис. 9.16), но в случае Windows 2003 Server подготовительные операции следует выполнить в соответствии с инструкцией по установке (доступна на домашней странице продукта).

Рис. 9.16.
Установка роли WSUS на сервере Windows 2008

Архитектуру обновления можно построить по нуждам организации: служба допускает виртуализацию, каскадирование (загрузка обновления с другого сервера WSUS), балансировку нагрузки (обслуживание инфраструктуры несколькими серверами) и т. п.

Основные настройки службы (параметры прокси-сервера, выбор продуктов, для которых закачиваются обновления, настройка языков, графика синхронизации и т. д.) выполняются во время установки продукта, но их можно уточнить и в консоли службы (рис. 9.17).

Рис. 9.17.
Консоль управления WSUS (настройка параметров)

После установки компьютеры необходимо разбить по группам (в зависимости от требований к установке обновлений) и настроить режимы (например, автоматическое согласие на установку определенной категории обновлений и т. п.).

Чтобы клиенты выполняли установку обновлений с сервера WSUS, надо в групповой политике явно указать имя сервера, с которого будет осуществляться обновление.

    Примечание

    Для индивидуальной настройки системы на локальный сервер WSUS (если компьютер не использует групповые политики) следует добавить в ветвь HKLM\Software\ Policies\Microsoft\windows\windowsUpdate реестра клиентской системы два ключа: WUServer (тип Reg_SZ) и WUStatusServer (тип Reg_SZ). Оба они должны указывать на внутренний WSUS-сервер (например, http://wsus).

Обновление ПО с использованием специализированных средств

Существуют специализированные продукты для управления программными продуктами. Microsoft для управления ИТ-системами разработала System Center (SC), который может быть использован и для разворачивания обновлений. Преимуществом SC является то, что его можно использовать для установки обновлений любого ПО, а не только обновлений системы, критичных для ее безопасности, или MS Office.

Поскольку SC ведет инвентаризацию аппаратной составляющей и программного обеспечения компьютеров, то администратор получает возможность практически индивидуальной настройки обновлений (например, учитывая версии установленного ПО, наличие свободного места на диске и т. п.) с последующим анализом операций в удобной форме отчетов.

Установка обновлений через групповые политики

Обновления можно устанавливать с помощью групповых политик. К такому способу можно прибегнуть, например, при необходимости срочного разворачивания заплатки.

Специально для автоматизации установки обновления выпускаются в MSI-формате. Загрузив файл обновления, его следует распаковать в папку на локальном диске, запустив с ключом -x. Затем, используя программу редактирования групповой политики, можно создать пакет установки, импортировав msi-файл из этой папки. Единственное неудобство данного решения — необходимость создания различных политик, учитывающих установленную версию операционной системы и программ MS Office. Поскольку в малых и средних организациях обычно придерживаются однотипности устанавливаемого ПО, то подобные действия не должны вызвать затруднений администратора.


Рейтинг@Mail.ru