Docsity
Docsity

Подготовься к экзаменам
Подготовься к экзаменам

Учись благодаря многочисленным ресурсам, которые есть на Docsity


Получи баллы для скачивания
Получи баллы для скачивания

Заработай баллы, помогая другим студентам, или приобретай их по тарифом Премиум


Руководства и советы
Руководства и советы

Анализ системы безопасности Microsoft Windows 2000 Advanced Server и стратегий ее использования реферат по информатике , Сочинения из Информатика

Анализ системы безопасности Microsoft Windows 2000 Advanced Server и стратегий ее использования реферат по информатике

Вид: Сочинения

2016/2017

Загружен 11.04.2017

refbank13217
refbank13217 🇷🇺

10 документы

1 / 44

Toggle sidebar

Сопутствующие документы


Частичный предварительный просмотр текста

Скачай Анализ системы безопасности Microsoft Windows 2000 Advanced Server и стратегий ее использования реферат по информатике и еще Сочинения в формате PDF Информатика только на Docsity! Тема курсового проекта: «Анализ системы безопасности Microsoft Windows 2000 Advanced Server и стратегий ее использования» Основные разделы курсового проекта: 1. Сетевые операционные системы. 2. Философия и архитектура Microsoft Windows 2000 с точки зрения безопасности. 3. Разработка программы определяющей сетевое имя и ip-адрес компьютера (рабочей станции). Рекомендованная литература: 1. В. Олифер Н. Олифер. Сетевые операционные системы – С. Петербург.: Питер., - 2003. 2. Мэтью Штребе. Windows 2000: проблемы и решения. Специальный справочник – С.Петербург.: Питер., -2002. 3. Криста Андерсон. Администрирование дисков в Windows 2000.-Журнал "Windows 2000 Magazine", -03/2000//по материалам сайта http: www.citforum.ru 4. Марк Джозеф Эдвард, Дэвид Лебланк. Где NT хранит пароли. - Журнал "Windows 2000 Magazine", -02/1999 //по материалам сайта http: www.citforum.ru Дата выдачи задания «____»_____________2004 года Руководитель курсового проекта Вступление При создании системы безопасности новой ОС Windows 2000 Advanced Server разработчики фирмы Microsoft постарались учесть как существующий опыт использования системы безопасности Windows NT 4.0, так и реализовать новые наборы механизмов и протоколов безопасной работы с информацией. Windows NT 4.0 выбрана не случайно: она позиционируется как ОС для предприятий, обладает встроенными возможностями разграничения доступа к ресурсам и за 6 лет эксплуатации хорошо зарекомендовала свои существующие и потенциальные возможности безопасности. Но если заглянуть в Windows 2000 Advanced Server, то, очевидно, что, несмотря на большое количество механизмов безопасности, внесенных в новую ОС из Windows NT 4.0, все они претерпели существенные изменения в сторону увеличения удобства, надежности и функциональности. Несмотря на то что, судя по пользовательскому интерфейсу, Windows 2000 Advanced Server больше похожа на Windows 98, на самом деле она является преемником Windows NT и даже называлась Windows NT 5 на первом этапе работы над бета-версией. Хотя 2000 и базируется на Windows NT, операционная система 0 0 1 Fбыла кардинально усовершенствована и обнов лена, был также полностью 0 0 1 Fпересмотрен интерфейс администрирова ния. NT 4 отличалась от NT 3.51 главным 0 0 1 Fобразом концепцией пользо вательского интерфейса в виде рабочего стола, большинство средств администрирования остались теми же. В Windows 2000 Advanced Server 0 01 F из менился каждый инструмент администрирования. Все средства 0 0 1 Fадми нистрирования были унифицированы путем преобразования в 0 0 1 F«оснаст ки» (snap-in) псевдоиерархического средства управления Microsoft Management Console (консоль управления Microsoft, MMC). Система Windows 2000 Advanced Server компании Microsoft обеспечивает возможность безопасного доступа к ресурсам системы. Если для вас, самым важным ресурсом, подлежащим защите, являются файлы, можно настроить систему так, чтобы иметь возможность контролировать то, как другие пользователи читают, записывают, создают и изменяют файлы и папки на вашем компьютере. Это возможно только при использовании системы NTFS. Система была создана для Windows NT, предшественника Windows 2000 Advanced Server, и является одной из трех систем, которые можно использовать на жестком диске компьютера. сервером. В зависимости от того, какой ресурс сервера является разделяемым, он называется файл-сервером, факс-сервером, принт-сервером, сервером приложений и т.д. В сети с выделенным сервером все компьютеры в общем случае могут выполнять одновременно роли и сервера, и клиента, эта сеть функционально не симметрична: аппаратно и программно в ней реализованы два типа компьютеров - одни, в большей степени ориентированные на выполнение серверных функций и работающие под управлением специализированных серверных ОС, а другие - в основном выполняющие клиентские функции и работающие под управлением соответствующего этому назначению варианта ОС. Функциональная несимметричность, как правило, вызывает и несимметричность аппаратуры - для выделенных серверов используются более мощные компьютеры с большими объемами оперативной и внешней памяти. Таким образом, функциональная несимметричность в сетях с выделенным сервером сопровождается несимметричностью операционных систем (специализация ОС) и аппаратной несимметричностью (специализация компьютеров). В одноранговых сетях все компьютеры равны в правах доступа к ресурсам друг друга. Каждый пользователь может по своему желанию объявить какой-либо ресурс своего компьютера разделяемым, после чего другие пользователи могут его эксплуатировать. В таких сетях на всех компьютерах устанавливается одна и та же ОС, которая предоставляет всем компьютерам в сети потенциально равные возможности. В отличие от сетей с выделенными серверами, в одноранговых сетях отсутствует специализация ОС в зависимости от преобладающей функциональной направленности - клиента или сервера. Все вариации реализуются средствами конфигурирования одного и того же варианта ОС. Сетевые операционные системы имеют разные свойства в зависимости от того, предназначены они для сетей масштаба рабочей группы (отдела), для сетей масштаба кампуса или для сетей масштаба предприятия. 1.2. Серверные системы: история создания, основные версии. Серверные системы должны позволять первоначальный запуск в небольшой конфигурации и обеспечивать возможность расширения по мере роста потребностей. Электронная торговля по Интернету требует активного и быстрого увеличения размеров систем. Поставщикам услуг, объединяющим обработку приложений в большие узлы, также требуется динамичный рост систем. Масштаб таких узлов увеличивается как путем «роста вверх» (заменой серверов на более мощные), так и путем «роста вширь» (добавлением дополнительных серверов). Совокупность всех серверов, приложений и данных некоторого вычислительного узла называется также фермой. Фермы имеют множество функционально специализированных служб, каждая со своими собственными приложениями и данными (например, служба каталогов, безопасности, HTTP, почты, баз данных и т. п.). Ферма функционирует как подразделение — имеет единый обслуживающий персонал, единое управление, помещения и сеть. Для обеспечения отказоустойчивости аппаратное и программное обеспечение, а также данные фермы дублируются на одной или нескольких физически удаленных фермах. Такой набор ферм называют геоплексом. Геоплекс может иметь конфигурацию активный-активный, в которой все фермы несут часть нагрузки, или активный-пассивный, при которой одна или несколько ферм находятся в готовом резерве. Начало работ по созданию Windows NT приходится на конец 1988 года. Сначала Windows NT развивалась как облегченный вариант OS/2 (OS/2 Lite), который за счет усечения некоторых функций мог бы работать на менее мощных машинах. Однако со временем, увидев как успешно принимается потребителями Windows 3.0, Microsoft переориентировалась и стала разрабатывать улучшенный вариант Windows 3.1. Новая стратегия Microsoft состояла в создании единого семейства базирующихся на Windows операционных систем, которые охватывали бы множество типов компьютеров, от самых маленьких ноутбуков до самых больших мультипроцессорных рабочих станций. Windows NT, как было названо следующее поколение Windows-систем, относится к самому высокому уровню в иерархии семейства Windows. Эта операционная система, первоначально поддерживавшая привычный графический интерфейс (GUI) пользователя Windows, явилась первой полностью 32-разрядной ОС фирмы Microsoft. Win32 API - программный интерфейс для разработки новых приложений - сделал доступными для приложений улучшенные свойства ОС, такие как многонитевые процессы, средства синхронизации, безопасности, ввода-вывода, управление объектами. Первые ОС семейства NT - Windows NT 3.1 и Windows NT Advanced Server 3.1 появились в июле 1993 года. В августе 1996 года вышла очередная версия Windows NT 4.0. Сначала предполагалось, что эта очередная версия Windows NT получит номер 3.52, однако ей был присвоен номер 4.0, который раньше упоминался в компьютерной прессе в связи с другой ожидаемой версией Windows NT, имеющей кодовое название Cairo. Новшества, внесенные в Windows NT Server 4.0, были связаны с улучшением интерфейса пользователя, расширением поддержки Internet, появлением новых и модернизацией существующих инструментов администрирования и повышением производительности системы. 2. Системы семейства Windows NT. При разработке Windows NT 4.0 Microsoft решила пожертвовать стабильностью ради производительности. С этой целью были внесены изменения в архитектуру: библиотеки менеджера окон и GDI, а также драйверы графических адаптеров были перенесены из пользовательского режима в режим ядра. В Windows NT 4.0 было внесено много существенных изменений, среди которых наиболее значительными являются следующие: • реализация интерфейса в стиле Windows 95; • ориентировка в сторону Internet и intranet; • архитектурные изменения, позволившие резко повысить производительность графических операций; • модификация средств взаимодействия с NetWare - Gateway и клиент NCP поддерживают теперь NDS; • поддержка многопротокольной маршрутизации; • появление в Windows NT 4.0 эмулятора Intel'овских процессоров для RISC- платформ. Помимо внешних изменений, модернизация графического интерфейса не сильно отразилась на методах управления сетью. Базовый инструментарий администратора Windows NT Server остался прежним. Программы User Manager for Domains, Server Manager, Disk Administrator, Event Viewer, Performance Monitor, DHCP Manager, WINS Manager, Network Client Administrator, License Manager и Migration Tool for NetWare не претерпели существенных изменений. Remote Access Administrator также не изменился, он был перенесен из отдельной папки в меню Administrative Tools. Редактор системной политики System Policy Editor, совместимый как с Windows NT, так и с Windows 95, заменил редактор профилей пользователей User Profile Editor, знакомый по версиям Windows NT Server 3.x. В версию 4.0 вошли четыре дополнения: административные программы-мастера Administrative Wizards, System Policy Editor, а также расширенное средство Windows NT Diagnostics и программа Network Monitor (программа мониторинга работы сети, ранее поставлявшаяся только в составе продукта Microsoft Systems Management Server). Кроме того, в состав Windows NT 4.0 вошла Web-ориентированная утилита администрирования, открывающая доступ к средствам администрирования Windows NT из любого Web-броузера. Windows 2000 — следующее воплощение Windows NT, которую Microsoft создала для оказания непосредственной конкуренции OS/2, NetWare и UNIX на 0 0 1 Fрынках файловых серверов и небольших серверов при ложений. В процессе создания бета-версии Windows 2000 называлась Windows NT 5, однако Microsoft изменила имя на Windows 0 01 F 2000, что бы уменьшить путаницу среди клиентов после того, как они закончат работу с продуктами основанного на MS-DOS трека разработок Windows 9х. Для того чтобы в условиях жесткой конкуренции Windows 2000 достигла успеха как сетевая операционная система, Microsoft спроектировала поддержку некоторых важных вычислительных технологий. Это следующие ключевые технологии: • многопроцессорная обработка; • многопоточность; • поддержка больших приложений; • платформонезависимость; • всеобъемлющая безопасность; • обратная совместимость. Многие функции Windows 2000, такие как безопасность дисков и возможности сетевого взаимодействия, в действительности являются функциями служб и 0 0 1 Fдрайверов, работающих поверх этой базовой ар хитектуры. 3. Анализ безопасности Windows 2000 Advanced Server. 3.1. Теория Безопасности Когда Windows NT впервые появилась в 1993 г., под безопасностью 0 0 1 Fподразумевались меры предохранения важной информации на серве ре от 0 0 1 Fпросмотра не имеющими на то прав пользователями и, возмож но, использование безопасности обратного вызова для пользователей удаленного доступа для контроля 0 0 1 Fза входящими телефонными под ключениями к системе. Windows NT считалась безопасной, потому что она использовала однонаправленные хэш-значения паролей Криптография и шифрование играют важную роль в безопасности Windows 2000. Все новые возможности обеспечения безопасности Windows 2000 основаны на криптографии. В отличие от этого, в первом выпуске Windows NT криптография 0 0 1 Fиспользовалась только для хэширова ния паролей. В течение периода использования Windows NT 0 01 F 4 в опе рационную систему были добавлены разнообразные элементы крипографии, но они не обрабатывались согласованно и безопасно. Windows 0 01 F 2000 меняет такое положе ние дел, используя Active Directory как контейнер практически для всей конфигурации, связанной с безопасностью, и 0 0 1 Fприменения по литик. Windows 2000 использует шифрование (encryption) в трех жизненно важных целях: • для подтверждения идентичности принципала безопасности; • для подтверждения достоверности содержимого сообщения или файла; • чтобы скрыть содержимое хранилища или потока данных. Шифр (cipher) — это алгоритм шифрования, он защищает сообщение, переупорядочивая его или осуществляя изменения в кодировании, но не в смысловом значении сообщения. Код (code) — это согласованный способ 0 0 1 Fсохранения тайны сообщений между двумя или более лично стями. Ключ (key) — это небольшая порция информации, которая необходима для расшифровки 0 0 1 Fсообщения, обычно в виде значения, ис пользуемого в шифре для зашифровки 0 0 1 Fсообщения. Ключ должен дер жаться в секрете, для того чтобы сообщение оставалось закрытым. 3.1.2. Алгоритмы шифрования Один из алгоритмов, который был разработан в секрете, но потом стал 0 0 1 F 0 0 1 Fдо ступен для общественного использования, так же как и для государствен ного (но только для информации «Unclassified but Sensitive», несекретной, но важной), — это алгоритм Data Encryption Standard (стандарт) шифрования данных), или DES. Это симметричный алгоритм, что значит, что один и тот же ключ используется и для шифрования, и для расшифровки; он был предназначен для использования 56- разрядно-З го ключа. DES широко используется в коммерческом программном обеспечении и в устройствах связи, поддерживающих шифрование. RSA (названный по именам своих создателей, Rivest, Shamir и Adleman) — это алгоритм, который не был разработан правительственным агентством. Его создатели воспользовались вычислительно-затратной проблемой разложения на простые числа 0 0 1 Fдля создания асимметрично го (asymmetric) алгоритма, или алгоритма открытого ключа (public key), который может быть использован и для шифрования, и для 0 0 1 Fци фровых подписей. RSA с тех пор стал очень популярной альтернативой DES. RSA используется рядом компаний по производству 0 01 Fпрограмм ного обеспечения, чьи продукты должны осуществлять безопасные соединения через небезопасный Интернет (такие, как web-браузеры), в числе которых Microsoft, Digital, Sun, Netscape и IBM. 0 0 1 FЭти шифры не единственно возможные для использова ния в компьютерах и 0 0 1 Fсетях. Правительства разных стран США и бывшего СССР активно раз рабатывали коды и шифры, много частных лиц (особенно за последнее десятилетие) внесли вклад в развитие криптографии. GOST (ГОСТ) был разработан в бывшем СССР, FEAL был разработан NTT в Японии, LOKI был разработан в Австралии и IDEA — в Европе. Большинство этих шифров используют запатентованные алгоритмы, 0 0 1 Fкоторые дол жны быть лицензированы для коммерческого использования, но не все (например, Blowfish 0 01 F). Каждый шифр обладает достоинствами и недо статками. Все эти шифры обладают одним слабым местом: если известен шифр, который использовался для зашифровки сообщения, но не известен ключ, можно использовать ряд атак для того, чтобы попытаться декодировать сообщение, в том числе и метод «грубой силы», пытаясь перепробовать все возможные ключи. Назначение шифров, в конечном итоге, — скрывать информацию. Противоположностью сокрытия информации являются попытки раскрыть, что же было засекречено, и прогресс в области взлома (breaking) кодов (или расшифровки кодов без ключа) идет в ногу с разработками в области создания кодов. 0 0 1 FДея тельность по осуществлению попыток взлома кодов называется 0 0 1 Fкрипто анализом (cryptanalysis 0 0 1 F), а люди, которые взламывают коды, называют ся криптоаналитиками (cryptanalyst). На системы безопасности может быть произведен ряд криптоаналитических атак различных типов. Атака перебором ключей. Перебор пространства ключей (keyspace search) подразумевает проверку всех возможных ключей, которые могли использоваться для зашифровки сообщения. Известный исходный текст. Для многих шифров криптоаналитик может сократить число перебираемых возможных ключей, если уже известен исходный текст зашифрованного сообщения. Линейный и дифференциальный криптоанализ. Криптоаналитик может также искать математические совпадения во всех собранных зашифрованных текстах, которые были зашифрованы при помощи одного ключа. Существует один шифр — одноразовая подстановка (one-time pad) — который 0 0 1 Fнельзя разгадать, если нет ключа, даже имея в распоря жении все оставшееся время 0 0 1 Fсуществования вселенной и все теорети чески возможные вычислительные 0 0 1 Fвозможности. К сожале нию, требования этого шифра делают его непригодным к 0 0 1 Fиспользова нию, за исключением определенных видов коммуникаций, не 0 0 1 Fтребую щих высокой пропускной способности. 3.1.3. Симметрические функции Если один и тот же ключ может быть использован для зашифровки или расшифровки сообщения, то такой шифр использует симметрическую функцию (symmetric function 0 01 F). Один ключ должен быть и у отправи теля, и у получателя. Ряд симметричных шифров используется и в программном, и в аппаратном обеспечении. Получить представление о возможных шифрах можно, сравнив следующие три. • DES. IBM и американское Управление национальной безопасности (National Security Agency, NSA) объединили усилия для разработки этого шифра. Он устойчив 0 0 1 Fк дифференциальному криптоанали зу, но поддается линейному криптоанализу. 0 0 1 FДлина ключа составля ет только 56 бит, что сильно облегчает возможность попробовать все возможные ключи методом грубой силы для зашифрованного, текста. DES широко применяется в программном и аппаратном обеспечении шифрования. Это стандарт ANSI. Windows 2000 peaлизует и 40-битный DES, и 168- битный DES1 (triple-DES (тройной DES) — DES с тремя непрерывными ключами). • IDEA 0 01 F. Этот шифр обладает ключом длиной 128 бит — значитель но больше, чем использует DES 0 01 F. В то время как обладающая серь езной мотивацией и финансированием организация или большая команда хакеров может взломать закодированное DES-сообщение, большое пространство ключей делает неосуществимой атаку на IDEA по методу грубой силы. IDEA был разработан как шифр, неуязвимый для линейного и дифференциального криптоанализа. IDEA запатентован в Европе и США. Blowfish. Этот шифр может использовать ключ длиной от 32 до 448 бит, позволяя выбрать степень секретности сообщения. 3.1.4. Однонаправленные функции При наборе пароля для входа в Windows 2000, он шифруется и сравнивается с 0 0 1 Fхранимым зашифрованным значением паро ля. Пароль сохраняется при помощи однонаправленной функции (one-way function), также называемой хэш (hash), trap- door, digest или fingerprint1. Хэш-функции также могут применяться для других целей. Например, можно использовать хэш-функцию, чтобы создать «отпечатки пальцев» файлов (создать цифровые отпечатки пальцев, или хэш-значение, которое будет уникально для данного файла). Хэш-функция может давать результат, который будет гораздо меньше, чем входной текст, хэширование занимающего много мегабайтов документа текстового процессора, например, может дать 128-разрядное число. Хэш-значение 0 0 1 Fтакже уникально для файла, который его породил; практически невоз можно создать другой файл, который произвел бы то же хэш-значение. Одна из особенностей хэш-функций (особенно дающих короткие хэш- значения) — это то, что все хэш-значения равновероятны. Следовательно, практически невозможно создать другой файл хэш-значение для которого совпадет с имеющимся. Некоторым хэш-функциям требуется ключ, другим — нет. Хэш-функция с ключом может вычисляться только кем-либо (или чем-либо), имеющим этот ключ. 3.1.5. Шифрование с открытым ключом В то время как симметричные шифры используют один ключ для 0 0 1 Fзаши фровки и расшифровки сообщений, шифрование с открытым ключом (public key encryption), или шифр с открытым ключом (public key cipher), использует для 0 0 1 Fрас шифровки ключ, отличный от использованного при шифровании. Это сравнительно новая разработка в криптографии, и она решает многие давнишние проблемы систем криптографии, такие как способ передачи секретных ключей в первый раз. 0 0 1 FПроблема симметричных шифров состоит в следующем: и отправи тель, и получатель должен иметь один и тот же ключ для того, чтобы обмениваться зашифрованными сообщениями через небезопасный канал передачи данных. Если 0 0 1 Fдве стороны решат обмениваться зак рытыми сообщениями или если между двумя 0 0 1 Fустройствами в компью терной сети или двумя программами должен быть 0 0 1 Fустановлен безопас ный канал, две стороны коммуникации должны принять решение об общем ключе. Каждая сторона легко может выбрать ключ, но у этой 0 0 1 Fстороны не будет никакого способа отправить этот ключ другой сто роне, не подвергаясь риску перехвата ключа по дороге. При использовании шифра с открытым ключом один ключ (открытый ключ, public key) используется для шифрования сообщения, а другой ключ (закрытый ключ, private key) — это единственный ключ, который может расшифровать сообщение. Кто угодно, имея ключ, может зашифровать сообщение, расшифровать которое может только конкретный пользователь. Безопасные шифры с открытым 0 0 1 Fключом страдают от одной пробле мы — они медленны, гораздо медленнее, чем или телефонные линии в незащищенном виде. Тем не менее Windows 2000 0 0 1 Fпринимает неза шифрованные пароли от старых сетевых клиентов LAN Manager. Не каждый протокол аутентификации зашифровывает имя пользователя и 0 0 1 Fпа роль, этого не делает SLIP Telnet и FTP. Службу Telnet в Windows 2000 можно сконфигурировать для работы только с хэш-значениями Windows NT, а не с паролями в виде простого текста. РРР может шифровать, если и удаленный клиент, и сервер сконфигурированы таким образом. Windows NT по умолчанию требует шифрованной аутентификации. Windows 2000 использует безопасную систему аутентификации Kerberos, основанную на секретных ключах. 3.3. Стеганография Стеганография (steganography 0 01 F) — это процесс сокрытия за шифрованных 0 0 1 Fфайлов в таком месте, в котором вряд ли кто-либо смо жет их обнаружить. Зашифрованные файлы выглядят как случайные числа, поэтому все, что также выглядит как случайные числа, может спрятать зашифрованное сообщение. 0 0 1 FНапример, в многоцветных графических изображе ниях бит нижних разрядов в каждом пикселе изображения не сильно влияет на качество всего изображения. 0 0 1 FМожно спрятать зашифрован ное сообщение в графический файл, заменяя младшие биты битами своего сообщения. Младшие биты звуковых файлов с высокой 0 0 1 Fточно стью воспроизведения — еще одно хорошее место для зашифрованных данных. Можно даже тайно обмениваться с кем-либо 0 01 Fзашифрованны ми сообщениями, отправляя графические и звуковые файлы с такой спрятанной в них информацией. 3.4. Пароли Пароли — это секретные ключи. Они могут применяться для 0 0 1 Fаутенти фикации пользователей, шифрования данных и обеспечения 0 0 1 Fбезопас ности коммуникационных потоков. Kerberos использует пароли как секретные ключи для подтверждения идентификационных данных клиента в Kerberos Key Distribution Center. Из-за необходимости случайности в секретных ключах выступающие в качестве секретных ключей пароли также должны быть секретными Самый распространенный способ раскрыть пароль — это выбрать легко угадываемый пароль, такой как пустой пароль, само слово пароль (password), 0 0 1 Fжаргон ные слова или имена богов, детей или домашних животных. Для взлома 0 0 1 Fчерез Интернет пароля, в качестве кото рого взято любое известное слово, потребуется примерно два часа времени. 0 0 1 FИспользование по-настоящему случайных паролей дает гораздо луч шие 0 0 1 Fрезультаты. Случайный выбор пароля только из 14 символов на бора стандартной ASCII-клавиатуры дает множество более чем из 1025 паролей. Существует четыре уровня паролей: • низкокачественный публичный пароль • публичный пароль среднего качества — короткий, но полностью случайный пароль длина этого пароля семь символов, что дает 40-битный диапазон уникальности; • высококачественный пароль — пароль для частных сетей где клиенту может быть причинен серьезный ущерб в случае его утери -пароль длиной 12 символов, что дает 70-битный диапазон уникальности; • чрезвычайно высококачественный пароль — пароль для шифрования файлов и хранения секретных данных на личных компьютерах; длина 14 символов, что дает 84-битный диапазон уникальности. 4. Локальная безопасность Windows 2000 Advanced Server Безопасность Windows 0 01 F 2000 основана на аутентификации пользовате лей. 0 0 1 FПроходя процедуру входа в систему (обеспечиваемую процес сом WinLogon), пользователь идентифицирует себя компьютеру, после чего ему предоставляется доступ к открытым и запрещается доступ к закрытым для вас ресурсам. В Windows 0 01 F 2000 также реализованы учетные записи групп. Когда учет ная 0 0 1 Fзапись пользователя входит в учетную запись группы, установлен ные для учетной записи группы разрешения действуют также и для учетной записи пользователя. 0 0 1 FУчетные записи пользователей и групп действуют только на том компь ютере под управлением Windows 2000, на котором они создаются. Эти учетные записи 0 0 1 Fлокальны для компьютера. Единственным исключени ем из этого правила являются 0 0 1 Fкомпьютеры, входящие в домен и по этому принимающие учетные записи, созданные в Active Directory на контроллере домена. На каждом компьютере под управлением Windows 2000 существует свой собственный список локальных учетных записей пользователей и групп. Когда процессу WinLogon (который 0 0 1 Fрегистрирует пользователя в систе ме и устанавливает его вычислительную среду) требуется обратиться к базе данных безопасности, он взаимодействует с Security Accounts Manager (диспетчер учетных записей безопасности, SAM 0 01 F), компонен том операционной системы Windows 0 01 F 2000, который управляет инфор мацией о локальных учетных записях. Если информация хранится локально на компьютере под управлением Windows 2000, SAM 0 01 F обра тится к базе данных (хранимой в реестре) и передаст информацию процессу WinLogon. Если информация хранится не локально SAM 0 01 F запросит контрол лер домена и вернет подтвержденную информацию о регистрации (идентификатор безопасности, security identifier) процессу WinLogon. Независимо от источника аутентификации, доступ разрешен только к локальному компьютеру посредством Local Security Authority 0 01 F (локаль ные средства безопасности, LSA) компьютера. При обращаении к другим компьютерам в сети, LSA локального компьютера передает идентификационные данные пользователя LS А другого компьютера, реализуя вход в систему каждого компьютера, с которым он контактирует. Чтобы получить доступ к другому компьютеру, этот компьютер должен принять идентификационные данные, предоставленные компьютером пользователя. 4.1. Идентификаторы безопасности Принципалы безопасности, такие как пользователи и компьютеры, представлены в системе идентификаторами безопасности (security identifier, SID). SID 0 01 F уникально идентифицирует принципала безопас ности для всех компьютеров домена. При создании учетной записи при помощи оснастки Local Users and Groups (Локальные пользователи и группы), всегда создается новый SID, даже если используется такие же имя учетной записи и пароль, как в удаленной учетной 0 0 1 Fзапи си. SID будет оставаться с учетной записью в течение всего времени ее существования. Можно поменять любой другой атрибут учетной записи, включая имя пользователя и пароль, но в обычных обстоятельствах нельзя изменить SID, поскольку при этом создается новая учетная запись. Групповые учетные записи также имеют SID, уникальный идентификатор, создающийся при создании группы. Для идентификаторов SID, групп действуют те же правила, что и для SID учетных записей. Процесс WinLogon (часть процесса Local Security Authority) проверяет имя пользователя и пароль (или смарт-карту при соответствующей конфигурации), чтобы определить, можно ли разрешить доступ к компьютеру. Если указанный в диалоговом окне входа в систему домен является именем локального компьютера, LSA проверит учетную запись в соответствии с локальным SAM, хранимым в реестре. В ином случае LSA установит связь с контроллером домена и воспользуется для проверки подлинности данных пользователя аутентификацией Kerberos (в случае Windows 2000) или NLTM (в случае всех остальных версий Windows, включая Windows 2000 в режиме Mixed Mode), в зависимости от операционной системы клиента. Если имя учетной записи и пароль правильны, процесс WinLogon coздаст токен доступа. Токен доступа (Acess Token) образуется из SIDучетной записи пользователя, SID групп, к которым принадлежит, учетная запись, и Locally Unique Identifier (локально уникальный; идентификатор, LUID), который определяет права пользователя и конкретный сеанс входа в систему. Токен доступа создается при каждом вашем входе в Windows 2000. Существуют особые идентификаторы SID. System SID зарезервирован для системных служб, содержащие System SID токены доступа могут, обходить все ограничения безопасности, основанные на учетных записях. SID дает системным службам разрешение на осуществление тех; действий, которые обычная учетная запись пользователя (даже учетная запись Administrator (Администратор)) делать не может. Службы операционной системы запускаются ядром Windows 2000, а не процессом WinLogon, и эти службы получают System SID от ядра при своем запуске. 4.2. Доступ к ресурсам Потоки (thread, отдельные ветви выполнения процесса) должны 0 0 1 Fпре доставлять токен доступа при каждой попытке доступа к ресурсу. Потоки получают токены доступа от родительских процессов при своем создании. Пользовательское приложение, например, обычно получает свой токен доступа от процесса WinLogon. Процесс WinLogon запускается от возбужденного 0 0 1 Fпользователем прерывания (прерыва ния клавиатуры Ctrl+Alt+Del) и может создать новый токен доступа, запрашивая или локальный диспетчер учетных записей безопасности (SAM), или Directory Services Agent (агент служб каталога, DSA) на контроллере домена Active Directory. При помощи этого метода каждый поток, запущенный после входа пользователя в систему, будет иметь токен доступа, представляющий пользователя. Поскольку потоки пользовательского режима должны всегда предоставлять этот токен для доступа к ресурсам, в обычных обстоятельствах не существует способа обойти безопасность ресурсов Windows 2000. Основу безопасности Windows 2000 образует перемещаемый вход в систему (mandatory logon). В отличие от других сетевых систем, пользователь ничего не систему. Еще одним важным преимуществом, особенно с точки зрения безопасности, является то, что, поскольку операционная система выполняет все 0 0 1 Fдействия для про цессов, она может принудительно отслеживать безопасность объектов. Когда процесс просит подсистему Win32 выполнить действие над объектом (например, прочитать файл), подсистема Win32 сверяется с Security Reference Monitor (монитор проверки безопасности), чтобы удостовериться, что процесс обладает разрешением на осуществление действия над объектом. Security Reference Monitor сравнивает токен доступа процесса со списком DACL объектов, сверяя каждый SID в токене доступа с идентификаторами SID в списке DACL Если 0 0 1 Fсуществу ет запись управления доступом (АСЕ) с совпадающим SID, которая 0 0 1 Fсодержит маску доступа, разрешающую действие, и нет АСЕ с совпа дающим SID, содержащей запрещающую маску для действия над объектом, то Security Reference Monitor разрешает подсистеме Win32 выполнить действие. Security Reference Monitor также проверяет, осуществляется ли аудит доступа к объекту и требуется ли запись в журнал событий Security Log (Безопасность) Windows 2000. Аудит проверяется точно так же, как и проверка разрешений, — путем сравнения каждого SID 0 01 F в токене досту па с SID каждой записи управления 0 0 1 Fдоступом. При обнаружении со впадения монитор проверяет, принадлежит ли выполняемое действие (или функция) к перечисленным в маске доступа. Если да и 0 0 1 Fесли ре зультат проверки безопасности по списку SACL 0 0 1 F совпадает с проводи мым аудитом (произошел отказ в доступе и проводится аудит отказа в доступе, или 0 0 1 Fдоступ был успешен и проводится аудит успешного до ступа, или произошли оба этих события), то в этом случае событие аудита записывается в журнал событий. 0 0 1 FНекоторые действия применяются не к конкретному объекту, а к груп пе объектов или ко всей операционной системе. Завершение работы с операционной 0 0 1 Fсистемой, например, повлияет на все объекты в систе ме. Пользователь должен обладать правами пользователя (user rights) для осуществления таких действий. Средства Local Security Authority включают локально уникальный идентификатор (LUID 0 01 F) при созда нии токена доступа. LUID описывает, какое из 0 0 1 Fправ пользователя име ет конкретная учетная запись. Local Security Authority создают LUID на основе информации о безопасности в базе данных диспетчера 0 0 1 F 0 0 1 Fбез опасности учетных записей (для учетной записи локального компьюте ра) или Active Directory (для учетной записи домена). LUID является объединением прав этой конкретной учетной записи пользователя и прав всех групп, в которые входит эта учетная запись. Права имеют больший приоритет, чем разрешения (permissions). Вот почему учетная запись администратора может стать владельцем файла, чей владелец удалил все разрешения на доступ; Administrator 0 01 F (Админист ратор) обладает правом Take Ownership of Files or Other Objects 0 01 F (сме на владельца файлов или других объектов). Операционная система Windows 2000 вначале проверяет права пользователя и затем (если нет права пользователя, специально разрешающего действие) сверяет записи АСЕ, хранимые в DACL, с идентификаторами SID в токене доступа. Учетные записи пользователя обладают правом на чтение и запись для 0 0 1 Fобъекта, для которого они являются владельцем, даже в случае нали чия у того запрещающей записи АСЕ. Учетная запись пользователя может также изменять разрешения для принадлежащего ей объекта. 5.Файловая система NTFS Файловая система NTFS — главный бастион безопасности Windows 2000. Безопасный компьютер под управлением Windows 2000 работает на платформе NTFS, образующей основу для постоянной безопасности. LSA 0 01 F дает гарантию, что выполняющиеся программы не могут нару шить адресное пространство памяти друг друга и что все обращения к ядру должным 0 0 1 Fобразом авторизованы. Но что может помешать про грамме заменить программные файлы LSA эквивалентной службой, которая будет работать неверно? Ответом на этот вопрос является NTFS, и этот пример подчеркивает, почему безопасная 0 0 1 Fфайловая сис тема — обязательное требование для безопасной операционной 0 0 1 F 0 0 1 Fсисте мы. Не имея возможности доверять файловой системе, хранящей сис темные файлы, нельзя доверять системе, работа которой реализуется посредством исполнения этих файлов. Рассмотрим случай проникновения вируса на компьютер с Windows 95. 0 0 1 FПользователь выполняет программу, содержащую вирус. Вирус опре деляет, какая программа запустила текущую программу, и заражает ее, таким образом 0 0 1 Fраспространяя себя далее на один уровень. При следую щем запуске этой программы вирус сделает то же самое, а также заразит каждую программу, порожденную этой программой. Через несколько циклов вирус распространится до ключевых программ операционной системы, таким образом заражая каждый выполняемый в ней файл. Рассмотрим теперь случай, когда пользователь выполняет зараженную вирусом программу в Windows 2000. Эта программа пытается записать свой вирусный заголовок в explorer.exe 0 01 F, но блокируется средствами без опасности файловой системы NTFS, потому что у пользователя нет разрешений на запись в explorer.exe. Благодаря NTFS этот тип вирусов моментально останавливается Windows 2000. При попадании в систему некоторым вирусам удается выжить в 0 0 1 Fпользовательском режиме (на пример, макровирусам Word или червям Outlook), но эти вирусы все равно не могут заразить саму операционную систему — если только 0 0 1 Fви рус не был запущен с учетной записью, обладающей административным доступом к компьютеру. NTFS 0 01 F работает, сравнивая токен доступа пользователя со списком кон троля доступа (ACL), связанным с каждым запрашиваемым файлом, перед тем, как разрешить пользователю доступ к этому файлу. Этот простой механизм не дает 0 0 1 Fнесанкционированным пользователям изме нять операционную систему или еще 0 0 1 Fчто-нибудь, к чему у них нет спе циального доступа. По умолчанию Windows 2000 находится в состоянии, предоставляющем полный доступ группе «все» (everyone) для корня всех дисков, вследствие чего все 0 0 1 Fразрешения, наследуемые создаваемы ми там файлами, также доступны для всех. Для получения какой-либо реальной пользы от безопасности файловой системы NTFS 0 01 F для при ложений и хранимых пользователями файлов необходимо удалить разрешение, предоставляющее полный доступ для всех, и заменить его разрешениями с соответствующим уровнем безопасности для каждой папки на компьютере. Управление разрешениями файловой системы NTFS осуществляется просто и работает аналогично тому; как разрешения устанавливались в предыдущих версиях Windows NT. В Windows 2000 наследование обрабатывается по-другому, чем в Windows NT. В Windows NT 0 01 F унаследованные разрешения были просто таки ми же, как у 0 0 1 Fродительских объектов, и могли быть немедленно измене ны. В Windows 2000, если объект наследует разрешения от содержащей объект папки, необходимо снять флажок Allow Inheritable Permissions (Переносить наследуемые от родительского объекта разрешения на этот объект), для того чтобы создать копию наследуемых разрешений и затем изменить существующие разрешения. Можно создавать новые записи АСЕ, не перекрывая установку безопасности. 5.1. Шифрованная файловая система Шифрованная файловая система (Encrypting File System) — это драйвер файловой системы, обеспечивающий возможность зашифровывать и расшифровывать файлы на лету. Использовать службу очень легко: пользователи 0 0 1 Fустанавливают атрибут шифрования для файла или ката лога. Служба EFS 0 0 1 Fгенерирует сертификат шифрования в фоновом про цессе и использует его для шифрования заданных файлов. Когда эти файлы запрашиваются драйвером файловой системы NTFS, служба EFS автоматически расшифровывает файл для предоставления его драйверу. Шифрование файлов выглядит как действительно замечательная 0 0 1 Fвоз можность, но текущая его реализация в Windows 0 0 1 F 2000 обладает таки ми дефектами, что EFS 0 01 F в большинстве случаев бесполезна, за исклю чением, может быть, портативных компьютеров. Основная проблема EFS в том, что она работает только для отдельных пользователей, что делает ее пригодной только для клиентских 0 0 1 Fкомпь ютеров. Сертификаты шифрования для файлов создаются на основе личности пользователя, поэтому зашифрованные файлы могут быть использованы 0 0 1 Fтолько той учетной записью, которая их создавала. Сер тификаты шифрования не могут быть назначены групповым объектам, поэтому шифрование не может защитить общие файлы, хранимые на сервере. Эта архитектура потребует обмена закрытыми ключами по сети, поэтому для такого обмена должен быть установлен 0 0 1 Fзашифрован ный канал. EFS не позволит совместное использование зашифрованных файлов, потому что она расшифровывает их перед тем, как предоставить их по запросу. Это также не предусмотрено. Если бы сертификаты 0 0 1 Fши фрования принадлежали группе, зашифрованный файл мог бы быть предоставлен по сети клиенту в своем зашифрованном состоянии и клиентский компьютер смог бы воспользоваться своим участием в группе, обладая сертификатом для расшифровки файла. Kerberos может создавать ключи сеанса для шифрования сертификатов, чтобы сохранить их в безопасности во время передачи членам группы. Общие файлы могут быть достаточно безопасными, чтобы использовать их через Интернет без закрытого туннеля. Более того, потеря сертификата шифрования — ахиллесова пята 0 01 Fши фрования — не будет такой уж проблемой. До тех пор, пока сертификат все еще существует у какого-либо из членов группы, этот пользователь все еще будет обладать копией сертификата для расшифровки файлов. Так, как она реализована сегодня, EFS всегда создает ключ для агента восстановления (по умолчанию это локальный 0 0 1 Fадминистратор), неза висимо от того, хочет пользователь или нет, чтобы агент 0 0 1 Fвосстановле ния мог расшифровать файл. EFS 0 01 F (так же, как репликация файлов) — еще один пример служ бы, которая была бы по-настоящему замечательной, если бы Microsoft реализовала се 0 0 1 Fнадлежащим образом. В том виде, в каком она существу ет сейчас, она сделана ровно настолько, чтобы Microsoft 0 01 F могла утверж дать о наличии у нее шифрования файловой системы. Помимо того факта, что EFS 0 01 F работает только для отдельных пользо вателей, она обладает рядом других проблем: 2. KDC ищет секретные ключи, как клиента, так и сервера в своей базе данных (Active Directory) и создает билет (ticket), содержащий случайный ключ сеанса, текущее время KDC, заданное политикой время окончания, и, в зависимости от параметров, любую другую информацию, хранимую в базе данных. В случае Windows 2000 в билете содержатся идентификаторы SID. 0 0 1 F3. Билет зашифровывается с использованием секретного ключа кли ента. 4. Создается второй билет, называемый билетом сеанса (session ticket), 0 0 1 Fсодержащий ключ сеанса и необязательные данные аутентифика ции, которые 0 0 1 Fзашифровываются с использованием секретного клю ча сервера. 5. Соединенные билеты передаются обратно клиенту. Серверу аутентификации 0 0 1 Fнет необходимости явным образом про верять подлинность клиента, потому что 0 0 1 Fтолько обладающий пол номочиями клиент может расшифровать билет. 6. После того как клиент получил в свое распоряжение допустимый билет и ключ сеанса для сервера, он инициирует взаимодействие непосредственно с 0 0 1 Fсервером. Для этого клиент конструирует удо стоверение (authenticator), состоящее из текущего времени, имени клиента, по желанию — зависящую от приложения контрольную сумму и случайным образом сгенерированный начальный номер 0 0 1 Fпоследовательности и/или подключ сеанса, используемые для извле чения уникального идентификатора сеанса для требуемой службы. Удостоверения действуют только для одной попытки и не могут применяться повторно или 0 0 1 Fиспользоваться в атаках воспроизведе ния, потому что они зависят от текущего времени. Удостоверение шифруется при помощи ключа сеанса и передается вместе 0 0 1 Fс биле том сеанса серверу, у которого запрашивается служба. 7. Когда сервер получает билет от клиента, он расшифровывает билет сеанса 0 0 1 Fпри помощи общего секретного ключа сервера (если суще ствует более одного 0 0 1 Fключа, нужный ключ указывается в части би лета в простой текстовой форме). 8. Затем сервер извлекает из билета ключ сеанса и использует его для расшифровки удостоверения. Способность сервера расшифровать билет 0 0 1 Fподтверждает, что он был зашифрован при помощи секрет ного ключа сервера, известного только KDC 0 01 F и самому серверу, та ким образом, подлинность клиента подтверждается. Удостоверение используется для гарантии того, что взаимодействие недавнее и не является атакой на основе повторного запроса. 0 0 1 FБилеты могут повторно использоваться в течение периода, определя емого политикой безопасности домена, но не превышающего восьми часов. Клиенты кэшируют свои билеты сеанса в безопасном месте, расположенном в оперативной 0 0 1 Fпамяти, и уничтожа ют их по истечению срока действия. Kerberos 0 01 F сокращает предоставление билетов, во время первого конта кта с 0 0 1 Fклиентом предоставляя билет сеанса самому себе так же, как и за прашиваемому серверу. КОС отвечает на этот первоначальный запрос — сначала предоставляя билет сеанса для последующих запросов о билетах, называемый Ticket-Granting Ticket (билет на предоставление билетов, TGT), и затем — билет сеанса для запрашиваемого сервера. TGT 0 01 F устра няет потребность в дальнейшем проводимом Active Directory поиске клиента, осуществляя предварительную аутентификацию 0 0 1 Fпоследую щих запросов о билетах точно таким же способом, каким Kerberos 0 0 1 Fосуществляет аутентификацию всех остальных запросов. Как и лю бой билет сеанса, билет TGT 0 01 F действителен до истечения срока дей ствия, который зависит от политики безопасности домена. Kerberos технически делится на две службы: службу TGT 0 01 F (единствен ную службу, которая действительно осуществляет аутентификацию в Active Directory) и 0 0 1 Fслужбу предоставления билетов, выдающую биле ты сеансов по получении допустимого TGT. 6.1.2. Доверительные отношения между доменами Kerberos работает через границы домена (домены в терминологии Kerberos называются сферами (realm), эти термины эквивалентны). 0 0 1 FИмя домена, к которому принадлежит принципал безопасности, являет ся частью имени принципала безопасности. Членство в одном дереве Active Directory автоматически создаст междоменные ключи Kerberos между родительским доменоми его дочерними доменами. Обмен междоменными ключами регистрирует контроллеры домена одного домена в качестве принципалов безопасности в доверенном домене. Эта простая 0 0 1 Fконцепция дает возможность любому принципа лу безопасности в домене получить билет сеанса в чужом КОС. 1. Когда принципал безопасности в одном домене хочет обратиться к 0 0 1 Fпринципалу безопасности в соседнем домене (один из доменов ро дительский, 0 0 1 Fдругой дочерний), он отправляет запрос о билете сеан са своему локальному КОС. 0 0 1 F2. КОС определяет, что сервер назначения не находится в локаль ном домене, и отвечает клиенту, отправляя ему билет направления (referral ticket), который является билетом сеанса, зашифрованный при помощи междоменного ключа. 3. Клиент использует билет направления для запроса билета сеанса непосредственно у чужого KDC. 4. Чужой KDC 0 01 F расшифровывает билет направления, потому что об ладает междоменным ключом, подтверждающим, что доверенный контроллер домена доверяет клиенту (иначе он не предоставил бы ключ направления). 5. Чужой KDC предоставляет билет сеанса, допустимый для чужого сервера назначения. Для более удаленных доменов этот процесс просто повторяется. Для доступа 0 0 1 Fк принципалу безопасности в домене, расположенном на рас стоянии двух узлов в иерархии доменов Active Directory 0 01 F, клиент за прашивает билет сеанса для сервера назначения в своем KDC, который в ответ пересылает ему билет направления к следующему домену в пути. Затем клиент запрашивает билет сеанса, используя только что полученный билет назначения. Этот сервер просто ответит билетом 0 0 1 Fназначения, допустимым для следующего сервера в цепочке. Этот про цесс будет 0 0 1 Fпродолжаться до тех пор, пока не будет достигнут локаль ный домен для принципала безопасности назначения. В этот момент ключ сеанса (технически — TGT 0 01 F и ключ сеанса) предоставляется запра шивающему клиенту, который затем сможет пройти аутентификацию непосредственно у принципала безопасности назначения. Последняя важная концепция в аутентификации Kerberos 0 01 F — делегиро вание аутентификации. Делегирование аутентификации (delegation of authentication) — это механизм, посредством которого принципал безопасности дает возможность другому принципалу безопасности, с которым у него установлен сеанс, запрашивать 0 0 1 Fаутенти фикацию от своего имени у третьего принципала безопасности. Этот механизм важен в многозвенных приложениях, таких как web-узел с поддержкой 0 0 1 Fбазы данных. При помощи делегирования аутентифика ции клиент—web-браузер может пройти аутентификацию у web-cepвера и затем предоставить web-серверу специальный билет TGT 0 01 F, ко торый сервер сможет использовать для запроса билетов сеансов от своего имени, web-сервер сможет затем использовать передаваемые web- клиентом идентификационные данные для аутентификации на сервере баз данных. 6.1.3. Групповые политики Групповая политика (Group Policy) — это основной механизм Windows 2000 0 0 1 Fпри управлении конфигурацией клиентских рабочих стан ций для контроля за 0 0 1 Fбезопасностью и для администрирования. Полити ки (policy) — это, в общем случае, просто наборы изменений в установках компьютера по умолчанию. Политики обычно организуются так, чтобы отдельные политики содержали изменения, реализующие конкретную цель — например, отключение или включение шифрования файловой системы или контроль за программами, которые разрешено запускать пользователю. Групповые политики (Group Policies) применяются к элементам 0 0 1 Fкон тейнера Active Directory (таким, как домен или Organizational Unit (Подразделение)). Группы безопасности могут быть использованы для фильтрации групповых политик, но политики нельзя применять к группам безопасности. Групповая политика Windows 0 01 F 2000 не являет ся только механизмом безопасности — ее основное предназначение состоит в управлении изменениями и 0 0 1 Fконфигурацией, — но она позво ляет администраторам создавать дополнительные 0 0 1 Fсистемы безопасно сти, ограничивая свободу действий пользователей. Групповые политики можно применять для управления следующими элементами политик компьютера (computer policy): • настройки реестра, связанные с конфигурацией и управлением 0 0 1 Fбез опасности; • установка программного обеспечения; • 0 01 Fсценарии, выполняющиеся при загрузке-завершении работы и вхо де- выходе из системы; • запуск служб; • разрешения реестра; • разрешения NTFS; • политики открытого ключа; • политики IPSec; • настройки системы, сети и компонентов Windows. Групповые политики можно применять для управления следующими элементами политик пользователя (user policy): • установка программного обеспечения; • настройки Internet Explorer; • сценарии входа-выхода в систему; • настройки безопасности; • Remote Installation Service (служба удаленной установки); • перенаправление папок; • компоненты Windows; • настройки стартового меню, панели задач, рабочего стола и Control Panel (Панель управления); • сетевые настройки; • настройки системы. Network Places (Мое сетевое окружение) и затем открыть ее, чтобы отобразить список общих папок. Общие папки по умолчанию. В Shared Folder Manager (диспетчер общих папок), несколько общих папок с именами, заканчивающимися знаком доллара: С$, ADMIN$ и т. п. Это административные общие папки (administrative shares) — общие папки, автоматически конфигурируемые Windows 2000 и доступные только для 0 0 1 Fадминистраторов и самой операционной системы. Эти об щие папки используются 0 0 1 Fдля удаленного администрирования и вза имодействия между системами. Административные общие папки представляют определенный риск с точки зрения безопасности. Хакер, получивший доступ к учетной записи Administrator на одной рабочей станции в рабочей группе, сможет получить доступ к системным дискам других рабочих станций, легко получая доступ уровня администратора ко всей рабочей группе. Можно повысить безопасность, отключив автоматические административные общие папки, созданные для корневых каталогов дисков жесткого диска (С$, 0$ и т. д.). Безопасность уровня общих папок аналогична безопасности файловой системы, но далеко не так разнообразна (или безопасна), потому что записи 0 0 1 F 0 0 1 Fуправ ления доступом общих папок могут применяться только к общей пап ке как к единому целому. Безопасность нельзя настроить внутри общей папки. У безопасности уровня общих папок есть одно существенное 0 01 Fпреиму щество: она работает с любым общим каталогом, находится ли он на томе NTFS или FAT. 0 0 1 FБезопасность уровня общих папок — единствен ный способ обеспечить безопасность каталогов FAT 0 01 F. Однако установ ленные разрешения для общей папки влияют только на удаленных пользователей. Пользователи, локально вошедшие в 0 0 1 Fсистему компью тера, имеют доступ ко всем папкам на томе FAT, независимо от того, общие они или нет. Безопасность уровня общих папок также не 0 01 Fприме нима к пользователям, вошедшим в систему локально, или клиентам Terminal Services (службы терминала). Разрешения общих папок. Для общих папок возможны следующие разрешения, каждое из которых может быть разрешено или запрещено: • Read 0 01 F (Чтение) — позволяет пользователям просматривать со держимое 0 0 1 Fкаталога, открывать и читать файлы и запускать про граммы; • Change (Изменение) — разрешает все, что и разрешение Read (Чтение). Плюс к этому пользователи могут создавать, удалять и изменять файлы; • Full Control (Полный доступ) — разрешает все, что и разрешения Read (Чтение) и Change (Изменение). Плюс к этому пользователи могут изменять разрешения и менять владельца файлов. 6.5. Шифрование сетевого уровня Виртуальные частные сети (virtual private network, VPN) это высокозатратный способ расширить локальную сеть через Интернет до удаленных сетей и удаленных клиентских компьютеров. Сети VPN используют Интернет для передачи трафика локальной сети из одной частной сети в другую, инкапсулируя трафик локальной сети в IP 0 01 F-па кеты. Зашифрованные пакеты не могут быть прочитаны 0 0 1 Fпромежуточ ными компьютерами Интернета и могут содержать любой вид 0 0 1 Fвза имодействий локальной сети, включая доступ к файлам и принтерам, электронную почту локальной сети, вызовы удаленных процедур и клиент- серверный доступ к базам данных. 0 0 1 FВиртуальные частные сети между локальными сетями можно уста навливать при помощи компьютеров-серверов, брандмауэров или маршрутизаторов. Доступ клиентов к VPN может осуществляться при помощи программного обеспечения VPN 0 01 F на клиентских компьюте рах или путем удаленного телефонного подключения к поставщикам услуг Интернета (ISP), поддерживающим протокол VPN. При втором методе, однако, ISP становится вашим партнером в безопасности сети. Одни только системы VPN не обеспечивают достаточной защиты сети также потребуется брандмауэр и другие службы безопасности Интернета для обеспечения безопасности сети. Проблемы с безопасностью в особенности свойственны протоколу РРТР 0 0 1 FИспользование Интернета для связи локальных сетей и предостав ления удаленным компьютерам доступа к локальной сети влечет за собой проблемы безопасности, производительности, надежности и управляемости. Клиенты и серверы локальной сети должны быть защищены от Интернета при помощи трансляции сетевых адресов, осуществляемой брандмауэром, и/или прокси- серверами так, чтобы (в идеале) злоумышленники в сети не могли даже узнать об их существовании, что сильно снижает их подверженность индивидуальным атакам. Для того чтобы затруднить хакерам возможность захвата закрытой информации фирмы, большинство брандмауэров конфигурируются так, чтобы не пропускать типичные служебные протоколы локальной сети, такие как SMB, NetBIOS, NetWare Core Protocol или NFS. SMB работает особенно хорошо в чистом виде через Интернет. Имея высокоскоростной канал, можно просто использовать совместное использование 0 0 1 Fфайлов через Интернет без брандмауэров или сконфигу рировать ваш брандмауэр для передачи трафика 8MB и Kerberos или NetBIOS и разрешить удаленный доступ к службам файлов и печати. Это позволит хакерам предпринять попытку получить доступ к вашим данным, просто предоставив допустимое имя учетной записи и 0 0 1 Fпароль или проведя атаку на протокол и воспользо вавшись его ошибкой. 6.5.1. Технологии VPN Виртуальные частные сети (VPN) решают проблему прямого доступа к 0 0 1 Fсерверам через Интернет при помощи объединения следующих фун даментальных компонентов безопасности: • IP-инкапсуляция; • защищенная аутентификация; • шифрование вложенных данных. Протокол Secure Socket Layer осуществляет шифрование вложенных данных без защищенной аутентификации удаленного пользователя, a Kerberos осуществляет защищенную аутентификацию без шифрования вложенных данных. IP 0 01 F-инкапсуляция. В идеале, компьюте ры в каждой локальной сети не должны ничего подозревать о том, что во взаимодействии с компьютерами из других локальных сетей есть что-то особенное. Компьютеры, не входящие в вашу виртуальную сеть, не должны иметь возможность подслушивать трафик между 0 0 1 F 0 0 1 Fлокаль ными сетями или вставлять в коммуникационный поток свои собствен ные данные. IP-пакет может содержать любой вид информации: файлы программ, данные электронных таблиц, звуковые данные или даже другие IP-пакеты. Когда IP-пакет содержит другой IP-пакет, это называется IP-инкапсуляцией (IP encapsulation), IP поверх IP (IP on IP) или IP/IP. Можно инкапсулировать один IP-пакет в другой 0 0 1 Fнесколькими спосо бами; Microsoft делает это двумя различными, но связанными 0 0 1 Fспосо бами, определенными в протоколах Point-to-Point Tunneling Protocol (РРТР) и Layer 2 Tunneling Protocol (L2TP). Microsoft 0 01 F также поддер живает IPSec, которому не обязательно использовать инкапсуляцию. IP 0 01 F-инкапсуля ция может заставить две удаленные друг от друга сети выглядеть для компьютеров сети соседними, отделенными друг от друга только одним маршрутизатором, хотя на самом деле они будут разделены многими 0 0 1 Fшлюзами и маршрутизаторами Интернета, которые могут даже не ис пользовать одного адресного пространства, потому что обе внутренние сети применяют трансляцию адресов. Конечная точка туннеля, будь это маршрутизатор, устройство VPN, или сервер, на котором работает протокол туннелирования, извлечет внутренний пакет, расшифрует его и затем отправит вложенный пакет по его пути назначения во внутренней сети в соответствии со своими правилами маршрутизации. Передача данных в соединенных по протоколу РРТР локальных сетях 0 0 1 Fначинается и заканчивается точно так же, как это происходит в локаль ных сетях, соединенных через маршрутизатор. IP 0 01 F-пакетам, однако, при ходится проходить 0 0 1 Fболее дальний путь, поэтому в середине проделы вается большая работа. С точки 0 0 1 Fзрения двух клиентских компь ютеров в сети не имеет значения, каким образом пакет был получен одной IP-подсетью от другой. Для вовлеченных в соединение сетевых клиентских компьютеров маршрутизатор означает то же самое, что и два RRAS-сервера и РРТР-соединение. Защищенная аутентификация. Защищенная аутентификация (cryptographic authentication) используется для безопасного подтверждения личности удаленного 0 0 1 Fпользователя, для того чтобы система смогла опре делить соответствующий этому пользователю уровень безопасности. Сети VPN применяют защищенную аутентификацию для того, чтобы определить, может ли пользователь участвовать в 0 0 1 Fзашифрованном тун неле или нет, а также могут применять ее для обмена 0 0 1 Fсекретными или от крытыми ключами, используемыми для шифрования вложенных данных. Существует много различных видов защищенной аутентификации в двух общих категориях. • Шифрование с секретным ключом. Также называется шифрованием с общим секретным ключом (shared secret encryption 0 01 F) или симмет ричным шифрованием (symmetric encryption 0 01 F), полагается на секрет ное значение, известное обеим сторонам. • Шифрование с открытым ключом. Полагается на обмен 0 0 1 Fоднона правленными ключами (unidirectional keys) - ключами, при помощи которых можно только зашифровать данные. Оконечные системы туннеля могут обмениваться парами открытых ключей для образования двунаправленного канала, 0 0 1 Fили получатель при передаче с открытым ключом может зашифро вать общий 0 0 1 Fсекретный ключ и переслать его отправителю для исполь зования в будущих 0 0 1 Fкоммуникациях (потому что шифрование с се кретным ключом быстрее, чем шифрование с открытым ключом). Если хакер перехватит открытый ключ (или ключ для зашифровки), он сможет только зашифровать данные и передать их получателю, но не сможет расшифровать содержание перехваченных данных. Шифрование вложенных данных. Шифрование вложенных данных (data payload encryption 0 01 F) используется для сокрытия содержания инкапсу лированных 0 0 1 Fзатем восполь зуется открытым ключом для установки сеанса IPSec с удаленным 0 0 1 Fхо стом. Рис. 6.5.2.1. Пример работы Internet Key Exchange. Реализация Microsoft IPSec не завершена полностью, потому что стандарты IPSec все еще появляются. Практическим следствием этого является то, что 0 0 1 Fреали зация IPSec в Windows 2000 по умолчанию 0 0 1 Fнесовместима с реализаци ями большинства поставщиков брандмауэров 6.5.3. L2TP Layer 2 Tunneling Protocol является расширением протокола Point-to-Point Protocol 0 01 F (протокол точка-точка, РРР) и позволяет разде лить конечную точку канала передачи данных и точку доступа к сети. В традиционном РРР пользователь (обычно удаленный пользователь) устанавливает РРР-соединение с сервером удаленного доступа. Этот сервер отвечает на соединение канального уровня (звонок через модем) и также работает как точка доступа к сети, извлекая данные, 0 0 1 Fинкап сулированные в РРР-сообщение, и передавая их в сеть назначения. Инкапсулированные данные могут быть кадром AppleTalk, IP-пакетом, IPX-пакетом, пакетом NetBIOS или любым другим пакетом сетевого уровня. В Windows 2000 эта служба называется RRAS. L2TP отделяет ответы на звонки и маршрутизируемый доступ по сети При работе по протоколу L2TP 0 01 F звонящая сторона может дозвани ваться к модемному пулу (или DSL Access Module, или чему-либо еще) и эти устройства могут просто инкапсулировать полученные пакеты L2TP в пакеты Frame Relay, ATM или TCP/IP 0 0 1 Fдля дальнейшей пере дачи серверу удаленного доступа. По достижении сервера удаленного доступа содержимое пакетов L2TP извлекается и вложенные данные передаются в локальную сеть. L2TP предназначен для того, чтобы дать возможность поставщикам услуг 0 0 1 FИнтернета использовать менее дорогостоящее оборудование, раз деляя функции сервера удаленного доступа на аппаратную функцик (физический прием данных через соединение) и программную функцию (получение инкапсулированных данных 0 0 1 FРР-Р), что может быть реали зовано на разных компьютерах. Это дает ряд важных преимуществ: • пользователи могут дозваниваться до локального модемного пула который будет передавать L2TP находящемуся на большом расстоянии серверу удаленного доступа, таким образом избегая затрат на звонки на большое расстояние при удаленном доступе с прямым дозвоном; • вложенные данные в L2TP могут быть зашифрованы при помощи IPSec для обеспечения удаленного доступа с защищенной аутентификацией; • многоканальные сеансы L2TP могут физически обрабатываться различными 0 0 1 Fприемниками и корректно связываться с единствен ным сервером удаленного доступа. В нынешней реализации многоканальных РРР-соединений все каналы должны быть соединены одним и тем же сервером удаленного доступа. L2TP может использовать IPSec для шифрования кадров РРР, такт образом предоставляя удаленным пользователям возможность без опасного РРР-сеанса. L2TP специально разрабатывался для предоставления удаленному пользователю возможностей аутентификации и подключения к удаленным сетям. Поскольку L2TP 0 0 1 Fявляется расши рением РРР, любой протокол сетевого уровня (например, IPX, NetBEUI или AppleTalk) может быть встроен внутрь L2TP. В противоположность этому, оба протокола РРТР и IPSec предназначены для использования в IP-сетях и не работают с другими протоколами. Применение РРР также обеспечивает поддержку 0 0 1 Fвсех стандартных протоколов аутенти фикации пользователя, включая CHAP, MS- CHAP и ЕАР. L2TP использует в качестве своего транспорта UDP, а не TCP/IP, потому что 0 0 1 Fвстроенный протокол РРР может обеспечить необходи мую гарантию надежности для потока L2TP работает через порт 1701 UDP. 6.5.4. РРТР РРТР был первой попыткой Microsoft 0 01 F предоставить безопасный уда ленный 0 0 1 Fдоступ пользователям сети. По существу, РРТР создает за шифрованный сеанс РРР между хостами TCP/IP. В отличие от L2TP, РРТР действует только поверх TCP/IP; L2TP может работать поверх любого транспорта пакетов, включая Frame Relay и ATM. РРТР не использует IPSec для шифрования пакетов, вместо этого он 0 0 1 Fиспользу ет хэшированный пароль пользователя Windows 2000 для создания закрытого ключа между клиентом и удаленным сервером, который (в версии с 128- битным шифрованием) задействует случайное число для повышения устойчивости шифрования. 7. Разработка программы определяющей имя компьютера и его ip-адрес. 1.. Постановка задачи и определение основных целей программы. Поставлена задача составить программу которая могла бы получать имя компьютера (рабочей станции), определять его ip-адрес в сети и выводить эти данные на экран. Программа должна работать в среде Win32, использовать минимум ресурсов, быть достаточно компактной и написанной на языке высшего уровня. 2.. Принцип работы программы. Для написания программы был использован язык программирования макро Ассемблер (MASM). Использовались следующие библиотеки: wsock32.lib, user32.lib, kernel32.lib, gdi32.lib. При запуске программы (exe файла) она обращается через АР-функции к динамическим библиотекам Windows и получает из них необходимые данные, далее через АР-функции выводит полученные данные (имя и ip-адрес рабочей станции) на экран в стандартном для Windows окне, окно фиксированного размера. Программа скомпилирована с включением makefile (файла сборки). makefile считает что в директория masm32 находится на том же накопителе и – в стандартной instalation позиции. Так же имеется файл используемых программой ресурсов. Рис. 7.2.1. Внешний вид окна программы Список литературы: 5. В. Олифер Н. Олифер. Сетевые операционные системы – С. Петербург.: Питер., - 2003. 6. Марк Джозеф Эдвард, Дэвид Лебланк. Где NT хранит пароли. - Журнал "Windows 2000 Magazine", -02/1999 7. Мэтью Штребе. Windows 2000: проблемы и решения. Специальный справочник – С.Петербург.: Питер., -2002. 8. Андреев А. Г. и др. Microsoft Windows 2000: Server и Professional. Русские версии. – BHV, -2001. 9. Грег Тодд. Windows 2000 Datacenter Server //по материалам сайта http: www.citforum.ru 10. Криста Андерсон. Администрирование дисков в Windows 2000.-Журнал "Windows 2000 Magazine", -03/2000 //по материалам сайта http: www.citforum.ru 11. Джеффри Р. Шапиро. Windows 2000 Server. Библия пользователя – Вильямс, - 2001. 12. Гарри М. Брелсфорд. Секреты Windows 2000 Server – Вильямс, -2000. 13. Гусева. Сети и межсетевые коммуникации. Windows 2000 - Диалог Мифи, - 2002. Приложение А Исходный текст программы .386 .model flat, stdcall option casemap :none include /masm32/include/windows.inc include /masm32/include/user32.inc include /masm32/include/kernel32.inc include /masm32/include/wsock32.inc include /masm32/include/gdi32.inc includelib /masm32/lib/wsock32.lib includelib /masm32/lib/user32.lib includelib /masm32/lib/kernel32.lib includelib /masm32/lib/gdi32.lib WndProc PROTO :DWORD,:DWORD,:DWORD,:DWORD .data dlgname db "WINSOCK",0 szTitle db "Ip Dialog",0 wsaError db "Error initializing winsock!",13,10 szName db "Computer Name: %s",0 szFont db "MS Sans Serif",0 .data? wsa WSADATA <?> hStatic dd ? hFont dd ? hInstance dd ? buffer db 24 dup (?) buffer2 db 128 dup (?) .code start: invoke GetModuleHandle, NULL mov hInstance, eax invoke WSAStartup,101h,addr wsa .if eax == NULL invoke DialogBoxParam,hInstance,ADDR dlgname,0,ADDR WndProc,0 invoke ExitProcess,0 .endif invoke MessageBox,NULL,offset wsaError,offset szTitle,MB_OK + MB_ICONSTOP invoke ExitProcess,1 WndProc proc hWin:DWORD,uMsg:DWORD,wParam:DWORD,lParam:DWORD .if uMsg == WM_INITDIALOG invoke LoadIcon,hInstance,101 invoke SendMessage,hWin,WM_SETICON,TRUE,eax invoke GetDlgItem,hWin,2000 mov hStatic,eax invoke gethostname,offset buffer,sizeof buffer invoke wsprintf,addr buffer2,addr szName,addr buffer invoke SetDlgItemText,hWin,3000,addr buffer2 invoke gethostbyname,addr buffer mov eax,[eax+12] mov eax,[eax] mov eax,[eax] invoke inet_ntoa,eax invoke SetDlgItemText,hWin,2000,eax invoke WSACleanup xor eax,eax ret .elseif uMsg == WM_CTLCOLORSTATIC mov eax,lParam .if eax == hStatic invoke CreateFont,16,16,0,0,400,0,0,0,OEM_CHARSET,\ OUT_TT_PRECIS,CLIP_DEFAULT_PRECIS,\ DEFAULT_QUALITY,DEFAULT_PITCH or FF_SWISS,\ ADDR szFont mov hFont,eax invoke SelectObject, wParam, hFont invoke GetSysColor, COLOR_MENU invoke SetBkColor, wParam, eax invoke SetTextColor,wParam,Blue invoke GetStockObject, HOLLOW_BRUSH ret .endif .elseif uMsg == WM_CLOSE invoke DeleteObject,hFont invoke EndDialog,hWin,0 xor eax,eax ret .endif xor eax,eax ret WndProc endp end start
Docsity logo