B конце октября 1999 г. Microsoft выпустила пакет исправлений Service Pack 6 (SP6). Спустя неделю или две в нем было обнаружено несколько существенных недоработок - ошибка в Winsock, которая, помимо прочего, не давала пользователям Lotus Notes доступа, пока они не регистрировались с правами администратора; ошибка в протоколе AppleTalk, приводящая к появлению «голубого экрана смерти» на компьютерах, подсоединенных к файловому или принт-серверу Apple; ошибка в преобразовании даты в IIS 3.0, из-за которой 2000 г. в дате интерпретировался как 2028. Разработчики Microsoft исправили эти недостатки в SP6а, модифицировав заодно и winver.exe (утилиту командной строки, показывающую версию операционной системы), и представили новый набор исправлений в ноябре 1999 г. SP6а заменяет SP6 и все предыдущие сервисные пакеты.

Mногие пользователи установили SP6, но спустя несколько дней удалили его, поддавшись влиянию общественного мнения или реально столкнувшись с проблемами при тестировании. Таким образом, значительная часть систем NT до сих пор использует SP5, и у многих пользователей остались без ответов вопросы о SP6 и SP6а. Пришло ли время для модернизации имеющейся системы с SP5? Предлагаемая статья, где рассматриваются исправления, выпущенные уже после SP6а, надеюсь, поможет принять верное решение.

Достоинства SP6а

В SP6а исправлены многие ошибки, которые проявляются при работе в сети. В частности, закрыты бреши в системе безопасности, скорректированы небольшие неточности в работе программы установки, решены некоторые проблемы использования рабочего стола и добавлены три исправления «ошибки 2000». После инсталляции SP6а не нужно устанавливать 15 модулей оперативного исправления, выпущенных вслед за SP5; вместо этого придется управляться с тремя появившимися уже после выхода SP6а, и по меньшей мере одной заплаткой в системе безопасности (о чем речь пойдет дальше). Учитывая количество исправленных ошибок, можно считать, что системы NT с установленным SP6a будут работать более стабильно. Документ Microsoft «List of Bugs Fixed in Windows NT SP 6/6a (Part2)», по адресу: http://support.microsoft.com/support/kb/articles/q244/6/90.asp, содержит подробное описание исправлений, внесенных в SP6a. Кроме того, в SP6a реализовано несколько замечательных дополнений.

Шифрование. В SP6a длина ключа шифрования стандартной версии NT 4.0 увеличена с 40 разрядов до 56, что делает систему более надежной и выводит из-под экспортных ограничений на 128-разрядную версию. При установке версии SP6a с модулем усиленного шифрования на стандартную версию NT происходит модернизация системы от использования 40-разрядного шифрования к 128-разрядному. Дополнительная информация содержится во врезке «Как определить длину ключа шифрования и текущую версию».

Французская версия. Французская версия NT теперь поддерживает 40-разрядное шифрование для RAS и PPTP, Microsoft System Management Server (SMS) Remote Console, SQL Server и Exchange Server.

Разделы, создаваемые OEM. Программа установки NT 4.0 теперь поддерживает разделы, созданные с помощью утилит Compaq и Dell, поэтому переформатировать диск или устанавливать новую копию системы в другой раздел не приходится.

Micosoft Internet Explorer 5.0. Использование SP6a позволяет устанавливать Internet Explorer (IE) 5.0 так, что не будет создано ни его значка на рабочем столе, ни сделано привязок к файлам, что требует установки IE в качестве стандартного браузера. Если используется другой браузер и выход в Internet деактивирован, то эти возможности окажутся кстати. Исправления для IE 5.0 находятся на компакт-диске с SP6a, в варианте для загрузки их нет. Для деактивации значка на рабочем столе и установки IE как стандартного браузера нужно запускать исправление IE 5.0 из командной строки.

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

Новые драйверы принтеров. Разработчики Microsoft добавили в мастер Add Printer много новых драйверов принтеров, включая драйверы для нескольких моделей Hewlett-Packard (HP) Laser Jet PCL 5e (например, 2100, 4000, 5000, 8х00) и двух принтеров Lexmark Optra. В SP6a добавлено также большое количество PostScript-драйверов.

Winnt32.exe и Setupdd.sys

Ни один пакет исправлений от SP4 до SP6a не имел в своем составе утилиты установки Winnt32.exe или SCSI-драйвера Setupdd.sys. Набор исправлений, поставляемый на компакт-диске, включает эти файлы. Winnt32 - достаточно удобная утилита, позволяющая провести модернизацию или переустановить работающую систему NT, а Setupdd.sys определит имеющийся загрузочный диск SCSI. Эти файлы можно загрузить из каталога SP4 на ftp://ftp.microsoft.com/bussys/winnt/winnt-public/fixes/usa/nt40/ussp4/additional. Хотя данные утилиты находятся в каталоге SP4, они корректно работают во всех версиях от SP4 до SP6a.

Загрузить или заказать компакт-диск

Версия SP6a на компакт-диске содержит больше исправлений, чем загружаемая с Web-сайта Microsoft. Дополнительные модули добавляют новые возможности в IE 5.0, Security Configuration manager (SCE), Distributed COM (DCOM), WinSock, файлы Microsoft Message Queue Server (MSMQ) для Win9x, дополнительные драйверы принтеров, вспомогательные файлы для установки RRAS в автоматическом режиме исправления для Certificate Server и Internet Authentication Service (IAS). Заказать компакт-диск можно на странице загрузки Service Pack.

Установка SP6a

Систему можно модернизировать в оперативном режиме, загрузив 34,5-мегабайтный файл с исправлениями или заказав компакт-диск. Подробнее об этом во врезке «URL для загрузки SP6a». Архив sp6i386.exe расширяется до 67 Мбайт, и требуется около 120 Мбайт свободного пространства для разворачиваемых файлов и каталога хранения файлов предыдущей версии, на случай возврата к ней SP. В SP6a не входят исправления для RAS, этот модуль нужно установить отдельно после завершения установки SP6a. Если SP6 уже установлен, можно модернизировать систему до SP6a, подключив модули оперативного исправления (q246009i.exe для Intel и q246009a.exe для Alpha-систем). Если на системе установлен SP5, нужно загрузить и установить полный комплект SP6a.

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

Возможные проблемы при установке

После установки SP6a и перезагрузки системы с Microsoft Exchange Server почтовый сервер может инициировать процесс полной перестройки индекса. При прерывании этого процесса может быть нарушена целостность баз данных Exchange Server. Когда я установила SP6a на своем Exchange Server, после регистрации в системе мне пришлось долго ждать появления рабочего стола, а в журнале Application Event Log я нашла несколько наборов записей Exchange Server о пересчете индексов (категория Table/Column, события с ID 174 и 175). Эти записи свидетельствовали о том, что Exchange Server подчистил базы данных Public и Private Store, а также базу каталога Directory Store. Если базы данных Exchange Server слишком большие, то операция очистки может добавить к общему времени, затраченному на модернизацию, от 15 мин до 1 ч и более, замедляя при этом процесс доставки сообщений.

Файл README в составе SP6a указывает на то, что данный пакет включает исправления и для NT 4.0 Option Pack, но описаны они не совсем внятно. Добавлю, что эти исправления можно получить только с SP6a на компакт-диске. Кроме того, модернизацию компонентов Option Pack нужно проводить отдельно. Остается надеяться, что разработчики Microsoft проверили корректность работы исправлений для всех версий продуктов, входящих в состав Option Pack. Нужно иметь в виду, что исправления для IIS 4.0 устанавливают неправильные разрешения на исполнение сценариев для пакета Microsoft Proxy Server Web Administration Tool. Если Web Administration Tool не запускается после установки SP6a, следует добавить разрешение на исполнение сценариев в Virtual Directory для PrxAdmin. При запуске процедуры установки пакета исправлений может появиться предупреждение, что Microsoft не тестировала исправления для Option Pack в SP4. Можно смело нажимать Yes для продолжения установки.

Исправляя известную ошибку, SP6a автоматически заменяет драйвер 3Com EtherLink 905B версии 3.38.40.0 или более ранний на версию 3.40.40.0. Если после модернизации и перезагрузки появляются проблемы с сетевой картой, следует загрузить новую версию драйвера 3Com с http://www.3com.com. Версию используемого драйвера нужно проверить до начала процесса установки SP6a, чтобы увидеть, как действует пакет исправлений.

Компания Compaq выпустила исправление Revision G для уровня аппаратных абстракций (HAL) систем Alpha, и SP6a поддерживает новые возможности HAL, включая микросхему Tsunami. Подробная информация об исправлениях для HAL содержится в документе Microsoft «Compaq HALs (Including Revision G) for Alpha with Windows NT 4.0» по адресу: http://support.microsoft.com/support/kb/articles/q239/9/29.asp. Можно также загрузить новый HAL с сервера Compaq (http://www.compaq.com/support/files/alphant/firmware).

При модернизации кластерных систем Microsoft Cluster Server (MSCS), IIS4.0 или MSMQ, а также при использовании компьютера с двойной загрузкой Windows 2000 и NT 4.0, нужно быть готовым и к другим неожиданностям. Следует просмотреть файл README для SP6a, чтобы сделать на такой случай дополнительные приготовления.

Исправления, выпущенные после SP6a

После инсталляции SP6a потребуется установить три дополнительные «заплатки»: для Remote Access Service manager, процедуры регистрации Winlogon (для исправления ошибки, которая иногда проявляется при выходе из системы) и системы безопасности C2 Security. Кроме того, нужно задействовать исправления в системе безопасности, которые касаются Syskey и Local Security Authority, для предупреждения нарушений. Соответствующие ссылки можно найти во врезке «URL для «заплаток» к SP6a».

Исправление для Remote Access Service Manager. «Заплатка» для Rasman была выпущена незадолго до SP6 и не вошла ни в SP6, ни в SP6a. Данное исправление предотвращает подстановку непривилегированным пользователем другого исполняемого модуля взамен rasman.exe. Поскольку Rasman функционирует в контексте всей системы, это была очевидная брешь в системе безопасности, которую данное исправление устраняет.

Исправление для Winlogon. После установки SP6a могут возникнуть затруднения при выборе пункта Logoff в меню Start. В некоторых случаях - особенно если выполняется какая-нибудь программа, - экран становится серым, и курсор в виде песочных часов замирает. Согласно документации Microsoft, переход к версии Winlogon из SP6a вызывает проблему при выходе из системы. Чтобы преодолеть это препятствие, нужно воспользоваться «комбинацией из трех пальцев» (Ctrl+Alt+Del) и указать Logoff в открывшемся окне. «Заплатка» для Winlogon, исправляющая данную ошибку, имеет большое значение для рабочих станций NT.

Исправления в системе безопасности C2. При использовании функции безопасности по классу C2 нужно загрузить модуль q244599i.exe (см. врезку «URL для «заплаток» к SP6a»). Это исправление корректирует правила доступа к объектам NT в соответствии с тремя требованиями стандарта C2.

Порты TCP и UDP. В соответствии с требованиями C2 приложения, запущенные непривилегированными пользователями, не могут прослушивать TCP-порты, задействованные службами NT, вне зависимости от того, используется шифрование трафика по этим портам или нет. Затруднения вызывают TCP-порт 137 и UDP-порты 138 и 139. В системах с SP6a и более ранними пакетами исправлений непривилегированные приложения могли получить доступ к этим портам, вызвав функцию API ZwCreateFile в драйвере netbt.sys. SP6a меняет поведение netbt.sys и не разрешает разделять доступ к этим портам. В документе Microsoft «Enabling NetBT to Open Ip port Exclusively» (http://support.microsoft.com/support/kb/ articles/q241/0/41.asp) описаны изменения параметров реестра для решения данной проблемы.

Объекты Jet500.dll. Службы WINS и DHCP для управления своими базами данных используют процессор Jet500. Программа Jet500.dll создает ряд объектов (событий, семафоров, мьютексов), управляющих синхронизацией нескольких экземпляров данного модуля, и по умолчанию данные объекты доступны всем. Исправление к C2 решает данную проблему в Jet500, разрешая доступ к объектам только членам группы Administrators. Подробнее об этом можно узнать из документа http://support.microsoft.com/ support/kb/articles/q241/0/41.asp.

Объекты драйверов устройств. При открытии драйвером устройства и передаче ему файла с нулевым именем или с путем, состоящим из одних слешей, некоторые драйверы системы перестают использовать стандартный механизм безопасности. Исправление для C2 устанавливает новые версии семи драйверов NT, соответствующих безопасным вызовам процедур: bepp.sys, floppy.sys, netdetect.sys, parapoirt.sys, null.sys, tcpip.sys, scsiport.sys.

Исправление для Syskey и LSA. Функция LsalookupSids() возвращает SID пользователя или группы. В некоторых случаях данная функция некорректно работает с неправильным или несовместимым аргументом, нарушая целостность работающей копии LSA. Служба LSA формирует для служб безопасности NT запросы на регистрацию, выполняет проверку привилегий пользователей, определяет права доступа к ресурсам и предоставляет данные для аудита. Нарушения в работе LSA приводят к отказу в обслуживании таких запросов.

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

Если наблюдаются нарушения в работе LSA или компьютер «завис», следует перезагрузиться для запуска другой копии LSA. Кроме того, остается потенциальная брешь в защите системы, и нужно как можно быстрее установить модуль исправления q248183.exe.

Час Х

Поскольку за последние несколько месяцев никаких новых исправлений, помимо SP6a, не появилось, мне думается, что час Х для SP6a настал. Возможно, SP7 появится уже на момент публикации статьи. Хотя несмотря на многочисленные ссылки на новые исправления для SP7, о нем пока ничего не известно.

Надеюсь, что после установки SP6a системы будут работать более стабильно. Главное, не забыть об особенностях модернизации систем с Exchange Server.

ОБ АВТОРЕ

Паула Шерик - редактор Windows 2000 Magazine и консультант по вопросам планирования, реализации и взаимодействия сетей. Ее адрес: paula@win2000mag.com.


КАК ОПРЕДЕЛИТЬ ДЛИНУ КЛЮЧА ШИФРОВАНИЯ И ТЕКУЩУЮ ВЕРСИЮ

Стандартный SP6a удлиняет ключ шифрования с 40 разрядов до 56. Но если случайно применить этот пакет исправлений к системе с усиленным алгоритмом шифрования, можно скомпрометировать всю систему безопасности. Стандартная версия SP6a не снизит уровень безопасности всех компонентов системы с усиленной защитой, но смешанная среда может помешать автоматическому запуску некоторых служб. На странице загрузки SP6a имеются стандартная версия и версия с усиленным шифрованием, на выбор пользователя. Другие исправления можно получить по адресам, указанным во врезке «URL для загрузки SP6a».

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

  1. Запустить Windows Explorer.
  2. Найти скрытый файл \%systemroot%system32schannel.dll.
  3. Щелкнув на нем правой кнопкой мыши и выбрав Properties, перейти на закладку Version. Если в описании стоит Export, то система использует 40-разрядный ключ, если же U.S. domestic version - 128-разрядный.

Для определения версии системы нужно запустить утилиту winver.exe из командной строки или через Start/Run.


URL ДЛЯ ЗАГРУЗКИ SP6A

При загрузке нужного файла следует помнить, что имена файлов для Intel заканчиваются на i, а для Alpha - на а.

Основная страница загрузки Windows NT 4.0 http://www.micosoft.com.ntserver/nts/downloads/default.asp.

Основная страница загрузки SP6a http://www.micosoft.com.ntserver/nts/downloads/default.asp recommended/sp6/allsp6.asp.

Исправления к SP6a: от SP6 к SP6a http://www.micosoft.com.ntserver/nts/downloads/default.asp winntsp/patch/6.0a/nt4/en-us/q246009i.exe для Intel и http://www.micosoft.com.ntserver/nts/downloads/default.asp winntsp/patch/6.0a/alpha/en-us/q246009a.exe для Alpha.

Исправления для Compaq http://www.compaq.com/support/files/alphant/firmware


URL ДЛЯ «ЗАПЛАТОК» К SP6A

Следующие ссылки указывают на исправления для US-версий системы. На ftp-сайте Microsoft нужно выбрать каталог, соответствующий стране, в ftp://ftp.microsoft.com/bussys/winnt/winnt-public/fixes.

Исправление для Rasman ftp://ftp.microsoft.com/bussys/winnt/winnt-public/fixes»/usa/nt40/hotfixes-postsp6/security/rasman-fix.

Исправление для Winlogon ftp://ftp.microsoft.com/bussys/winnt/winntpublic/fixes/usa/nt40/hotfixes-postsp6/winlogon-fix.

Исправление C2 http://www.micosoft.com.ntserver/nts/downloads/default.asp»winntsp/patch/sp6a_c2/nt4/en-us/q244599i.exe.

Исправление Syskey Lsa http://www.micosoft.com.ntserver/nts/downloads/default.asp» release.asp?releaseid-16798 для Intel. http://www.micosoft.com.ntserver/nts/downloads/default.asp 9 для Alpha.