На главную | Содержание | Назад | Вперёд
Наши друзья

 

 

Другие элементы и контейнеры системы безопасности

При добавлении системы Windows в домен создается учетная запись компьютера. Компь­ютеры в данном случае — это учетные записи, которыми пользуются машины для входа в сис­тему и получения доступа к ресурсам. Название учетной записи состоит из имени машины и знака доллара, например: имя_машины$.
Как можно догадаться, для входа в домен учетная запись компьютера должна предоста­вить какой-то пароль. Пароли для учетных записей компьютеров автоматически генерируют­ся и управляются контроллерами домена (domain controller). Хранение этих паролей и доступ к ним зачастую осуществляется так, как и к паролям учетных записей обычных пользователей (см. ниже раздел "Диспетчер SAM и служба Active Directory"). По умолчанию их смена проис­ходит каждые 30 дней, но системный администратор может установить любой другой период.
Основное предназначение учетных записей компьютеров заключается в создании защи­щенного канала для обмена информацией между компьютером и контроллером домена. По
умолчанию данные, передающиеся по этому каналу, не шифруются (хотя некоторая часть данных уже предварительно зашифрована, например хешированные пароли) и не проверяет­ся целостность полученных данных (что создает благоприятные условия для проведения атак посредника). Например, при входе пользователя в домен с одного из компьютеров этого до­мена аутентификационные данные передаются по защищенному каналу, установленному между компьютером пользователя и контроллером домена.
Зафиксировано не так много случаев, когда использование учетной записи компьютера приводило к серьезным проблемам системы безопасности, и мы не станем рассматривать их в этой книге. Но если системный администратор хочет настроить работу своего защищенного канала и повысить его безопасность, ОН может использовать настройки, приведенные в табл. 2.5 (доступны на консоли Domain Security Policy контроллера домена). Контроллер домена: Refuse machine Disabled account password charges (Запретить смену паролей для учетных записей компьютеров)
Компьютер домена (всегда): Digi- Enabled
tatty encrypt or sign secure channel
data (Использовать шифрование
или цифровые подписи для данных,
передаваемых по защищенному
каналу)
Компьютер домена (при Enabled возможности): Digitally encrypt se­cure channel data (Шифрование для защищенного канала данных)
Компьютер домена (при Enabled возможности]: Digitally sign secure channel data (Цифровые подписи для защищенного канала данных)
Компьютер домена: Disable machine Disabled account password changes (Запретить смену паролей для учетных записей компьютеров)
Компьютер домена: Maximum ma­chine account password age (Срок действия пароля для учетной записи компьютера)
Компьютер домена (Windows 2000 или старше): Require strong session key (Использовать сложные сеансовые ключи)
Лучше, чтобы учетные записи компьютеров управлялись автоматически
Позволяет использовать шифрование и проверку целостности данных для защищенного канала
Для устаревших клиентов
Для устаревших клиентов
30 дней
Enabled
Лучше, чтобы учетные записи компьютеров управлялись автоматически
По умолчанию установлен именно такой срок действия пароля, но его лучше задать явно
Позволяет использовать 128-разрядные сеансовые ключи для шифрования данных, передаваемых по защищенному каналу (по умолчанию применяются 64-разрядные ключи)
Шифрование и применение цифровых подписей для защищенного канала данных поддерживается только при установленном пакете обновлений Service Pack 6а для систем Windows NT и более поздних систем, и не под­держивается клиентами Windows 98 SE и более ранними версиями.
Ссылку на весьма полезное средство wsname для написания сценариев по смене имен компьютеров можно найти в разделе "Дополнительная литерату­ра и ссылки" в конце этой главы.
Права пользователей
Напомним основную цель злоумышленника.
Выполнить команды от имени наиболее привилегированной учетной записи пользователя.Мы уже рассказывали о некоторых из "наиболее привилегированных" учетных записях, например Administrator и LocalSystem. В чем же заключаются привилегии этих учетных записей? Если сказать кратко, то в правах пользователя. Права позволяют пользователям выполнять те или иные действия, например локальный вход в систему или отладку программ. Права обычно предоставляются группам, хотя можно задать их и для отдельной учетной записи (добавлять привилегии группам проще, нежели отдельным пользователям). Вот почему членство в груп­пах имеет такое большое значение.
Пользователю предоставляются права двух типов: права на вход (logon rights) и привилегии (privileges). Это простая классификация прав, которые предоставляются до и после аутенти­фикации учетной записи соответственно. В системе Windows Server 2003 доступны около 40 различных прав пользователей, но мы рассмотрим только наиболее важные из них с точки зрения безопасности (табл. 2.6).
Таблица 2.6. Рекомендациипопредставлению ripaB пользователей
Право
Рекомендация
Комментарий
Debug programs (Отладка программ)
Deny access to this computer from the network (Запретить доступ к компьютеру по сети)
Deny log on locally (Запретить локальный вход в систему)
Удалите это право для всех пользователей и групп (администратор сможет вернуть это право при необходимости)
Предоставить для Anonymous Logon (SID S-1-5-7), Administrator (RID 500), служебных учетных записей, Sup-port_388945a0 и Guests
Установить для служебных учетных записей
Deny log on through Terminal     Установить для служебных учетных
Services (Запретить вход я систему с помощью Terminal Services)
Shut down the system (Выключить систему)
записей и Administrator (RID 500)
Предоставляется для всех групп, которым требуется эта привилегия как часть выполняемых работ
Право Debug широко используется программами атак для доступа к особе важным разделам операционной системы
Смягчает последствия вредоносного использования локальной учетной записи
Administrator
Смягчает последствия использования хакером возможностей служебных учетных записей для всего домена, которые могут быть скомпрометированы на одном из компьютеров
Смягчает последствия использования хакером локальной четной записи Administrator и служебных учетных записей при попытках доступа с помощью Terminal Services
Мы предпочитаем предоставление этой привилегии для удаленного обслуживающего персонала, а не только для группы Administrators
Обратите внимание, что право "deny" ("запретить") имеет преимущество по сравнению с правом "allow" ("разрешить"), когда оба эти права установлены для одного объекта.
Ниже представлены права, которые появились в Windows Server 2003 и которых не суще­ствовало в Windows 2000.
▼ Allow log on Through Terminal Services (Разрешить вход в систему с помощью Terminal Services);
■ Deny log on through Terminal Services (Запретить вход в систему с помощью Terminal
Services);
■ Impersonates a client after authentication (Работать от имени клиента после
* Perform volume maintenance tasks (Выполнять задачи по обслуживанию томов).
Права, связанные со службой Terminal Services, были введены, чтобы "устранить пробел" в наборе прав "Allow/deny access to this computer from the network" ("Разрешить/запретить дос­туп к компьютеру по сети"), в котором не учитывалась служба Terminal Services. Право Impersonate a client after authentication (Работать от имени клиента после аутентификации) означает, что программы или службы, запускаемые после того; как пользователь зарегистри­ровался в системе, могут работать от имени этого пользователя. Для этого программа или служба должны уметь использовать параметры учетной записи зарегистрировавшегося поль­зователя, а не параметры своей собственной регистрации в системе. Таким образом удается блокировать атаки, при которых менее привилегированные учетные записи выдаются за бо­лее привилегированных клиентов (см. описание программы атаки для расширения привиле­гий с помощью именованных каналов в главе 6, "Расширение привилегий").
В конце следует особо напомнить о необходимости соблюдения принципа наименьших привилегий. Мы не раз видели, как слишком много людей получали права, эквивалентные правам системного администратора, для выполнения повседневных задач. Рассказ о правах пользователей в начале книги позволит избежать многих недоразумений при дальнейшем изучении материала. Войдите в систему как наименее привилегированный пользователь и за­пустите программу runas при необходимости расширения привилегий (см. главу 16, "Возможности и средства защиты в системах Windows").
Диспетчер SAM и служба Active Directory
После изучения базовых принципов безопасности, давайте более подробно рассмотрим методы управления учетными записями и паролями в системах семейства Windows NT. На всех компьютерах под управлением Windows NT и несетевых компьютерах под управлением Windows 2000 информация об именах учетных записей и паролях содержится в базе данных диспетчера системы защиты (служба SAM — Security Access Manager). Пароли хранятся в за­шифрованном виде, их невозможно расшифровать, пользуясь известными методами (хотя зашифрованное значение можно подобрать, как будет показано в главе 8, "Расширение сфе­ры влияния"). Процедура шифрования называется односторонней функцией (ОСФ) или ал­горитмом хеширования, значение хеш-функции расшифровать нельзя. В этой книге мы очень часто и очень подробно будем говорить о хеш-функциях. SAM является одним из пяти основных разделов реестра и реализуется файлом %syscemroot%\sy5tem32\conf ig\sam.
На контроллерах доменов под управлением Windows 2000 (и более новых версиях опера­ционной системы) имя учетной записи и хешированный пароль хранятся службой Active Directory (по умолчанию это файл %systemroot%\ntds\ntds.dit). Хешированные паро­ли хранятся в одинаковом формате, но доступ к ним осуществляется различным образом.
SYSKEY
При использовании NT хешированные пароли хранятся непосредственно в файле SAM. Начиная С версии NT4, пакет обновления 3. фирма Microsoft обеспечила возможность ис­пользования еще одного уровня шифрования для хешированных паролей SAM, который на­зывается SYSKEY. SYSKEY (сокращенное название от SYStcm KEY— системный ключ),
вычисляет случайный 128-разрядный ключ и этим ключом еще раз шифрует хешированные пароли (только хеш-функнии, а не сам файл SAM). Чтобы включить шифрование SYSKEY в NT4, необходимо выполнить команду SYSKEY (2).
Нажав кнопку Update в этом окне, вы получите возможность настроить другие опции SYSKEY, а именно — определить, где и как будет храниться SYSKEY. SYSKEY может хра­ниться в одном из трех режимов.
▼ Режим 1. Хранится в реестре и предоставляется автоматически во время загрузки (настройка по умолчанию),
■ Режим 2. Хранится в реестре, но заблокировано паролем, который необходимо ввести во время загрузки.
* Режим 3. Хранится на гибком диске и должно быть предоставлено во время загрузки.
Выбор этих режимов показан на следующем рисунке.
' £авжи1SsaSua--■—■■ . .--
BeqiKtb apoiiviDrt Eo be crjHed duriff tytien ' ■tat
Confirm' >- Г
Rsqiees a llojicji 6Ы> to be tiattiH durinQ
Slaesi Ьву я pott of lb? Cpwebno sjnism. f. SfrffMirfeactOT я retried duiig фЕввт|
ok
"; Caeel
Как и в Windows 2000, по умолчанию в Windows Server 2003 реализован режим 1, поэтому пароли, которые хранятся в базе данных SAM или в Active Directory, хешируются и шифруют­ся значением SYSKEY. Нет необходимости задавать эти настройки вручную в версиях опера­ционных систем, начиная с NT4 SP3 и старше. В главах 8, "Расширение сферы влияния", и 14, "Физические атаки", будут описаны методы применения ключа SYSKEY и действия злоумышленников для обхода этого механизма защиты.

 

На главную | Содержание | Назад | Вперёд
 
Яндекс.Метрика