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

 

 

Модель системы безопасности Windows Server 2003

Перед тем как приступать к изучению Windows Server 2003, важно понять, по крайней ме­ре, основные аспекты архитектуры этой системы. В основном эта глава предназначена для тех, кто плохо знаком даже с элементарными функциями обеспечения защиты в Win­dows Server 2003, поэтому опытные профессионалы могут спокойно пропустить эту информа­цию и приступать сразу к главе 3, "Предварительный сбор данных и сканирование".
Представленное здесь описание архитектуры безопасности в Windows Server 2003 не явля­ется полным и исчерпывающим. В конце главы приведено несколько ссылок на хорошие ис­точники информации по этой теме. Кроме того, мы настоятельно рекомендуем прочесть гла­ву 16, "Возможности и средства защиты в системах Windows". В этой главе подробно описа­ны возможности системы защиты Windows Server 2003, используя которые, можно противо­стоять многим из упомянутых в книге типов атак.
Задача данной главы — дать необходимый минимум информации, чтобы понять главную цель хакера, атакующего систему.
Выполнить команды от имени наиболее привилегированной учетной записи пользователя.
Начнем с описания понятий, необходимых для конкретизации этого утверждения.
Модель системы безопасности Windows Server 2003
Операционная система Windows NT (предшественник всех систем семейства Windows NT) разрабатывалась с нуля, а к числу основных целей относилось обеспечение надежной защиты системы и приведение ее в соответствие с требованиями TCSEC (Trusted Computer System Evaluation Criteria— критерии оценки надежной системы) министерства обороны США. TCSEC чаще упоминается как "Оранжевая книга". В этом документе определяются несколь­ко уровней надежности, от D до А1 (от низшего к высшему), которые используются для клас­сификации уровня безопасности систем. В 1999 году пакет обновления версии 6а для системы Windows NT получил оценку С2 в сетевой и локальной конфигурациях, что стало существен­ным достижением для коммерческой операционной системы массового производства. Сис­тема Windows 2000 получила аналогичную оценку в международной системе CC1TSE (Common Criteria for Information Technology Security Evaluation — общие критерии оценки безопасности информационной технологии), или просто СС (Common Criteria — общие кри­терии). Пакет обновления 3 Windows 2000 и версия Q326886 Hotfix, запущенные на специаль­но указанных платформах, были оценены как Уровень 4 (как тщательно разработанные, про­веренные и исправленные). Другую информацию о TCSEC, СС и оценке безопасности Win­dows 2000 вы можете найти в конце этой главы по ссылкам из раздела "Дополнительная лите­ратура и ссылки".
Компания Microsoft не анонсировала никакого плана, который бы позволил получить системе Windows Server 2003 более высокую оценку по рейтингу СС. В структуру же Win­dows 2000 обязательно должны входить следующие ключевые элементы (это далеко не пол­ный список):
т возможность защищенного входа в систему с идентификацией пользователей; ■ контрольдоступа по категориям пользователей; * аудит.
Эти три кита безопасности — аутентификация, авторизация и аудит, были встроены в семей­ство Windows NT с самого начала. Во всех системах этого семейства, включая и Win­dows Server 2003, эти возможности реализованы с помощью подсистемы безопасности (1).
Winlogon
Netlogon
Системные | потоки
Lsass
Active Directory
Сервер SAM
Msv1 O.d
Kerberos.i
Диспетчер системных служб
Вызываемые из ядра интерфейсы
Диспетчер ввода-вывода
Драйверы устройств и файловой системы
II II
9 Я 7? >§
* Active ^Directory.;
Пользовательский режим
Режим ядра
ti
3 | ф Ё
СО 5 l_ -■е­о
1 Э
II I &
Wn32USER.
GDI г;
Драйверы трафики
Ядро
Уровень аппаратной абстракции (HAL)
Аппаратные интерфейсы
(шины, устройства ввода-вывода, прерывания, интервальные таймеры, DMA, управление кэш-памятью и т.д.)
Рис. 2.1. Подсистема безопасности Windows 2000 (источник: Solomon D. and Russinovich М. Inside Mi­crosoft Windows, Third Edition, Microsoft Press. — Приводится с разрешения Microsoft Press)
В этой главе мы не собираемся углубляться в подробное описание всех элементов системы безопасности, но мы рассмотрим большую часть из них с практической точки зрения. Суть показанной схемы сводится к тому, что в Windows Server 2003 реализован диспетчер системы безопасности (служба SRM — Security Reference Monitor), который выполняется в высоко­привилегированном режиме ядра и проверяет все запросы ресурсов из кода, исполняющегося' в пользовательском режиме при работе приложений.
Драйверы устройств в Windows 2000 запускаются в режиме ядра (привилегированном режиме), поэтому на них не распространяются функции защиты операционной системы.
Диспетчер SRM выступает в роли хранителя ресурсов Windows Server 2003. Но в каких случа­ях он разрешает или запрещает доступ к ресурсу? Почти весь контроль доступа к ресурсам Win­dows Server 2003 осуществляется по отношению к элементам системы безопасности. Обсудим эти элементы более подробно, поскольку они относятся к первоочередным целям хакера.
Элементы системы безопасности
Элементами системы безопасности Windows Server 2003 являются: ▼ пользователи;
■ группы;
* компьютеры.
Теперь обсудим каждый элемент более подробно.
На контроллерах домена некоторые из описанных ниже элементов безопас­ности по умолчанию не показываются в интерфейсах служб Active Directory Users и Computers. Чтобы получить к ним доступ, нужно на консоли управле­ния (ММС— Microsoft Management Console) выбрать в меню Вид (View) ко­манду Допопнитепьные возможности (Advanced Features).
Пользователи
Каждый, кто хоть немного работал с системой Windows, знаком с системой учетных запи­сей пользователей. Учетная запись нужна для входа в систему и получения доступа К ресурсам системы и сети. И кто бы мог подумать, что в большинстве сетей учетные записи являются одним из самых слабых мест системы безопасности.
Учетная запись — это окружение, в котором выполняется большая часть кода операцион­ной системы. Другими словами, все программы в пользовательском режиме выполняются в контексте учетной записи пользователя, Даже для специальных программ, которые запус­каются до того, как кто-либо войдет в систему (например службы), тоже используются сис­темные учетные записи (например специальная учетная запись SYSTEM или LocalSystem).
Все команды, вызываемые пользователем, который успешно прошел процедуру аутентифи­кации в соответствии сданными учетной записи, выполняются с привилегиями этого пользова­теля. Таким образом, возможные действия выполняющихся программ ограничены привиле­гиями учетной записи, в контексте которой они выполняются. Цель хакера-злоумышленника — получить право на выполнение кода с максимально возможными привилегиями.
Понятие пользователи, т.е. реальные люди, следует отличать от понятия пользовательской учетной записи, которая представляет пользователя для программы и легко подменяется при известных имени и пароле. Хотя в книге мы иногда не делаем различий между пользователем и его учетной записью, помните об этом.
Встроенные учетные записи
В системе Windows Server 2003 существуют предопределенные встроенные учетные записи с уже заданным набором привилегий. К ним относится и запись локального администрато­ра — наиболее привилегированная учетная запись в Windows Server 2003 (в действительности максимальными возможностями обладает учетная запись SYSTEM, но пользователь Admin­istrator может выполнять команды в контексте записи SYSTEM, используя для запуска ко­мандного процессора службу планировщика). Некоторые из встроенных учетных записей Windows Server 2003 рассмотрены в табл. 2.1.

Таблица 2

юенные учетные записи в системах^Windows Server 2003

Название

Описание

SYSTEM или LocalSystem k&riinislratoT

Максимальные возможности на локальной машине; обычно не отображается с помощью стандартных средств пользовательского интерфейса [SID S-1-5-18)
По сути, максимальные возможности на локальной машине; может быть переименована, но не может быть удалена

Guest

Крайне ограниченные привилегии; по умолчанию отключена

SUPPORT_388945a0

Новая учетная запись в системах Windows ХР и Server 2003, может использоваться для удаленного администрирования посредством помощи (Help) или центра поддержки

lUSRjMffixocra

Используется для анонимного доступа к серверу IIS, член группы Guests

№АМ_имяхсета

В контексте зтой записи выполняются в не процессные приложения IIS, член группы

 

Guests

TSInternetUser

Используется службой Terminal Services Internet Connector Licensing для автоматической аутентификации удаленных пользователей [только в системах Win­dows 2000)

krbtgt

Запись службы Kerberos Key Distribution Center; есть только на контроллерах доменов, по умолчанию отключена

Служебные учетные записи
Термин служебная учетная запись (service account) — используется для обозначения учет­ной записи, от имени которой запускается служба. Как правило, служебные учетные записи не используются для входа в систему пользователей, а используются автоматически запускае­мыми демонами. Например, служба Indexing, которая предназначена для индексации содер­жимого и свойств файлов на локальных и удаленных компьютерах и хранится по адресу %systenuroot%\System32\cisvc.exe, может быть настроена на запуск при загрузке сис­темы с помощью панели управления Службы (Services). Чтобы этот исполняемый файл был запущен, про грамма должна пройти аутентификацию в операционной системе. По умолча­нию служба Indexing проходит аутентификацию и выполняется от имени учетной записи Lo­cal System. Служебные учетные записи можно назвать неизбежным злом для операционных систем Windows. Поскольку любой код должен выполняться в контексте учетной записи, то без них не обойтись. К сожалению, поскольку аутентификация служб должна выполняться автоматически, то пароли для доступа в систему должны предоставляться без какого-либо участия человека. Этого можно добиться одним из двух способов.
1. Хранить пароли для служебных учетных записей в месте, доступном для операцион­ной системы без вмешательства человека.
2. Создать программный интерфейс, который бы предоставлял все пароли для учетных записей без вмешательства человека.
Ни один из этих вариантов-нельзя назвать удачным с точки зрения безопасности. Но, как мы расскажем в разделе "Диспетчер SAM и служба Active Directory", оба этих метода можно усовершенствовать благодаря тому, что в системах семейства Windows NT пароли не хранятся в незашифрованном виде. Для сохранения их в безопасности используется функция хеширо­вания. И действительно, как можно представить, операционная система должна выполнить какое-то преобразование для второго варианта, чтобы идентифицировать пользователей, когда они вводят свои пароли. При этом операционная система может сравнить введенные пароли с паролями, хранящимися в файле.
Вместо использования этого стандартного механизма, компания Microsoft выбрала для аутентификации системных, учетных записей первый вариант. Вот цитата из документации;
Мы специально выделили этот фрагмент документации, поскольку данный принцип сви­детельствует об одном из основных недостатков системы безопасности Windows: если хакер сможет скомпрометировать систему из семейства Windows NT и получить привилегии сис­темного администратора, то он получит доступ к незашифрованным паролям служебных учетных записей. Это, несомненно, очень порадует пользователя, который уже получил пра­ва, эквивалентные правам системного администратора. Затем он захочет определить, как еще можно использовать служебные учетные записи.
Вот здесь и начинаются настоящие проблемы. Действие служебных учетных записей мо­жет распространяться на целый домен или даже на другие домены, с которыми установлены доверительные отношения (см. раздел "Доверительные отношения" ниже в этой главе). Та­ким образом подвергаются угрозе учетные записи в других доменах (более подробно об этом можно прочесть в главе 8, "Расширение сферы влияния").
^^^^Ц Мы настоятельно рекомендуем с помощью правил политики запретить в ком­пьютере ипи во всем домене интерактивный вход в систему с помощью слу­жебных учетных записей, чтобы этой возможностью доступа не воспользо­вался злоумышленник.

 

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