Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
88
Добавлен:
05.02.2016
Размер:
7.84 Mб
Скачать

421

WLX_SAS_ACTION_SHUTDOWN - пользователь потребовал завершить работу системы. Получив данное возвращаемое значение, Winlogon последовательно вызывает функции библиотеки GINA WlxLogojfn WlxShutdown.

Если пользователь нажал комбинацию Ctrl-Alt-Del, уже войдя в систему, Winlogon вызывает функцию WlxLoggedOnSas. GINA выводит на экран диалоговое окно и, в зависимости от решения пользователя, выполняет следующие действия:

если пользователь решил не предпринимать никаких действий, GINA

возвращает в Winlogon значение WLX_SAS_ACTION_NONE. Winlogon

возвращает систему в то же состояние, в котором она была до нажатия комбинации Ctrl-Alt-Del;

если пользователь желает просмотреть список активных процессов, GINA

возвращает значение WLX_SAS_ACTION_TASKLIST. Winlogon возвращает систему в состояние, в котором она была до нажатия комбинации Ctrl-Alt-Del и активизирует процесс Task Manager,

если пользователь желает заблокировать рабочую станцию, GINA

возвращает значение WLX_SAS_ACTION_LOCK_WKSTA. Winlogon

блокирует систему;

если пользователь желает выйти из системы, GINA возвращает значение

WLX_SAS_ACTION_LOGOFF. Winlogon в ответ вызывает функцию GINA WlxLogoff;

если пользователь желает завершить работу с компьютером, GINA

возвращает значение WLX_SAS_ACTION_SHUTDOWN, Winlogon

последовательно вызывает функции GINA WlxLogoff к WlxShutdown.;

если пользователь желает перезагрузить компьютер, GINA возвращает значение WLX_SAS_ACTION_SHUTDOWN_REBOOT. Winlogon

последовательно вызывает функции GINA WlxLogoff и WlxShutdown. По окончании выгрузки системы компьютер автоматически перезагружается;если пользователь желает, закончить работу с компьютером и выключить его, GINA возвращает значение WLX_SAS_ACTION_SHUTDOWN_ REBOOT_ POWER_OFF. Winlogon последовательно вызывает функции GINA WlxLogoff и WlxShutdown. По окончании выгрузки системы компьютер автоматически выключается. Если аппаратная часть компьютера не допускает программного отключения питания, данное возвращаемое значение имеет тот же эффект, что и WLX_SAS_ACTION_ SHUTDOWN;если пользователь желает изменить свой пароль, GINA выводит на экран соответствующее диалоговое окно, по окончании ввода пользователем нового пароля вызывает функцию WlxChangePasswordNotify и затем возвращает в Winlogon значение WLX_SAS_ACTION_PWD_ CHANGED.

422

Когда рабочая станция заблокирована, а пользователь нажал комбинацию

Ctrl – Alt - Del, Winlogon вызывает функцию GINA WlxWkstaLockedSas. GINA запрашивает у пользователя параметры идентификации и проверяет их. В зависимости от результата проверки GINA возвращает одно из следующих значений:

WLX_UNLOCK_WKSTA - разблокировать рабочую станцию;WLX_FORCE_LOGOFF - принудительный выход из системы с последующим входом в систему администратора;

WLX_NO_ACTION - рабочая станция остается заблокированной.

Если пользователь вошел в систему и один из процессов вызывает системную функцию ExitWindowsEx, Winlogon в зависимости от параметров

ExitWindowsEx вызывает либо WlxLogoff, либо последовательно WlxLogoff

и WlxShutdown. При этом соответственно, либо пользователь выходит из системы, либо система завершает работу.

Если GINA получает от пользователя нестандартную SAS, она вызывает функцию Winlogon WlxSasNotify, после чего Winlogon вызывает одну из вышеперечисленных функций GINA, в зависимости от контекста, в котором была получена SAS.

5.2. Протокол аутентификации Kerberos

Windows 2000 поддерживает несколько технологий аутентификации для различных целей. Основным методом идентификации в Windows 2000 является протокол аутентификации Kerberos.

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

423

Аутентификация выполняется следующим образом:

1.Клиент посылает запрос серверу аутентификации (Authentication Server, AS) на информацию, однозначно идентифицирующую некоторый нужный клиенту сервер.

2.Сервер AS передает требуемую информацию, зашифрованную с помощью известного пользователю ключа. Переданная информация состоит из билета сервера и временного ключа, предназначенного для шифрования (часто называемого ключом сеанса) С .

3.Клиент пересылает серверу билет, содержащий идентификатор клиента и ключ сеанса, зашифрованные с помощью ключа, известного серверу.

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

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

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

Протокол Kerberos состоит из нескольких субпротоколов (или протоколов обмена сообщениями). Существует два метода, которыми клиент может запросить у сервера Kerberos информацию, идентифицирующую определенный сервер. Первый способ предполагает, что клиент посылает AS простой текстовый запрос билета для конкретного сервера, а в ответ получает данные, зашифрованные с помощью своего секретного ключа. Как правило, в данном случае клиент посылает запрос на билет, позволяющий получить билет (Ticket Granting Ticket, TGT), который в дальнейшем используется для работы с выдающим билеты сервером (Ticket Granting Server, TGS). Второй способ предполагает, что клиент посылает TGT-билеты на TGS-сервер так же, как будто он обменивается информацией с другим сервером приложений, требующим аутентификации Kerberos.

424

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

Для идентификации партнеров по транзакции клиент посылает билет на сервер. Поскольку посылаемый билет "открыт" (некоторые его части зашифрованы, но они не помешают выполнить посылку копии) и может быть перехвачен и использован злоумышленником, для подтверждения истинности партнера, пославшего билет, передается дополнительная информация, называемая аутентификатором. Она зашифрована с помощью ключа сеанса и содержит отсчет времени, подтверждающий, что сообщение было сгенерировано недавно и не является копией оригинальной посылки. Шифрование аутентификатора с помощью ключа сеанса доказывает, что информация была передана истинным партнером по обмену данными. Поскольку, кроме запрашивающего партнера и сервера, никто не знает ключ сеанса (он никогда не посылается по сети в открытом виде), с его помощью можно полностью гарантировать истинность партнера. Целостность сообщений, которыми обмениваются партнеры, гарантируется с помощью ключа сеанса (передается в билете и содержится в информации идентификации партнера). Этот подход позволяет обнаружить атаки типа посылки злоумышленником перехваченной копии запроса и модификации потока данных. Это достигается генерированием и пересылкой контрольной суммы (хэш-функции) сообщения клиента, зашифрованной с помощью ключа сеанса. Безопасность и целостность сообщений, которыми обмениваются партнеры, может быть обеспечена шифрованием передаваемых данных с помощью ключа сеанса, передаваемого в билете и содержащегося в информации идентификации партнера.

5.3. Cсохранность паролей учетных записей

Несомненно, самым главным аспектом при анализе безопасности Windows 2000 является сохранность паролей учетных записей с правами Администратора, т.к. знание пароля позволяет получить полный доступ к этому компьютеру как локально, так и по сети.

Информация об учетных записях пользователей хранится в

"HKEY_LOCAL_MACHINESAM" (SAM - Security Account Manager) реестра.

А так как в Windows 2000 все ветки реестра "физически" расположены на диске в каталоге %SystemRoot%System32Config в нескольких файлах, то и эта ветка - не исключение. Она располагается в файле SAM. Этот файл по умолчанию недоступен для чтения никому, даже Администратору, но все-

425

таки к нему можно получить доступ. К файлу SAM (а также к остальным файлам без расширений в этой директории - system, software и др.) нет доступа по той причине, что Windows 2000 используют реестр "на лету" - т.е. при внесении в реестр изменений они становятся доступны сразу же и перезагрузка компьютера не требуется, но для этого системе нужно иметь монопольный доступ к файлам реестра.

Windows 2000 хранит пароли пользователей не в "явном" виде, а в виде хэшей (hash).

Рассмотрим хранение паролей пользователей подробнее. Среди сложной структуры SAM-файла нам интересна структура, называемая V-блок. Она имеет размер 32 байта и содержит в себе хэш пароль для локального входа - NT Hash длиной 16 байт, а также хэш, используемый при аутентификации доступа к общим ресурсам других компьютеров - LanMan Hash или просто LM Hash, длиной также 16 байт.

Алгоритмы формирования этих хэшей следующие:Формирование NT Hash:

1.Пароль пользователя преобразуется в Unicode-строку.

2.Генерируется хэш на основе данной строки с использованием алгоритма

MD4.

3.Полученный хэш шифруется алгоритмом DES, причем в качестве ключа используется RID (т.е. идентификатор пользователя). Это необходимо для того, чтобы два пользователя с одинаковыми паролями имели разные хэши. Все пользователи имеют разные RID-ы (RID встроенной учетной записи Администратора равен 500, встроенной учетной записи Гостя равен 501, а все остальные пользователи последовательно получают RID-ы, равные 1000, 1001, 1002 и т.д.).

Формирование LM Hash:

1.Пароль пользователя преобразуется в верхний регистр и дополняется нулями до длины 14 байт.

2.Полученная строка делится на две половинки по 7 байт и каждая из них по отдельности шифруется алгоритмом DES, на выходе которого получаем 8- байтный хэш - в сумме же имеем один хэш длиной 16 байт.

3.Далее LM Hash дополнительно шифруется так же, как и в шаге 3 формирования NT Hash.

Для повышения безопасности хранения паролей полученные хэши дополнительно шифруются еще одним алгоритмом с помощью утилиты syskey. Т.е. к вышеописанным алгоритмам добавляется еще 4-й шаг - получение с помощью syskey нового хэша от хэша, полученного на шаге 3.

Методы доступа к SAM-файлу:

426

Ни прочитать SAM-файл, ни отредактировать его нет никакой возможности - при попытке чтения этого файла Windows сообщает о нарушении совместного доступа, т.к. для системы этот файл всегда открыт и запись в него производит только сама Windows.

Однако, получить как данные из этого файла, так и доступ к нему, все-таки можно.

Информацию из него можно извлечь даже в работающей системе, но только из-под учетной записи Администратора. Здесь есть два метода получения данных - метод программы PWDUMP (который используется в программах PWDUMP, LC4, LC+4 и др.) и метод с использованием планировщика задач (используется в программе SAMInside).

Метод PWDUMP вкратце работает так - программа подключается к системному процессу LSASS и с его правами (и его же методами) извлекает хэши из ветки SAM реестра, т.е. фактически из SAM-файла.

Метод же планировщика работает так - по умолчанию в Windows 2000 системная утилита Scheduler имеет права пользователя SYSTEM, т.е. полный доступ к системе. Поэтому, если назначить Планировщику задание сохранить определенную ветку реестра в файл, к примеру, то он в назначенное время сохранит ее на диск. После чего из этого файла извлекаются хэши всех пользователей этого компьютера.

Если пароля Администратора нет и, соответственно, его прав тоже, тогда злоумышленнику остается делать следующее - если на компьютере установлено несколько операционных систем, то, загружаясь в любую из них (даже в Linux) можно получить доступ к системному диску Windows 2000 и скопировать SAM-файл в другой каталог, чтобы потом "в спокойной обстановке" загрузить его в нужную программу для восстановления из него паролей.

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

программа Offline NT Password & Registry Editor). Правда, для этого также необходимо загружаться в другую ОС и иметь полный доступ к системному диску Windows 2000.

Даже если системный диск Windows имеет файловую систему NTFS, то все равно можно получить к нему доступ, используя загрузочную дискету, созданную в программе NTFSDos Pro. Затем, после загрузки с нее, примонтировать нужный NTFS-раздел и скопировать с него нужные файлы.

В современных NT-системах применяется дополнительное шифрование хэшей алгоритмом syskey. До недавнего времени хэши из SAM-файла, скопированного из этих ОС, расшифровке не поддавались, т.к. этот алгоритм достаточно сложен, нигде не публиковался и практически не анализировался.

427

Но теперь можно извлекать хэши, даже из зашифрованных этим алгоритмом SAM-файлов, используя программу SAMInside. Правда, для декодирования хэшей этой программе необходим еще и файл SYSTEM, расположенный там же, где и SAM, т.к. в нем хранятся некоторые ключи реестра, необходимые для дешифрования хэшей алгоритмом syskey. Этот файл также открыт только для системы, но, если можно получить доступ к SAM-файлу, то и файл SYSTEM копируется теми же способами.

5.4. Особенности файловой системы WINDOWS 2000.

Система Windows 2000 Professional призвана стать основной операционной системой для настольных и портативных компьютеров в организации любого масштаба, заменив при этом Windows 95/98 в качестве стандартной платформы для деловых приложений. В процессе проектирования Windows 2000 Professional преследовались следующие цели:

Упростить работу с системой.

Сохранить традиционные достоинства систем Windows NT.Перенести в систему лучшие качества Windows 98.

Создать легко конфигурируемую настольную систему, позволившую снизить общую стоимость владения (Total Cost of Ownership, TCO).

Всистеме Windows 2000 Professional реализованы многие решения, призванные уменьшить затраты на эксплуатацию системы в корпоративных сетях. Расширены возможности обновления существующих систем при установке Windows 2000 Professional, упрощен и автоматизирован сам процесс инсталляции системы. Система имеет/развитые средства удаленного администрирования, установки и удаления программ и встроенной диагностики процесса загрузки.

Всочетании с Windows 2000 Server система Windows 2000 Professional

реализует возможности технологии IntelliMirror, объединяющей в себе новые

средства администрирования:

Централизованное администрирование корпоративной сети с

использованием шаблонов политик безопасности и Active Directory.Управление инсталляцией, обновлением, восстановлением и удалением

программных продуктов.

Поддержка рабочей конфигурации (документов, приложений и настроек

системы) для мобильных пользователей.

Удаленная инсталляция операционной системы с сервера, что упрощает замену или подключение компьютеров.

Операционная система Windows 2000 сохранила модульную архитектуру своих предшественниц Windows NT 3.51/4.0. Хотя система Windows 2000 и

428

унаследовала некоторые архитектурные решения, реализованные в NT 4.0, в целом новая версия существенно переработана по сравнению с предыдущей (с учетом всех сервисных пакетов), устранены многие недостатки, ошибки и т. п.

Новшества Windows 2000 в первую очередь распространяются не на ядро операционной системы или пользовательский интерфейс (если учитывать, что концепции Active Desktop известны еще по продукту Internet Explorer 4.0), а на многочисленные, очень важные подсистемы и службы, выводящие среду Windows NT на новый уровень. В новой системе использована большая часть ядра Windows NT 4.0, однако это не делает систему Windows 2000 менее "революционной". Новые функции и, базируясь на стабильном, проверенном ядре, обеспечат устойчивость системы в целом, что особенно важно для серверных платформ.

Наиболее важные средства, которые имеются в Windows 2000 Professional:Новый пользовательский интерфейс Windows, ориентированный на сеть Веб, — Active Desktop.

Браузер Internet Explorer — последняя версия популярного веб-браузера от Microsoft, обеспечивающая наиболее полную интеграцию с операционной системой.

Новая версия существующих программных средств для обработки факсов

— Personal Fax for Windows.

DirectX 7.0 — новейшая версия графических интерфейсов API от Microsoft, разработанная специально для возрастающих потребностей рынка компьютерных игр.

Поддержка Asynchronous Transfer Mode (ATM) средствами операционной системы, обеспечивающая приложениям все возможности ATM.Встроенная поддержка технологии Plug and Play, дающая толчок распространению NT на рынке переносных компьютеров.

Поддержка Universal Serial Bus (USB), обеспечивающая подключение к компьютеру множества (до 127 на один порт) разнообразных устройств с последовательной передачей данных со скоростью до 12 Мбит/с. Шина USB может стать чрезвычайно популярной среди конечных пользователей, поскольку для ее применения не требуются глубокие технические знания.

Поддержка нового стандарта для скоростных соединений IEEE 1394 (FireWare), позволяющего использовать полосу пропускания до 100, 200 и даже 400 Мбит/с.

Advanced Configuration and Power Interface (ACPI Power) —

усовершенствованный стандарт управления конфигурацией и питанием, обеспечивающий лучшее управление периферийными устройствами по сравнению с Windows NT 4.0 и полноценную реализацию Plug and Play.

429

Расширенное восстановление системы — технология, позволяющая пользователям сохранять целиком состояние системы и обеспечивающая ее восстановление после сбоя.

Сервер сценариев, Windows Scripting Host (WSH) — средство для выполнения сценариев, запускаемое из графической среды или из командной строки. Поддерживаются языки VBScript и JavaScript. Эта независимая от языка архитектура позволяет писать сценарии и на других языках, а также разрабатывать собственные интерпретаторы командных сценариев.

Планировщик задач (Task Scheduler) — новое средство для планирования (диспетчеризации) задач, идущее на смену команде AT.

Возможность вторичного входа в систему, служба RunAs — позволяет пользователю, уже зарегистрированному в системе, войти в систему под другим именем.

Консоль управления Microsoft Management Console (MMC) — новая оболочка для административных утилит, обеспечивающая универсальный пользовательский интерфейс для всех системных инструментов среды NT, собственных системных утилит операционной системы и средств администрирования, входящих в другие программные продукты.

Групповые политики (Group Policies) — наборы конфигурационных параметров, которые могут назначаться как изолированному компьютеру, так

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

приложений и работу с пользовательскими профилями.

Windows Installer — новая технология, управляющая процессом инсталляции программного обеспечения в среде Windows (входит в состав технологии IntelliMirror®). Наибольшей эффективности от ее использования можно добиться в домене Windows 2000. Технология Windows Installer является ключевым элементом для полной реализации продвигаемой компанией Microsoft методологии ZAW (Zero Administration for Windows,

Нулевое администрирование Windows); с ее помощью можно значительно уменьшить вероятность конфликтов DLL и улучшить конфигурируемость

настольных приложений.

Поддержка FAT32, улучшенной версии файловой системы FAT (File

Allocation Table), используемой в Windows 95 OSR2, а также в Windows 98.

Улучшенная версия файловой системы NT File System (NTFS), работающей быстрее и имеющей множество новых возможностей, таких как в системе Windows 2000 Professional имеется клиентское программное обеспечение, позволяющее использовать следующие возможности, реализованные в сетях

идоменах Windows 2000:

 

 

430

Средства

управления

корпоративными ресурсами с помощью веб-

технологий

(Web-Based

Enterprise Management, WBEM) — стандарт,

призванный упростить управление драйверами и приложениями, расширить возможности администрирования и, как следствие, снизить ТСО.Распределенная модель компонентных объектов (Distributed COM, DCOM) — платформа для построения распределенных приложений.

Active Directory Services Interface (ADSI) — стандартный интерфейс для разнообразных служб каталогов; обеспечивает также унифицированный доступ к другим каталогам, для которых имеется соответствующий поставщик услуг (ADSI-provider).

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

Служба очередей, Message Queuing — система передачи сообщений и запросов, реализующая надежную доставку сообщений и данных в распределенной среде.

Службы терминалов, Terminal Services — входившие ранее в самостоятельный продукт, Windows NT 4.0 Terminal Edition, службы терминалов теперь являются стандартным компонентом серверных версий Windows 2000 и позволяют клиентам Windows for Workgroups, Windows 9x, Windows NT 3.51 и 4.0 и Windows 2000 Professional, а также

Windows-терминалам удаленно (в локальной сети или по коммутируемым линиям) выполнять 16- и 32-разрядные приложения на серверах Windows 2000, либо администрировать их.

Веб-сервер (в составе служб Internet Information Services, IIS) — последняя версия Интернет-сервера от Microsoft, позволяющего легко реализовать на отдельном компьютере службы FTP и HTTP.

Аутентификация Kerberos — протокол безопасности, используемый в распределенных средах для аутентификации пользователей. Стандартный протокол аутентификации компьютеров с Windows 2000 в доменах

Windows 2000.

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

5.5. Особенности файловых систем FAT32 и NTFS

Соседние файлы в папке Информационная безопасность