До недавнего времени узнать о последних модулях исправлений (hotfixes), выпущенных Microsoft, можно было либо через Web-сайт компании по адресу: http://www.microsoft.com/technet/security, либо подписавшись на службу Microsoft Security Notification Service по адресу: microsoft_security-subscribe-request@announce.microsoft.com.

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

Для начала определим, в каких форматах выпускаются обновления и что они собой представляют.

Пакет исправлений - Service Pack. Пакеты Service Pack исправляют известные дефекты, обновляют и расширяют функциональные возможности операционной системы, административных утилит и драйверов. Service Pack специфичен для конкретной версии продукта: например, для Windows NT и Windows 2000 выпущены разные пакеты исправлений, но Windows NT Server и WorkStation используют один пакет. Service Pack коммулятивны, т. е. каждый следующий пакет включает в себя исправления, содержащиеся во всех предыдущих.

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

Модули коррекции системы защиты - Security patches. Security patches устраняют слабые звенья в системе безопасности. Они в чем-то похожи на Hotfixes, но считаются обязательными для установки и при соответствующих обстоятельствах должны быть развернуты незамедлительно.

Основные правила и рекомендации

Риск, связанный с установкой пакета Service Pack или модуля коррекции, всегда должен быть меньше, чем риск потери данных в случае отказа от их установки.

Рекомендую внимательно прочитать всю прилагающуюся документацию, чтобы получить ответы на следующие вопросы:

  • решит ли проблему данное обновление и уместно ли оно вообще?
  • есть ли зависимость обновлений от запуска/остановки каких-либо служб, функций или установленных компонентов?
  • не может ли обновление вызвать проблемы, которые в дальнейшем приведут к длительному простою?

Обновления рекомендуется устанавливать только в том случае, если они действительно необходимы.

Для тестирования лучше устанавливать обновления сначала на те машины, простой которых не вызовет фатальных последствий. Если проблем не возникнет, можно будет приступать к обновлению основных серверов.

Service Packs, Hotfixes и Security patches должны быть одинаковы на всех контроллерах домена. Пренебрежение этим правилом может привести к ошибкам в процессах репликации и синхронизации.

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

Рекомендации по установке Hotfixes

  • Не следует устанавливать Hotfixes пока не загружен текущий Service Pack. Hotfixes выпускаются для определенных Service Pack. Если Hotfixes предназначены для Service Pack 2, то и устанавливать их нужно на Service Pack 2.
  • Если большое количество готовых к установке Hotfixes входят в последнюю редакцию пакета Service Pack, то лучше инсталлировать пакет Service Pack, а не устанавливать каждый Hotfix.

Windows 2000 IIS 5.0 Hotfix Checking Tool

Утилита HFCheck (см. Экран 1), написанная на JavaScript, проверяет установленные на машине Hotfixes, сверяя данные о системе с XML-документом на сайте Microsoft http://www.microsoft.com/technet/ security/search/bulletins.xml, и выводит список отсутствующих Hotfixes для Microsoft Infor-mation Server 5.0.

Экран 1. Пример работы утилиты HFCheck.

Отличительной особенностью данной утилиты является отчет, который утилита пишет в Event log. Область применения данной утилиты функционально ограничена проверкой только Web-серверов IIS 5.0 и 4.0. Однако в XML-документе содержится информация о пакетах обновлений для всех продуктов компании.

Утилита совместима со следующими продуктами:

  • Windows 2000 (с установленным IIS);
  • Windows NT 4.0 (с установленными IIS 4.0 и ADSI).

Параметры запуска:

Cscript hfcheck.wsf 
 
 

Где

/B - путь до бюллетеня, по умолчанию берется с сайта Microsoft (может со-держать как UNC-, так и URL-путь);

/M - можно указать через запятую имена машин, которые необходимо сканировать;

/U - имя пользователя;

/P - пароль пользователя, под учетной записью которого будет запущена утилита.

Преимущества:

  • возможность удаленного тестирования систем;
  • возможность выполнения в сценарии, запускаемом по расписанию;
  • возможность указать локальный путь к XML-файлу;
  • отчет о работе пишется в Event log.

Недостатки:

  • тестируется только Internet Information Server 4.0/5.0.

Данная утилита подходит для проверки обновлений на серверах IIS.

Описание на сайте Microsoft http://www.microsoft.com/Downloads/Release.asp?ReleaseID=24168.

Утилита HFNetChk

Утилита командной строки, позволяющая централизованно проверять установленные модули исправлений, а также необходимые для установки на данной машине. Утилита сканирует машину (см. Экран 2) и сравнивает полученные данные с XML-документом по адресу: http://download.microsoft.com/download/xml/ security/1.0/NT5/EN-US/mssecure.cab.

Экран 2. Пример работы утилиты HFNetChk.

Эта утилита создана позднее и предоставляет больше возможностей, чем HFCheck. К тому же она позволяет проверять многие другие продукты компании и может применяться для контроля пакетов обновлений как на серверах, так и на рабочих станциях. Запустив эту утилиту с помощью планировщика заданий, можно периодически получать отчеты об установленных и недостающих Hotfixes на всех машинах домена. В базу данных в XML-файле заложен очень большой объем данных, сюда входит информация о пакетах обновлений практически для всех продуктов компании Microsoft, их краткое описание и расположение в сети. Потенциал, заложенный в базу данных XML, позволяет предположить, что появится утилита, позволяющая автоматически скачивать и устанавливать обновления.

Утилита позволяет проверять следующие продукты:

  • Windows NT 4.0;
  • Windows 2000.

А также все системные службы, в том числе:

  • Internet Information Server 4.0 и 5.0;
  • SQL Server 7.0 и 2000 (включая Mic-rosoft Data Engine);
  • Internet Explorer 5.01 и более поздние версии.

Параметры запуска:

hfnetchk.exe [-h hostname] [-d domainname]
[-n] [-a action] [-t threads] [-o output]
[-x datasource] [-z] [-v]

Где

-h	hostname

NetBIOS имя сканируемого хоста. По умолчанию сканируется локальный хост.

-d	domain_name

имя домена для сканирования. Все машины в этом домене будут просканированы.

-n	network

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

-a	action

Показать:

(i) установленные Hotfixes,

(m) отсутствующие Hotfixes,

(n) необходимые Hotfixes,

(b) установленные и недостающие Hotfixes.

По умолчанию показываются только необходимые Hotfixes.

-t	threads

Число потоков (threads), используемых для сканирования.

Возможные значения от 1 до 128. По умолчанию 64.

-o 	output

Задает формат вывода.

(tab) разделение знаками табуляции.

(wrap) вывод в разбитом на строки формате.

По умолчанию формат wrap.

-x	datasource

Указать XML-источник, содержащий информацию о Hotfix. Это может быть путь к XML-файлу в формате URL или UNC, по умолчанию путь указывает на файл mssecure.cab на Web-сайте Microsoft (если не удается найти его там, поиск производится в той папке, откуда была запущена утилита).

-z	reg checks

Отмена проверки реестра.

-v	verbose

Показать причину, по которой тест был прерван, в формате wrap.

-?	help

Помощь.

Примеры запуска:

HFNETCHK.exe
HFNETCHK.exe -h hostname
HFNETCHK.exe -h h1,h2,h3
HFNETCHK.exe -i 192.168.1.1 -a m -t 10 -v
HFNETCHK.exe -i 192.168.1.1,192.168.1.8
 -h hostname -x mssecure.xml
HFNETCHK.exe -d domain_name -a b -o tab -x
 c:	empmssecure.xml
HFNETCHK.exe -r 192.168.1.1-
192.168.1.254 -a i -t 20
HFNETCHK.exe -x http://www.xyz.abc/
mssecure.xml
HFNETCHK.exe -x «c:Space In Path
mssecure.xml»

Преимущества:

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

Данная утилита представляет собой полноценное средство тестирования сети на предмет установленных и недостающих обновлений.

Описание на сайте Microsoft http://support.microsoft.com/support/kb/articles/ q303/2/15.asp?id=303215&sd=tech.

Утилита разработана компанией Shavlik Technologies, на сайте которой можно заказать и графическую версию данной программы.

Microsoft Personal Security Advisor (MPSA)

Web-интерфейс для комплексного тестирования системы на предмет безопасности включает около 50 тестов. Тесты ориентированы, в основном, на рабочие станции. Тестируются такие параметры, как локальные учетные записи, файловые системы, параметры реестра, относящиеся к безопасности, настройки Internet Explorer, приложений Microsoft Office, а также установленные пакеты обновлений. По окончании тестирования система выдает подробный отчет о работе, в том числе ссылки на соответствующие статьи из Knowledge Base.

Данный интерфейс совместим с:

  • Windows NT 4.0;
  • Windows 2000.

Преимущества:

  • подробный отчет;
  • простой интерфейс.

Недостатки:

  • данный тест полезен только для клиентских систем;
  • для тестирования необходим доступ в Internet на каждой машине;
  • невозможно выполнять удаленное тестирование.

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

Адрес на сайте Microsoft: http://www.microsoft.com/technet/mpsa/start.asp.

Утилита Qchain

С помощью данной утилиты можно установить несколько Hotfixes сразу, лишь один раз прибегнув к перезагрузке системы. При установке нескольких Hotfixes администратор вынужден инсталлировать их по очере-ди - от старых к более новым - и перезагружать компьютер каждый раз после установки модуля исправлений. Иначе может случиться, что один или несколько файлов будут заменены более старыми версиями. Кроме того, при инсталляции пакета исправлений Service Pack удаляются все установленные ранее Hotfixes, в том числе и те, которые вышли позднее, чем устанавливаемый пакет Service Pack. Qchain помогает справиться с подобными ситуациями.

Пример командного файла:

@echo off
setlocal  ; переменные будут действовать
 только во время исполнения bat-файла;
set PATHTOFIXES= some path
%PATHTOFIXES%Q123456_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%Q123321_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%Q123789_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%qchain.exe

Ключ при запуске любого модуля исправлений -z означает, что компьютер не будет перезапускаться сразу после установки Hotfixes.

Ключ -m означает, что никакого взаимодействия с пользователем не будет, и на экран не будет выводиться никаких сообщений (полезно для запуска в bat-файлах или через telnet).

Описание на сайте Microsoft: http://support.microsoft.com/directory/ article.asp?ID=KB;EN-US;Q296861

Заключение

Итак, для полной автоматизации установки пакетов обновлений остается решить одну задачу - осуществить автоматическую загрузку пакетов обновлений по ftp. К сожалению, в бюллетенях безопасности Microsoft пути к файлам содержат длинные и неоднозначные имена. Все было бы проще, если бы Microsoft поддерживала для пользователей сайт, подобный ftp://hotfix.microsoft.com, но, к сожалению, данный сайт, похоже, предназначен для бета-тестеров. В качестве примера приведу сценарий, который позволяет автоматизировать загрузку файлов по ftp (пути в сценарии условны!):

ftp -s:getupdates.txt
getupdates.txt
open hofix.microsoft.com  ; открываем сайт
anonymous  ; регистрируемся от имени
 пользователя anonymous
updates@mydomain.ru  ; вместо пароля E-mail
cd ftp://hotfix.microsoft.com/winnt/windows_nt
_4.0/sp7/q29444  ; перейти в удаленный
 каталог на ftp-сервере
lcd D:Updates  ; перейти в локальный каталог,
 сюда будет записываться загружаемый файл
bin  ; переводит ftp-сервер в режим
 пересылки в BIN формате
prompt  ;
get q299444i.exe  ; загрузить файл с ftp
quit  ; выход

Дополнительные ссылки

Дополнительные утилиты и бюллетени по безопасности продуктов Mic-rosoft можно найти на http://www.microsoft.com/technet/ security/tools.asp.

Итерфейс поиска hotfixes http://www.microsoft.com/technet/treeview/ default.asp?url=/technet/security/current.asp