SP5 содержит все сервисные пакеты более ранних версий и модули оперативной коррекции, так что вам нет необходимости загружать предыдущие «заплатки» — SP5 вполне достаточно, чтобы обновить систему NT 4.0.

По словам представителей Microsoft, SP5 не добавляет в операционную систему никаких новых возможностей, что собственно и объясняет, почему он появился так быстро после выпуска SP4. Во время подготовки этого материала, представители Microsoft подтвердили, что справочные материалы по SP5 пока не завершены, но, судя по имеющейся документации, этот сервисный пакет исправляет многие из известных ошибок NT 4.0. Представители Microsoft распределяют эти исправления по шести категориям: базовая операционная система, проблема 2000 года, сеть, оболочка, защита и другие. Вы можете найти список исправленных ошибок по каждой из шести категорий на Web-узле Microsoft, по адресу http://www.microsoft.com/ntserver/nts/downloads/recommended/sp5/updates.asp. На этом узле также имеются ссылки на полезные статьи Microsoft.

Что нового?

SP5 не добавляет в операционную систему никаких новых возможностей, что собственно и объясняет, почему он появился так быстро после выпуска SP4

Обо всех исправлениях, сделанных после появления SP3 и SP4 можно прочитать в статье «Hotfixes to Secure Systems», опубликованной в февральском выпуске журнала, а также в статье Марка Минаси «Service Pack 4.0» в мартовском выпуске. В данной статье я ограничусь описанием исправлений, реализованных в пакете SP5 и сделанных уже после появления SP4, а также расскажу о новых элементах SP4 (которые также можно найти и в SP5). Список новых возможностей SP5 можно найти в файле «Windows NT 4.0 Service Pack 5.0 Readme», который находится по адресу http://www.microsoft.com/ntserver/nts/downloads/recommended/sp5/readme.asp.

Исправления SP4, предлагаемые вместе с SP5

Помимо списка исправлений, внесенных в операционную систему, SP5 включает в себя исправление ряда ошибок, обнаруженных после выпуска SP4, о которых мы и поговорим. Информацию о каждом из исправлений и соответствующих узлах Web можно найти во врезке «Статьи Microsoft».

К примеру, файл update.inf, который Microsoft включила в состав SP4 для того, чтобы исправить библиотеку winprint.dll, содержит ошибочный путь. SP5 корректирует этот изъян. Чтобы в этом убедиться, прочитайте статью Microsoft «Windows NT 4.0 SP4 Setup Does Not Update Winprint.dll».

Модуль корректировки Post-SP4 Roll-up содержит исправления семи ошибок, которые Microsoft объединила в один файл, чтобы упростить установку. Этот пакет включает в себя TCPIP-Fix, Click-Fix, SMS-Fix, MSV1-Fix, Infget-Fix, Nprpc-Fix и Gina-Fix. Статья Microsoft «WinNT 4.0 Post-Service Pack 4 Hotfixes Combined into One Package» содержит подробности, касающиеся этого пакета корректировки. Пакет вносит следующие исправления.

TCPIP-Fix. После того, как вы загрузили SP4, стек TCP/IP может начать работать некорректно из-за ошибки инициализации, связанной с драйвером 3Com DynamicAccess. Эта ошибка возникает в многопроцессорных системах и может проявляться при работе с другими сетевыми драйверами. Детальное описание приводится в статье Microsoft «Intermediate Network Driver Causes STOP 0x0000001E on MP PC».

Click-Fix. SP4 некорректно маркирует дисковод Iomega Click 40! как диск и присваивает этому устройству имя B:. Для того, чтобы исправить эту ошибку, Microsoft выпустила новый драйвер, о чем подробно изложено в статье «Windows NT 4.0 Does Not Recognize ATAPI Iomega Click 40! Drive».

SMS-Fix. В случае интенсивной работы агента SNMP возникает утечка памяти. Причина этой ошибки состоит в том, что агент не освобождает буфер памяти. Детальное описание ошибки приводится в статье Microsoft «SNMP Agent Leaks Memory When Queried».

MSV1-Fix. Логическая ошибка в SP4 дает пользователям возможность интерактивно зарегистрироваться с пустым паролем и подключиться к совместно используемым ресурсам. Когда пользователи меняют свои пароли через клиент NT или Windows 9x, NT обновляет хеш-формы пароля для NT и LanManager в базе данных SAM. Однако, когда пользователь, чтобы поменять пароль, использует более старый клиент (например, DOS, Windows 3.1, Windows for Workgroups — WFW, OS/2 или Macintosh), NT сохраняет хеш-форму пароля LanManager, а хеш для NT присваивает нулевое значение. Когда пользователь из системы NT предпринимает попытку интерактивной регистрации или пытается подключиться по сети к совместно используемому ресурсу, процедура аутентификации NT использует для пароля хеш-форму NT. Если она имеет нулевое значение, NT считывает пароль LanManager для проверки. Из-за ошибки в SP4 процедура аутентификации NT будет использовать для проверки нулевое значение хеш-формы для NT. Если пользователи меняют свои пароли из старого клиента, они могут из системы NT зарегистрироваться по этой учетной записи бюджету с пустым паролем. Детальное описание приводится в статье Microsoft «MSV1_0 Allows Network Connections for Specific Accounts».

Infget-Fix. Некорректные URL позволяют организовать атаки с целью добиться отказа от обслуживания (Denial of Service, DoS), заставляя сервер использовать всю доступную память. Internet Information Server (ISS) 3.0 или 4.0 перестает отвечать или генерировать сообщения о нарушении прав доступа в том случае, если этому модулю не хватает памяти. Более подробное описание этой ошибки можно найти в статье Microsoft «Specially-Malformed GET Requests Can Create Denial of Service».

Nprpc-Fix. Статья Microsoft «Denial of Service in Applications Using RPC over Named Pipes» рассказывает об ошибке, связанной с обслуживанием удаленного вызова процедур в NT, из-за которой нарушитель может вызвать атаку DoS против файлов spoolss.exe или lsass.exe. Нарушитель использует именованные конвейерные соединения для пересылки случайных данных. Сервис RPC пытается закрыть эти соединения и привлекает для этой цели все ресурсы процессора, в результате создавая условия для DoS, поскольку система NT не в состоянии отвечать.

Gina-Fix. Нарушитель, который имеет физический доступ к консоли системы NT, может извлечь первую строку текста из буфера обмена зарегистрированного пользователя, передавая буферизованную информацию в поле «имя пользователя» в диалоговом окне Unlock Workstation. Подробное описание ошибки можно найти в статье Microsoft «WinNT Lets You Paste Text into Unlock Workstation Dialog Box».

Помимо этих исправлений в статье Microsoft «RRAS Computer Stops Responding to Incomming Calls Under Sterss» описывается еще одна ошибка SP5. Компьютер, на котором работает RRAS, по истечение определенного времени может перестать отвечать на входящие звонки. Эта ошибка вызвана тем, что буфер в файле kmddsp.tsp имеет недостаточно большой размер.

В SP4 отмечается ошибка, связанная с Microsoft Exchange Server, из-за которой SP4 заставляет сервисы NDISWAN Services возвращать IP-адреса в том порядке, в котором операционная система определяет их привязку к ресурсам. Вследствие ошибки Exchange Server не может зарегистрировать Internet-протоколы, использующие «не привязанные» IP-адреса. Об этом рассказывается в статье Microsoft «Exchange Protocols Fail After Applying Windows NT 4.0 SP4». Данная ошибка также может привести к сбою некоторых приложений Winsock, которые вызывают интерфейс GetHostByName API (например, приложение NetShow). Этой проблеме посвящены статьи Microsoft «GetHostByName API Returns Unbindable Addresses» и «GetHostByName() Returns IP Address of Disabled Interface».

Модернизация защиты

В состав SP5 также входят модули коррекции для изъянов в защите, из-за которых программа сохранения экрана дает пользователю возможность получить в системе более высокие привилегии доступа. Эта проблема возникает, когда программа Winlogon выполняет изменение аппаратных паролей, а NT не проверяет корректность внесения этих изменений. Если при изменении аппаратных паролей возникает ошибка, NT восстанавливает так, что начинает выполнять операции в рамках защищенного контекста встроенной учетной записи System. Из-за отсутствия проверки корректности, пользователи могут использовать свои программы для манипулирования пользовательскими установками, чтобы получить привилегии администратора в NT. Более подробную информацию об этой ошибке можно найти в статье Microsoft «Screen Saver Vulnerability Lets User Privileges Be Elevated».

В марте Microsoft сообщила об ошибке в NT 3.5 и более поздних версиях, из-за которой пользователи могут получить привилегии администратора системы при интерактивной регистрации (SP5 исправляет эту ошибку). NT хранит свои базовые DLL в виртуальной памяти и предоставляет файлы для совместного использования программам в системе, что позволяет избежать избыточных копий DLL в памяти и увеличивает уровень использования памяти и производительности системы. Когда программа вызывает функцию, которая предоставляет одну из таких библиотек, NT предоставляет ссылку на структуру данных списка KnowsDLLs (в Registry), чтобы определить местонахождение библиотеки в виртуальной памяти. Безопасная архитектура NT защищает размещенные в памяти DLL от изменения, но по умолчанию эта архитектура позволяет всем пользователям читать и записывать в список KnowsDLL.

Пользователи могут менять список KnowsDLLs и загружать в память специально искаженную DLL, которая называется также, как и системная DLL, а затем изменить запись в списке KnowsDLL, чтобы она указывала на искаженную копию. После этого NT отсылает программы, которые запрашивают системную DLL, к искаженной копии. Когда программа с очень большими привилегиями вызывает эту DLL, то библиотека позволяет предпринять злонамеренные действия (например, добавить пользователя в группу Local Administrators). В статье Microsoft «Restricting Changes to Base System Objects» объясняется, как защититься от этой ошибки за счет адаптации настроек ключей Registry.

Проблема 2000 года

Модернизация, касающаяся решения проблемы 2000 года и реализованная в SP5, позволяет устранить дефекты, связанные с тем, как файл mfc40.dll обрабатывает даты. К примеру, если программа передает библиотеке двузначное представление 1999 года, то есть 99, библиотека mfc40.dll добавляет к 99 число 1900, чтобы получить 1999 год. Если программа передает в DLL дату, к которой подобное преобразование неприменимо, то может возникнуть ошибка. Дефект проявляется, когда вы используете такую программу, как msinfo32.exe. Эта проблема описывается в статьях Microsoft «Command Line Switches Supported by the Y2K Update» и «Mfc40.dll May Cause Programs to Display Wrong Date After 01/01/2000».

Цена усилий

С момента появления SP4 компания Microsoft выпустила ряд исправлений для операционной системы. Хотя никогда не следует запускать сервисный пакет без предварительного тестирования, тем не менее, обратите внимание на SP5. Исправляемые им ошибки стоят усилий, которые вы потратите на его установку. Дополнительную информацию о том, как всегда иметь самую последнюю версию программного обеспечения, см. врезку «Будьте в курсе событий»

Об авторе

Марк Джозеф Эдвардс — журналист и сетевой инженер, занимающийся информационными технологиями более 16 лет. Консультант и автор книги Internet Security with Windows NT (29th Street Press). С нем можно связаться по адресу mark@ntshop.net или mje@winntmag.com.

Статьи Microsoft

«Windows NT 4.0 SP4 Setup Does Not Update Winprint.dll»

http://www.support.microsoft.com/support/kb/articles/q197/5/65.asp

«WinNT 4.0 Post-Service Pack 4 Hotfixes Combined into One Package»

http://www.support.microsoft.com/support/kb/articles/q195/7/34.asp

«Intermediate Network Driver Causes STOP 0x0000001E on MP PC» http://www.support.microsoft.com/support/kb/articles/q195/7/25.asp

«Windows NT 4.0 Does Not Recognize ATAPI Iomega Click 40! Drive»

http://www.support.microsoft.com/support/kb/articles/q195/5/40.asp

«SNMP Agent Leaks Memory When Queried»

http://www.support.microsoft.com/support/kb/articles/q196/2/70.asp

«MSV1_0 Allows Network Connections for Specific Accounts»

http://www.support.microsoft.com/support/kb/articles/q214/8/40.asp

«Specially-Malformed GET Requests Can Create Denial of Service»

http://www.support.microsoft.com/support/kb/articles/q192/2/96.asp

«Denial of Service in Applications Using RPC over Named Pipes»

http://www.support.microsoft.com/support/kb/articles/q195/7/33.asp

«WinNT Lets You Paste Text into Unlock Workstation Dialog Box»

http://www.support.microsoft.com/support/kb/articles/q204/8/02.asp

«RRAS Computer Stops Responding to Incomming Calls Under Sterss»

http://www.support.microsoft.com/support/kb/articles/q221/3/31.asp

«Exchange Protocols Fail After Applying Windows NT 4.0 SP4»

http://www.support.microsoft.com/support/kb/articles/q214/8/64.asp

«GetHostByName API Returns Unbindable Addresses»

http://www.support.microsoft.com/support/kb/articles/q217/0/01.asp

«GetHostByName() Returns IP Address of Disabled Interface»

http://www.support.microsoft.com/support/kb/articles/q216/0/91.asp

«Screen Saver Vulnerability Lets User Privileges Be Elevated»

http://www.support.microsoft.com/support/kb/articles/q221/9/91.asp

«Restricting Changes to Base System Objects»

http://www.support.microsoft.com/support/kb/articles/q218/4/73.asp

«Command Line Switches Supported by the Y2K Update»

http://www.support.microsoft.com/support/kb/articles/q221/1/20.asp

«Mfc40.dll May Cause Programs to Display Wrong Date After 01/01/2000»

http://www.support.microsoft.com/support/kb/articles/q218/8/77.asp


Будьте в курсе событий

Чтобы вовремя узнавать о появлении заплаток, исправляющих ошибки, подпишитесь на электронный бюллетени UPDATE и Security UPDATE, издаваемые, соответственно, еженедельно и два раза в неделю редакцией журнала Windows NT Magazine. Пауда Шарик и я оперативно представляем информацию о новых ошибках и их коррекции и подробно рассказываем, в чем состоят эти ошибки и как их исправить. Бюллетень новостей распространяется бесплатно. Подписаться на него можно по адресу http://www.winntmag.com.