9936

Информационная безопасность при использовании ОС Windows 2000

Реферат

Информатика, кибернетика и программирование

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

Русский

2013-03-18

743 KB

8 чел.

 77 -

Информационная безопасность при использовании ОС Windows 2000

Архитектура ОС и области применения, архитектура и настройка сетевой подсистемы, архитектура подсистемы безопасности, базовая настройка подсистемы безопасности.

Проблемы безопасности в существующих версиях Windows NT

Семейство операционных систем Windows 2000

В семейство Windows 2000 входят четыре продукта:

  •  Windows 2000 Professional
  •  Windows 2000 Server
  •  Windows 2000 Advanched Server
  •  Windows 2000 Datacenter Server

Windows 2000 Professional

Наиболее важные средства Windows 2000 Professional:

Пользовательский интерфейс, ориентированный на Web – Active Desctop;

Броузер IE;

Программные средства для обработки факсов – Personal Fax for Windows;

DirectX 7.0 – версия графических интерфейсов API от Microsoft;

Встроенная поддержка технологии Plug and Play;

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

Поддержка стандарта для скоростных соединений IEEE 1394 (Fire Ware).

Advanced Configuration and Power Interfase (ACPI Power) – усовершенствованный стандарт управления конфигурацией и питанием;

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

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

Планировщик задач, Task Sheduler – средство для планирования (диспетчеризации) задач;

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

Поддержка FAT32;

Улучшенная версия файловой системы NT File System (NTFS);

Встроенные средства дефрагментации, работающие с FAT, FAT32, NTFS.

Win32 Driver Model (WDM) – архитектура драйверов для 32-разрядных систем Windows;

Поддержка смарт-карт;

Встроенная поддержка сканеров, цифровых фотоаппаратов и видеокамер;

Поддержка Intlligent Input/Output Architrcture (I2O) – позволяет разгрузить ЦП компьютера и передать часть задач по обслуживанию устройст ввода.вывода другим процессорам;

Поддержка Multimedia Extensions (MMX – надстройка процессора Pentium, повышает скорость выполнения мультимедийных приложений).

Дополнительные мониторы (Multimonitoring) – возможность подключения до 4-х мониторов, которые ОС воспринимает как один.

Поддержка Accelerated Grapthics Port (AGP) – стандарта трёхмерной графики, повышающей производительность «обычных» компьютеров.

Служба индексации, Indexing Service – для индексации содержимого и атрибутов документов, хранящихся на локальных дисках, для ускорения поиска информации.

IP Security – средство защиты соединений, использующих протокол TCP/IP, позволяет использовать и настраивать политики безопасности для сетевых соединений и шифровать передаваемые данные.

Windows 2000 Server

Windows 2000 Server обладает всеми возможностями Windows 2000 Professional, а так же имеет другие средства, перечисленные ниже. Кроме того этот продукт содержит разнообразные средства администрирования, построенные на основе Microsoft Managment Console.

Active Directory – служба каталогов, позволяющая централизовано хранить информацию обо всех объектах сети (пользователях, компьютерах, общих каталогах, принтерах и т.д.);

Dynamic DNS (DDNS) – служба динамических доменных имён, позволяющая компьютерам автоматически регистрировать и обновлять имена хостов и IP-адреса на DDNS-сервере (подобно тому, как служба WINS – Windows Internet Naming Servis, обеспечивает динамическое обновление таблиц преобразования NetBIOS-имён в IP-адреса);

Групповые политики (Group Policies) – наборы конфигурационных параметров, которые могут назначаться в заданном сайте, домене или организационной единице (подразделении) Active Directory;

Распределённая файловая система (Distibuted File System, DFS) – обеспечивает возможность разделения файловой структуры между несколькими серверами;

Windows Installer – технология, управляющая процессом инсталяции программного обеспечения в среде Windows.

Средства управления корпоративными ресурсами с помощью Web-технологий (Web-Based Enterprize Menagment, WBEM) – стандарт, призванный упростить управление драйверами и приложениями;

Распределённая модель компонентных объектов (Distributed COM, DCOM) – платформа для построения дистрибутивных приложений;

Active Directoty Servises Interface (ADSI) – стандартный интерфейс для разнообразных служб каталога;

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

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

Службы терминалов, Terminal Services – позволяют удалённо выполнять 16- и 32-разрядные приложения на серверах Windows 2000, либо администрировать их.

WWW-сервер (в составе служб Internet Information Server, IIS) – интернет сервер, позволяющий реализовать в сети службы FTP и HTTP.

Служба индексации, Indexing Service – обеспечивает индексирование текстового содержимого и свойств файлов различного типа.

Аутентификация Keberos – протокол безопасности, используемый в распределённых средах для аутентификации пользователей;

Многопротокольная маршрутизация – позволяет использовать сервер как маршрутизатор в IP- и IPX-сетях.

Выбор файловой системы

На компьютере, работающем под управлением Windows 2000, можно использовать любую из трёх файловых систем (FAT, FAT32, NTFS, хотя для серверной платформы всегда предпочтительнее выбирать NTFS). Кроме того, эти файловые системы можно использовать и совместно. На выбор файловой системы оказывают влияние следующие факторы:

  •  цель, для которой предполагается использовать компьютер (сервер или рабочая станция);
  •  количество жестких дисков и их объем;
  •  требования к безопасности;
  •  необходимость использования дополнительных возможностей NTFS.

NTFS по сравнению с FAT предоставляет целый ряд преимуществ. Однако, если в дополнение к Windows 2000 использовать еще одну операционную систему, необходимо помнить, что доступ к файлам, расположенным в разделах NTFS, можно будет получить только через Windows 2000. Поэтому для системного и загрузочного разделов другой операционной системы необходимо использовать иную файловую систему (иначе эта операционная система просто не сможет загрузиться).

FAT

Файловая система FAT предоставляет следующие преимущества:

  •  Файловая система FAT может использоваться не только с Windows NT/2000, но и с другими операционными системами, включая Windows 9x, Windows for Workgroups, MS-DOS и OS/2.
  •  Использование файловой системы FAT является лучшим выбором для томов небольшого размера. На томах, размер которых не превышает 500 Мбайт, она работает очень хорошо. Однако на больших томах (1 Гбайт и более) FAT становится крайне неэффективной. Для томов, размер которых находится в пределах 400-500 Мбайт, FAT является предпочтительным выбором по сравнению с NTFS, поскольку лишена накладных расходов NTFS, связанных с дисковым пространством: при форматировании тома для использования файловой системы NTFS создается целый ряд системных файлов и файл журнала транзакций, которые потребляют некоторый процент дискового пространства (и для небольших томов этот процент значителен).

FAT32

FAT32 представляет собой усовершенствованную версию файловой системы FAT, предназначенную для использования на томах, объем которых превышает 2 Гбайт. Windows 2000 продолжает поддерживать файловую систему FAT, а также добавляет дополнительную поддержку для FAT32.

FAT32 уменьшает размер кластера на больших дисках, снижая таким образом объем неиспользуемого пространства.

Файловая система FAT32 обеспечивает следующие преимущества по сравнению с прежними реализациями файловой системы FAT:

  •  Обеспечивается поддержка дисков размером до 2 терабайт.
  •  Более эффективно используется дисковое пространство за счет того, что FAT32 использует более мелкие кластеры (так, для дисков размером до 8 Гбайт используются кластеры размером по 4 Кбайт).
  •  Обеспечивается большая надежность.
  •  Более быстрая загрузка программ. Благодаря тому, что FAT32 имеет меньшие размеры кластеров, приложения и необходимые для их загрузки файлы могут быть оптимальным образом размещены на диске.

Примечание

 

Windows 2000 поддерживает тома FAT32, имеющие любой объем и созданные версиями Windows 9х. Однако система будет форматировать тома FAT32 только в том случае, если их объем не превышает 32 Гбайт. Причиной этого ограничения являются ограничения по памяти, присущие таким утилитам восстановления, как Autochk. Вследствие этого ограничения Microsoft рекомендует форматировать тома, размер которых превышает 32 Гбайт, с помощью файловой системы NTFS.

NTFS

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

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

В системах Windows 2000 используется NTFS версии 5.0, на базе которой реализованы новые функциональные возможности: квоты диска, шифрование файлов и каталогов (EFS) и т. д. Эта файловая система не является совместимой с предыдущими версиями Windows NT.

Некоторые из возможностей, обеспечиваемых на сегодняшний день только файловой системой NTFS, перечислены ниже:

  •  NTFS дает возможность индивидуальной установки разрешений для конкретных файлов и каталогов. Это позволяет указать, какие пользователи и группы имеют доступ к файлу или папке и указать тип доступа;
  •  Встроенные средства восстановления данных;
  •  Структура папок файловой системы NTFS позволяет существенно ускорить доступ к файлам в папках большого объема по сравнению со скоростью доступа к папкам такого же объема на томах FAT.
  •  NTFS позволяет осуществлять сжатие отдельных папок и файлов, можно читать сжатые файлы и писать в них без необходимости вызова программы, производящей декомпрессию.

Рекомендации по использованию файловых систем

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

  •  Опцию FAT следует выбирать, если объем выбранного раздела жесткого диска не превышает 2 Гбайт, и при этом требуется обеспечить возможности доступа к файлам на этом разделе при загрузке компьютера под управлением таких операционных систем, как MS-DOS, Windows 3.x, Windows 95, и OS/2;
  •  Опцию FAT32 следует использовать и в том случае, когда необходимо обеспечить двойную загрузку компьютера с использованием Windows 2000 и таких операционных систем, как Windows 95 версии OSR2 или Windows 98, и при этом размер диска превышает 2 Гбайт. В этом случае диск будет отформатирован с использованием файловой системы FAT32.
  •  Опцию NTFS следует выбирать, если требуется в полной мере воспользоваться преимуществами, предоставляемыми системой безопасности Windows 2000 и файловой системы NTFS. В этом случае программа установки отформатирует жесткий диск с использованием файловой системы NTFS 5.0;
  •  В процессе запуска Windows 2000 на компьютерах х86 система выполняет поиск некоторых файлов, которые находятся в корневом каталоге жесткого диска, содержащего системный раздел. Этот раздел может быть отформатирован и как FAT, и как NTFS. Его размер должен быть достаточным для того, чтобы разместить все нужные файлы, доступ к которым необходим при использовании конкретной файловой системы.

Разрешения для файлов и папок

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

Разрешения пользователя на доступ к объектам файловой системы работают по принципу дополнения (аддитивности). Это значит, что действующие разрешения, то есть те разрешения, которые пользователь реально имеет в отношении конкретного каталога или файла, образуются из всех прямых и косвенных разрешений, назначенных пользователю для данного объекта с помощью логической функции ИЛИ.

Назначение разрешения на доступ к определённому файлу или папке устанавливается на диске с файловой системой NTFS в Свойствах (Properties) файла(папки) на вкладке <Безопасность> (Security).

Квоты дискового пространства

Администрирование больших компьютерных сетей, где серверы поддерживают работу сотен пользователей, сопряжено с рядом сложностей. Одна из них – учет дискового пространства сервера, занятого файлами сотрудников компании. Подобная проблема просто решается с помощью введения квот на дисковое пространство, доступное для работы каждому пользователю. В Windows 2000 администратор может квотировать дисковое пространство по каждому тому и для каждого пользователя.

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

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

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

Установка квот производится только для томов NTFS в Свойствах тома на вкладке <Квота> (Quota).

Локальные учётные записи пользователей и групп

Создание учетных записей и групп занимает важное место в обеспечении безопасности Windows 2000, поскольку, назначая им права доступа, администратор получает возможность ограничить пользователей в доступе к конфиденциальной информации компьютерной сети, разрешить или запретить им выполнение в сети определенного действия, например архивацию данных или завершение работы компьютера. Обычно право доступа ассоциируется с объектом – файлом или папкой. Оно определяет возможность данного пользователя получить доступ к объекту.

Оснастка Локальные пользователи и группы (Local Users and Groups) – это инструмент, с помощью которого выполняется управление локальными учетными записями пользователей и групп – как на локальном, так и на удаленном компьютерах (см. рисунок 1). С ним можно работать на рабочих станциях и автономных серверах Windows 2000, как на изолированных, так и рядовых членах домена (member server). На контроллерах домена Windows 2000 инструмент Локальные пользователи и группы недоступен, поскольку все управление учетными записями и группами в домене выполняется с помощью оснастки Active Directory – пользователи и компьютеры (Active Directory Users and Computers). Запускать оснастку Локальные пользователи и группы может любой пользователь. Выполнять администрирование учетных записей могут только администраторы и члены группы Опытные пользователи (Power Users).

Рисунок 1.

Папка Пользователи (Users)

Сразу после установки системы Windows 2000 (рабочей станции или сервера, являющегося членом домена) папка Пользователи содержит две встроенные учетные записи – Администратор (Administrator) и Гость (Guest). Они создаются автоматически при установке Windows 2000. Ниже даны описания свойств обеих встроенных учетных записей:

  •  Администратор – эту учетную запись используют при установке и настройке рабочей станции или сервера, являющегося членом домена. Она не может быть уничтожена, блокирована или удалена из группы Администраторы (Administrators), ее можно только переименовать.
  •  Гость – эта учетная запись применяется для регистрации в компьютере без использования специально созданной учетной записи. Учетная запись Гость не требует ввода пароля и по умолчанию блокирована. (Обычно пользователь, учетная запись которого блокирована, но не удалена, при регистрации получает предупреждение и входить в систему не может.) Она является членом группы Гости (Guests). Ей можно предоставить права доступа к ресурсам системы точно так же, как любой другой учетной записи.

Папка Группы (Groups)

После установки системы Windows 2000 (рабочей станции или сервера, являющегося членом домена) папка Группы (Groups) содержит шесть встроенных групп. Они создаются автоматически при установке Windows 2000. Ниже описаны свойства всех встроенных групп:

  •  Администраторы (Administrators) – ее члены обладают полным доступом ко всем ресурсам системы. Это единственная встроенная группа, автоматически предоставляющая своим членам весь набор встроенных прав.
  •  Операторы архива (Backup Operators) – члены этой группы могут архивировать и восстанавливать файлы в системе независимо от того, какими правами эти файлы защищены. Кроме того, операторы архива могут входить в систему и завершать ее работу, но они не имеют права изменять настройки безопасности.
  •  Гости (Guests) – эта группа позволяет выполнить регистрацию пользователя с помощью учетной записи Гость и получить ограниченные права на доступ к ресурсам системы. Члены этой группы могут завершать работу системы.
  •  Опытные пользователи (Power Users) – члены этой группы могут создавать учетные записи пользователей, но они имеют право модифицировать настройки безопасности только для созданных ими учетных записей. Кроме того, они могут создавать локальные группы и модифицировать состав членов созданных ими групп. То же самое они могут делать с группами Пользователи, Гости и Опытные пользователи. Члены группы Опытные пользователи не могут модифицировать членство в группах Администраторы и Операторы архива. Они не могут быть владельцами файлов, архивировать или восстанавливать каталоги, загружать и выгружать драйверы устройств и модифицировать настройки безопасности и журнал событий.
  •  Репликатор (Replicator) – членом группы Репликатор должна быть только учетная запись, с помощью которой можно зарегистрироваться в службе репликации контроллера домена. Ее членами не следует делать рабочие учетные записи.
  •  Пользователи (Users) – члены этой группы могут выполнять большинство пользовательских функций, например, запускать приложения, пользоваться локальным или сетевым принтером, завершать работу системы или блокировать рабочую станцию. Они также могут создавать локальные группы и регулировать состав их членов. Они не могут получить доступ к общему каталогу или создать локальный принтер.

Имя пользователя должно быть уникальным для компьютера. Оно может содержать до 20 символов верхнего и нижнего регистра. Ниже приведены символы, применение которых в имени пользователя недопустимо:

«   /   \   [   ]   :   ;   |   =   ,   +   *   ?   <   >

При переименованнии учетная запись сохраняет идентификатор безопасности (Security Identifier, SID), она сохраняет и все свои свойства, например, описание, полное имя пароля, членство в группах и т. д.

Имя локальной группы должно быть уникальным в пределах компьютера. Оно может содержать до 256 символов в верхнем и нижнем регистрах. В имени группы запрещено применение символа обратного слеша (\).

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

Примечание

 

Встроенные группы не могут быть удалены. Удаленные группы не могут быть восстановлены. Удаление группы не отражается на входящих в нее пользователей.

Служба печати в Windows 2000

Терминология

В Windows 2000 устройством печати (printing device) называется реальное физическое устройство, которое собственно и выполняет печать. Принтер (printer) – программный интерфейс между операционной системой и устройством печати. Принтер определяет различные аспекты процесса печати, например, куда будет послан документ (в локальный порт, в файл или на удаленный общий ресурс печати), отправленный на печать.

Драйвер принтера (printer driver) – программа, которая преобразует графические команды в специфический язык типа PostScript или PCL. Windows 2000 предоставляет драйверы для наиболее распространенных устройств печати. Когда принтер создается, устанавливается драйвер принтера и – факультативно – можно сделать принтер доступным по сети для совместного использования.

Очередь (queue) – группа документов, ждущих печати.

Сервер печати (print server) – компьютер, который получает документы от клиентов.

Устройства печати с сетевым интерфейсом (network-interface print devices) – устройства печати, имеющие собственные сетевые платы; они не должны быть физически соединены с сервером печати, т. к. непосредственно подсоединены к сети.

Удалённая печать в Windows 2000

Windows 2000 полностью поддерживает удаленную печать. Когда клиенты Windows NT/2000/XP и Windows 9x соединяются с правильно настроенным сервером печати Windows 2000, драйвер принтера автоматически устанавливается на клиентском компьютере. Если на сервере установлен более новый драйвер принтера, компьютеры-клиенты Windows NT 4.0/2000/XP загружают его автоматически. Однако если на сервере устанавливается новый драйвер принтера для клиентов Windows 9x, то эти клиенты должны обновить его вручную.

Служба терминалов в Windows 2000

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

Службы терминалов можно развернуть на сервере в режиме сервера приложений (application server) или в режиме удаленного управления (remote administration). В качестве сервера приложений службы терминалов обеспечивают эффективный и надежный способ совместного использования приложений Windows на сетевом сервере. В режиме удаленного управления службы терминалов предоставляют удаленный доступ для администрирования сервера.

Серверы DHCP, DNS и WINS

Служба DNS является одним из ключевых компонентов, обязательным для работы доменов Windows 2000. Удобным дополнением к службе DNS в системах Windows 2000 является служба DHCP, упрощающая управление IP-адресами. Служба WINS в Windows 2000 может использоваться, хотя в доменах Windows 2000, благодаря наличию серверов DNS, это становится необязательным.

Служба DHCP

В операционной системе Microsoft Windows 2000 Server поддерживается широко известный протокол DHCP (Dynamic Host Configuration Protocol, протокол динамической конфигурации хоста). Это – открытый промышленный стандарт, который упрощает управление сетями на базе TCP/IP. Каждому хосту (компьютеру), подключенному к сети на базе TCP/IP, должен быть назначен уникальный IP-адрес. Протокол DHCP освобождает сетевых администраторов от необходимости настраивать все компьютеры вручную.

DHCP может автоматически конфигурировать настройки TCP/IP во время загрузки компьютера. Это позволяет хранить все доступные IP-адреса в центральной базе данных вместе с соответствующей информацией о конфигурации, такой как маска подсети, адрес шлюза и адреса серверов DNS и WINS. DHCP упрощает работу системных администраторов. При этом, чем больше сеть, тем выгоднее применять протокол DHCP. Без динамического назначения адресов администратору пришлось бы настраивать клиентов вручную, последовательно назначая адреса. Изменения должны производиться для каждого клиента по отдельности. Чтобы избежать двойного использования, IP-адреса должны распределяться централизованно. Информация о конфигурации без протокола DHCP распределена по клиентам; в этом случае трудно получить представление о конфигурациях всех клиентов.

Понятия DHCP

Область (scope) DHCP – административная группа, идентифицирующая полные последовательные диапазоны возможных IP-адресов для всех клиентов DHCP в физической подсети. Области определяют логическую подсеть, для которой должны предоставляться услуги DHCP, и позволяют серверу задавать параметры конфигурации, выдаваемые всем клиентам DHCP в подсети.

Диапазон исключения (exclusion range) – ограниченная последовательность IP-адресов в пределах области, которые должны быть исключены из предоставления службой DHCP.

Пул адресов (address pool). Если определена область DHCP и заданы диапазоны исключения, то оставшаяся часть адресов называется пулом доступных адресов (в пределах области). Эти адреса могут быть динамически назначены клиентам DHCP в сети.

Резервирование (reservation) позволяет назначить клиенту постоянный адрес и гарантировать, что указанное устройство в подсети может всегда использовать один и тот же IP-адрес.

Суперобласти (superscope). Это понятие, используемое в Диспетчере DHCP, которое задает множество областей, сгруппированных в отдельный административный объект – суперобласть.

Арендный договор (lease) – отрезок времени, определяющий период, во время которого клиентский компьютер может использовать назначенный IP-адрес. При выдаче арендного договора он становится активным. В момент половины срока действия арендного договора клиент должен возобновить назначение адреса, обратившись к серверу повторно.

Служба DHCP в Windows 2000 состоит из трех основных компонентов:

  •  Серверы DHCP.
  •  Клиенты DHCP.
  •  Агенты ретрансляции BOOTP/DHCP – Использование агентов ретрансляции избавляет от необходимости устанавливать сервер DHCP в каждом физическом сегменте сети. Агент не только обслуживает прямые локальные запросы клиента DHCP и перенаправляет их на удаленные серверы DHCP, но также возвращает ответы удаленных серверов DHCP клиентам DHCP.

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

Служба DNS

Система доменных имен (Domain Name System) – служба имен Интернета, стандартная служба TCP/IP. Служба DNS дает возможность клиентским компьютерам в сети регистрировать и разрешать доменные имена. Доменные имена используются, чтобы находить ресурсы в сети и обращаться к ним.

Домен DNS основан на концепции дерева именованных доменов. Каждый уровень дерева может представлять или ветвь, или лист дерева. Ветвь – это уровень, содержащий более одного имени и идентифицирующий набор именованных ресурсов. Лист – имя, указывающее заданный ресурс.

Служба WINS

Служба WINS (Windows Internet Name Service, служба имен Windows) обеспечивает поддержку распределенной базы данных для динамической регистрации и разрешения имен NetBIOS для компьютеров и групп, используемых в сети. Служба WINS отображает пространство имен NetBIOS и адресное пространство IP друг на друга и предназначена для разрешения имен NetBIOS в маршрутизируемых сетях, использующих NetBIOS поверх TCP/IP.

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

В сетях, использующих только Windows 2000, можно уменьшить или даже устранить применение WINS. Удаление установленных серверов WINS из сети называется отзывом (decommissioning).

Службы Интернета в Windows 2000

Что такое Web-службы

История Web-служб началась задолго до того, как мы впервые услышали этот термин, активно пропагандируемый корпорацией Microsoft. И формально, и по сути развитие Web-служб (Web-service) вполне можно ассоциировать с развитием Интернета, в частности с Web-серверами (Web-server) и Web-страницами (Web-site). Пытаясь модернизировать статические Web-страницы, разработчики постепенно внедряли все новые технологии как для динамического их отображения на стороне клиента, так и для динамического создания на стороне сервера. Таким образом, на Web-сервер постепенно стали возлагаться задачи не только пересылки файлов по запросу клиента, но и выполнения приложений в виде SSI-скриптов (Server Side Include) и программ специального формата CGI (Common Gateway Interface), на лету создающих Web-странички. Подобные изменения стали прослеживаться почти десять лет назад. К примеру, один из наиболее популярных языков программирования для Web-серверов РНР, а точнее, его реализация — появился на свет еще в 1995 г., в одно время с Windows 95 и Java.

Ключевой момент в работе Web-служб — выполнение приложений на стороне сервера при помощи сервера приложений. Как и восемь лет назад, принципиальная схема такого взаимодействия осталась неизменной. Во-первых, сохранился основной транспортный протокол — HTTP. Во-вторых, как и ранее, основную роль играют Web-серверы и серверы приложений. В-третьих, полностью сохранилась схема взаимодействия, включающая следующие этапы:

  1.  формирование запроса клиента к серверу;
  2.  отправку этого запроса;
  3.  получение запроса Web-сервером;
  4.  выполнение приложения на стороне сервера (сервером приложений);
  5.  отправку клиенту результата работы серверного приложения;
  6.  обработку ответа клиентом.

Internet Information Services (IIS) – набор базовых служб Интернета, в состав которых входят: веб-сервер, FТР-сервер, SMTP-сервер, NNTP-сервер и ряд дополнительных служб.

Службы Internet Information Services имеют ряд основных возможностей:

  •  Службы IIS базируются на сетевых стандартах – в Microsoft Internet Information Services реализован стандарт протокола HTTP 1.1;
  •  Динамическое содержание – в IIS можно создавать сценарии, выполняющиеся на стороне сервера, и использовать компоненты для создания динамического содержания, независимого от браузера. Активные серверные страницы ASP позволяют разработчикам информационного содержимого узлов применять в страницах HTML любые языки сценариев ActiveX или серверные компоненты. ASP обеспечивает доступ ко всем потокам запросов и ответов HTTP, поддерживает стандартные методы доступа к базам данных и возможность настройки содержания для различных браузеров.
  •  Централизованное администрирование – службы IIS управляются с помощью консоли управления.
  •  Безопасность – IIS обеспечивает безопасный способ обмена информацией между клиентом и сервером, в дополнение к механизмам шифрования обеспечивает способ аутентификации клиента без необходимости его регистрации (login) на сервере IIS.


Средства безопасности Windows 2000

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

Основы протокола Kerberos

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

  1.  Клиент посылает запрос серверу аутентификации (Authentication Server, AS) на информацию, однозначно идентифицирующую некоторый нужный клиенту сервер.
  2.  Сервер AS передает требуемую информацию, зашифрованную с помощью известного пользователю ключа. Переданная информация состоит из билета сервера и временного ключа, предназначенного для шифрования (часто называемого ключом сеанса).
  3.  Клиент пересылает серверу билет, содержащий идентификатор клиента и ключ сеанса, зашифрованные с помощью ключа, известного серверу.
  4.  Теперь ключ сеанса известен и клиенту, и серверу. Он может быть использован для аутентификации клиента, а также для аутентификации сервера Ключ сеанса можно применять для шифрования передаваемой в сеансе информации или для взаимного обмена ключами подсеанса, предназначенными для шифрования последующей передаваемой информации.

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

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

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

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

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

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

Взаимодействие с удаленными владениями

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

Установив общие ключи для владений, администраторы могут позволить клиентам различных владений выполнять удаленную аутентификацию. Конечно, обладая необходимыми разрешениями, клиент может зарегистрировать партнера, имеющего не связанное с данным владением имя, и установить нормальный обмен сообщениями. Однако даже при незначительном количестве удаленных регистраций такой подход создает большие неудобства, поэтому рекомендуются более автоматизированные методы. При обмене общими во владениях ключами (inter realm keys) (при передаче информации в каждом направлении может быть использован отдельный ключ) службы выдачи билетов регистрируются в противоположном владении в качестве партнера по обмену данными. После этого клиент может получать TGT от локальной службы выдачи билетов для такой же службы, находящейся в удаленном владении. При использовании этого TGT для его дешифрования удаленная служба выдачи билетов применяет общий для владений ключ, который, как правило, отличается от ключа TGSсервера. Это гарантирует, что данный TGT был передан собственным TGSсервером клиента. Билеты, посланные удаленной службой выдачи билетов, укажут конечной службе, что аутентификация клиента была выполнена в удаленном владении.

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

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

Иерархическая организация владений делает возможным альтернативный путь аутентификации — минуя промежуточные владения. Это может оптимизировать обмен данными между двумя владениями. Конечной службе важно знать, через какие владения проходит путь аутентификации, поскольку от этого зависит достоверность всего процесса аутентификации. Для облегчения принятия такого решения каждый билет содержит поле, где хранятся имена всех владений, которые составляют путь аутентификации.

Требования к рабочему окружению

Протокол Kerberos налагает несколько требований на рабочее окружение, в котором он может эффективно работать:

  •  Kerberos не противодействует атакам типа «отказ в обслуживании». Особенности протокола Kerberos позволяют злоумышленнику заставить приложение не принимать участие в процессе аутентификации. Обнаружение и борьба с атаками этого типа (часть которых может проявляться в установлении необычных режимов работы программного обеспечения), как правило, лучше всего выполняются администраторами систем.
  •  Партнеры по обмену данными должны хранить свои секретные ключи в надежном месте. Если злоумышленник каким-либо образом похитит секретный ключ, он сможет выдать себя за одного из партнеров или имперсонализировать сервер для законного клиента.
  •  Kerberos не противодействует атакам типа «подбор пароля». Если пользователь задает легко угадываемый пароль, злоумышленник с большой вероятностью может его определить подбором с применением словаря.
  •  Каждый хост сети должен иметь часы, которые приблизительно синхронизируются с часами других хостов. Синхронизация необходима, чтобы было легче обнаружить факт передачи копии заранее перехваченного сообщения. Степень приблизительности синхронизации может быть установлена индивидуально для каждого сервера. Сам протокол синхронизации серверов сети должен быть защищен от атак злоумышленников.
  •  Идентификаторы партнеров не могут быть повторно использованы через небольшой промежуток времени. Как правило, для управления доступом применяются списки управления доступом (Access Control List, ACL), в которых хранятся разрешения доступа, предоставленные всем партнерам по обмену данными. Если в базе данных списков управления доступом остался список уничтоженного партнера по обмену, данными, идентификатор которого используется вторично, то новый партнер унаследует все права доступа уничтоженного партнера. Избежать подобной опасности можно, только если запретить использование идентификаторов уничтоженных партнеров в течение продолжительного времени, а лучше вообще сделать идентификаторы уникальными.

Флаги, используемые в запросах

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

Протоколы обмена сообщениями

Далее описаны протоколы взаимодействия клиента и сервера и используемые при этом типы сообщений.

Протокол службы аутентификации. Протокол службы аутентификации предназначен для обмена информацией между клиентом и сервером аутентификации (AS) Kerberos. Обычно обмен инициируется клиентом при попытке получения на сервере некоторой информации для идентификации. Для шифрования и дешифрования используется секретный ключ клиента. Этот протокол обычно применяется при инициализации сеанса входа в систему для получения информации идентификации на TGS-сервере, который впоследствии будет использован для получения идентификационной информации других серверов без применения секретного ключа клиента. Также протокол службы аутентификации может быть использован для запроса идентификационной информации у служб, доступ к которым не может быть получен с помощью службы выдачи билетов, а требует применения секретного ключа партнера по обмену данными. К таким службам относится, например, служба изменения пароля. Запрос на изменение пароля не может быть удовлетворен до тех пор, пока клиент не сообщит свой старый пароль – текущий секретный пароль пользователя, – иначе любой пользователь мог бы сменить чужой пароль.

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

Протокол службы аутентификации состоит из двух сообщений: KRB_ASREQ, отправляемого от клиента серверу Kerberos, и KRB_AS_REP или KRBERROR, приходящего в ответ.

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

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

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

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

Протокол выдачи билетов состоит из двух сообщений: запрос от клиента к серверу Kerberos, выдающему билеты, – KRBTGSREQ – и ответ на этот запрос – KRB__TGS_REP или KRB_ERROR. Сообщение KRB_TGS_REQ несет информацию, аутентифицирующую пользователя, а также запрос на идентификационную информацию. Информация аутентификации содержит заголовок аутентификации (KRB_AP_REQ), включающий предварительно полученный клиентом билет на получение билета, обновляемый или неработоспособный билет. Если передается билет на получение билета, запрос может включать следующую дополнительную информацию: список сетевых адресов, набор типизированных данных авторизации, которые должны быть помещены в билет для дальнейшего использования в процессе авторизации сервером приложения, или дополнительные билеты. Сообщение KRB_TGS_REP содержит запрошенную информацию идентификации, зашифрованную с помощью ключа сеанса, находящегося в билете на получение билета или в обновляемом билете, или с помощью ключа субсеанса, находящегося в аутентификаторе. Сообщение KRBERROR содержит код ошибки и текстовое объяснение причины ее возникновения. Это сообщение не шифруется. В сообщении KRB_TGS_REP находится информация, позволяющая обнаружить факт посылки заранее перехваченной копии данных, а также ассоциировать ответ с вызвавшим его запросом. Информация сообщения KRB_ERROR тоже позволяет ассоциировать его с соответствующим запросом, но отсутствие шифрования не позволяет обнаружить факт подмены таких сообщений.

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

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

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

База данных Kerberos

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

Применение Kerberos в сетях Windows 2000

Аутентификация Kerberos используется многими службами домена Windows 2000. SSPI применяется для аутентификации в большинстве системных служб, поэтому их перевод с аутентификации NTLM на Kerberos требует минимальных усилий. Более сложные изменения необходимы на сервере SMB, который не использовал SSPI до версии Windows 2000. Многие новые распределенные службы Windows 2000 уже используют аутентификацию Kerberos. Примеры областей применения аутентификации Kerberos в Windows 2000:

  •  Аутентификация в Active Directory с применением LDAP для запросов или управления каталогом
  •  Протокол удаленного доступа к файлам CIFS/SMB
  •  Управление распределенной файловой системой DFS
  •  Защищенное обновление адресов DNS
  •  Служба печати
  •  Необязательная взаимная аутентификация IPSec-хостов в ISAKMP/Oakley
  •  Запросы резервирования для службы качества обслуживания (Quality of Service)
  •  Аутентификация интрасети в Internet Information Services
  •  Аутентификация запросов сертификата открытого ключа, приходящих от пользователей и компьютеров домена, в Microsoft Certificate Service
  •  Удаленное управление сервером или рабочей станцией с помощью аутентифицированного RPC и DCOM

Это первый шаг к основной цели, поставленной в Windows 2000, — полному исключению аутентификации NTLM в компьютерных сетях, основанных на этой операционной системе.

Шифрующая файловая система EFS

На персональном компьютере операционную систему можно загрузить не с жесткого, а с гибкого диска. Это позволяет обойти проблемы, связанные с отказом жесткого диска и разрушением загрузочных разделов. Однако, поскольку с помощью гибкого диска можно загружать различные операционные системы, любой пользователь, получивший физический доступ к компьютеру, может обойти встроенную систему управления доступом файловой системы Windows 2000 (NTFS) и с помощью определенных инструментов прочесть информацию жесткого диска. Многие конфигурации оборудования позволяют применять пароли, регулирующие доступ при загрузке. Однако такие средства не имеют широкого распространения. Кроме того, если на компьютере работает несколько пользователей, подобный подход не дает хороших результатов, да и сама защита с помощью пароля недостаточно надежна. Вот типичные примеры несанкционированного доступа к данным:

  •  Хищение переносного компьютера. Любой злоумышленник может похитить переносной компьютер, а затем получить доступ к конфиденциальной информации, находящейся на его жестком диске.
  •  Неограниченный доступ. Компьютер оставлен в рабочем состоянии, и за ним никто не наблюдает. Любой пользователь может подойти к такому компьютеру и получить доступ к конфиденциальной информации.
  •  Основной целью создания системы безопасности является защита конфиденциальной информации, которая обычно находится в незащищенных файлах на жестком диске, от несанкционированного доступа. Доступ к данным можно ограничить с помощью средств NTFS. Такой подход обеспечивает хорошую степень защиты, если единственной загружаемой операционной системой является Windows 2000, жесткий диск не может быть физически удален из компьютера, и данные находятся в разделе NTFS. Если кто-либо захочет получить доступ к данным, он может осуществить свое желание, получив физический доступ к компьютеру или жесткому диску. Существуют инструменты, позволяющие получить доступ к файлам, находящимся в разделе NTFS, из операционных систем MS-DOS или UNIX в обход системы безопасности NTFS.

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

  •  Ручное шифрование и дешифрование. Службы шифрования большинства продуктов непрозрачны для пользователей .Пользователю приходится расшифровывать файл перед каждым его использованием, а затем опять зашифровывать. Если пользователь забывает зашифровать файл после окончания работы с ним, информация остается не защищенной. Поскольку каждый раз необходимо указывать, какой файл должен быть зашифрован (и расшифрован), применение такого метода защиты информации сильно затруднено.
  •  Утечка информации из временных файлов и файлов подкачки. Практически все приложения в процессе редактирования документов создают временные файлы. Они остаются на диске незашифрованными, несмотря на то, что оригинальный файл зашифрован. Кроме того, шифрование информации на уровне приложений выполняется в режиме пользователя Windows 2000. Это значит, что ключ, применяемый для такого типа шифрования, может храниться в файле подкачки. В результате, с помощью изучения данных файла подкачки можно получить ключ и расшифровать все документы пользователя.
  •  Слабая криптостойкость ключей. Ключи образуются от паролей или случайных фраз. Поэтому в случае, если пароль был легко запоминаемым, атаки с помощью словарей могут легко привести к взлому системы защиты.
  •  Невозможность восстановления данных. Большинство продуктов, позволяющих шифровать информацию, не предоставляют средств восстановления данных, что для пользователей является дополнительным поводом не применять средства шифрования. Это особенно касается тех работников, которые не хотят запоминать дополнительный пароль. С другой стороны, средство восстановления данных с помощью пароля — еще одна брешь в системе защиты информации. Все, что необходимо злоумышленнику, — это пароль, предназначенный для запуска механизма восстановления данных, который позволит получить доступ к зашифрованным файлам.

Все перечисленные выше проблемы позволяет решить шифрующая файловая система (Encrypting File System, EFS), реализованная в Windows 2000 и работающая только на NTFS 5.0. В следующих разделах подробно описаны технология шифрования, место шифрования в операционной системе, взаимодействие с пользователями и способ восстановления данных.

Архитектура EFS

EFS содержит следующие компоненты операционной системы Windows 2000 (рис. 2):

  •  Драйвер EFS. Драйвер EFS является надстройкой над файловой системой NTFS. Он обменивается данными со службой EFS — запрашивает
    ключи шифрования, наборы DDF
     (Data Decryption Field) и DRF (Data Recovery Field), — а также с другими службами управления ключами. Полученную информацию драйвер EFS передает библиотеке реального времени файловой системы EFS (File System Run-Time Library, FSRTL), которая прозрачно для операционной системы выполняет различные операции, характерные для файловой системы (чтение, запись, открытие файла, присоединение информации).
  •  Библиотека реального времени файловой системы EFS. FSRTL — это модуль, находящийся внутри драйвера EFS, реализующий вызовы NTFS, выполняющие такие операции, как чтение, запись и открытие зашифрованных файлов и каталогов, а также операции, связанные с шифрованием, дешифрованием и восстановлением файлов при их чтении или записи на диск. Хотя драйверы EFS и FSRTL реализованы в виде одного компонента, они никогда не обмениваются данными напрямую. Для передачи сообщений друг другу они используют механизм вызовов (callouts) NTFS, предназначенный для управления файлами. Это гарантирует, что вся работа с файлами происходит при непосредственном участии NTFS. С помощью механизма управления файлами операции записи значений атрибутов EFS (DDF и  DRF) реализованы как обычная модификация атрибутов файла. Кроме того, передача ключа шифрования файла FEK (см. ниже), полученного службой EFS, в FSRTL выполняется так, чтобы он мог быть установлен в контексте открытого файла. Затем контекст файла используется для автоматического выполнения операций шифрования и дешифрования при записи и чтении информации файла
  •  Служба EFS. Служба EFS (EFS Service) является частью системы безопасности операционной системы. Для обмена данными с драйвером EFS она использует порт связи LPC, существующий между локальным администратором безопасности (Local Security Authority, LSA) и монитором безопасности, работающим в привилегированном режиме. В режиме пользователя для создания  ключей  шифрования  файлов  и  генерирования данных для DDF и DRF служба EFS использует CryptoAPI. Она также поддерживает набор API для Win32.
  •  Набор API для Win32. Этот набор интерфейсов прикладного программирования позволяет выполнять шифрование файлов, дешифрование и восстановление зашифрованных файлов, а также их импорт и экспорт (без предварительного дешифрования). Эти API поддерживаются стандартным системным модулем DLL — advapi32.dll.

Технологии шифрования EFS

EFS основана на шифровании с открытым ключом и использует все возможности архитектуры CryptoAPI в Windows 2000. Каждый файл шифруется с помощью случайно сгенерированного ключа, зависящего от пары открытого (public) и личного, закрытого (private) ключей пользователя. Подобный подход в значительной степени затрудняет осуществление большого набора атак, основанных на криптоанализе. При криптозащите файлов может быть применен любой алгоритм симметричного шифрования. Текущая версия EFS использует алгоритм DESX (расширенный DES) с длиной ключа 56 бит. EFS позволяет осуществлять шифрование и дешифрование файлов, находящихся на удаленных файловых серверах

В данном случае EFS может работать только с файлами, находящимися на диске. Шифрующая файловая система не осуществляет криптозащиту данных, передаваемых по сети. Для шифрования передаваемой информации в операционной системе Windows 2000 следует применять специальные сетевые протоколы, например SSL/PCT.

Место EFS в Windows 2000

EFS тесно взаимодействует с NTFS 5.0. Временные файлы, создаваемые приложениями, наследуют атрибуты оригинальных файлов (если файлы находятся в разделе NTFS). Вместе с файлом шифруются также и его временные копии. EFS находится в ядре Windows 2000 и использует для хранения ключей специальный пул, не выгружаемый на жесткий диск. Поэтому ключи никогда не попадают в файл подкачки.

Конфигурация EFS, устанавливаемая по умолчанию, позволяет пользователю шифровать свои файлы без всякого вмешательства со стороны администратора. В этом случае EFS автоматически генерирует для пользователя пару ключей (открытый и личный), применяемую для криптозащиты данных.

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

EFS исключает необходимость предварительного расшифровывания данных при доступе к ним. Операции шифрования и дешифрования выполняются автоматически при записи или считывании информации. EFS автоматически распознает зашифрованный файл и найдет соответствующий ключ пользователя в системном хранилище ключей. Поскольку механизм хранения ключей основан на использовании CryptoAPI, пользователи получают возможность хранить ключи на защищенных устройствах, например, смарт-картах. Если зашифрованные файлы хранятся на общих ресурсах, то для работы с ними пользователи должны иметь сертификат и личный ключ того, кто установил шифрование этих файлов. Впоследствии каждый пользователь может при необходимости независимо расшифровать файл при помощи своего личного ключа.

Будьте внимательны: нельзя шифровать сжатые файлы и папки (и наоборот — сжимать зашифрованные данные)!

Напомним, что каталоги и файлы можно шифровать только на томах NTFS.

Безопасность IP

Средства безопасности протокола IP позволяют управлять защитой всего IP-трафика от источника информации до ее получателя. Возможности Управления безопасностью IP (IP Security Management) в системе Windows 2000 позволяют назначать и применять политику безопасности IP , которая гарантирует защищенный обмен информацией для всей сети. Механизм безопасности IP представляет собой реализацию протокола безопасности IP (IP Security, IPSec), прозрачную для пользователя, администрирование, безопасности централизовано и совмещает гарантии безопасного обмена информацией с легкостью применения.

Потребность в защите сетей, основанных на протоколе IP, уже достаточно велика и растет с каждым годом. В настоящее время в тесно взаимосвязанном деловом мире сетей Интернет, интранет, экстранет (extranet — корпоративная сеть, части которой связаны через открытые сети, например, через Интернет), филиалов и удаленного доступа по сетям передается важная информация, конфиденциальность которой нельзя нарушать. Одним из основных требований, предъявляемых к сети со стороны сетевых администраторов и прочих профессионалов, обслуживающих и использующих сети, является требование гарантии, что этот трафик будет защищен от:

  •  Доступа субъектов, не имеющих на это прав
  •  Перехвата, просмотра или копирования
  •  Модификации данных во время пути по сети

Эти проблемы характеризуются такими показателями, как целостность данных, конфиденциальность и подлинность. Кроме того, защита от повторного использования (replay protection) предотвращает принятие повторно посланного пакета

Достоинства безопасности IP

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

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

  •  Централизованное администрирование политикой безопасности, что уменьшает затраты на административные издержки

Политика IPSec может быть создана и назначена на уровне домена (при этом она хранится в Active Directory), что устраняет необходимость индивидуального конфигурирования каждого компьютера. Однако если компьютер имеет уникальные требования, или это автономный компьютер, политика может быть назначена непосредственно.

  •  Прозрачность безопасности IP для пользователей и прикладных программ

Не нужно иметь отдельные программные средства безопасности для каждого протокола в стеке TCP/IP, поскольку приложения, использующие TCP/IP, передают данные уровню протокола IP, где они шифруются. Установленная и настроенная служба IPSec прозрачна для пользователя и не требует обучения.

  •  Гибкость конфигурирования политики безопасности, которая помогает
    решать задачи в различных конфигурациях

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

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

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

  •  Усиленная служба аутентификации, которая предотвращает перехват  данных путем подмены идентификаторов.
  •  Ключи большой длины и динамический повторный обмен ключами в течение текущих сеансов связи, что помогает защитить соединение против атак.
  •  Безопасная связь от начала до конца для частных пользователей сети внутри одного и того же домена или через любой доверенный (trusted) домен внутри корпоративной сети.
  •  Безопасная связь между пользователями в любом домене корпоративной сети, основанной на протоколе IP.
  •  Отраслевой стандарт  IPSec открыт для  реализации других технологий шифрования IP, что позволяет взаимодействовать с другими платформами и продуктами.
  •  Сертификаты с открытым ключом и поддержка ключей pre-shared

Это требуется для разрешения установления безопасной связи с компьютерами, которые не являются частью доверенного домена.

  •  IPSec работает во взаимодействии с другими механизмами защиты, сетевыми протоколами и базовыми механизмами безопасности Windows 2000.
  •  Поддерживается шифрование сообщений RSVP для реализации QoS и ACS в Windows 2000, т. е. IPSec не мешает использовать все преимущества приоритетного управления шириной полосы пропускания, обеспечиваемые этими службами.

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

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

IPSec может защищать пути между компьютерами, между шлюзами защиты или между шлюзами защиты и компьютерами. Услуги, доступные и требуемые для трафика, настраиваются с использованием политики IPSec. Политика IPSec может быть настроена локально на отдельном компьютере или может быть назначена через механизмы групповой политики Windows 2000 в Active Directory. Политика IPSec определяет, как компьютеры доверяют друг другу. Самое простое — полагаться на применение доменов доверия Windows 2000, основанных на протоколе Kerberos. Для того чтобы доверять компьютерам в том же самом или в другом доверенном домене Windows 2000, задается предопределенная политика IPSec.

Каждая дейтаграмма на уровне протокола IP сравнивается с набором фильтров, предоставляемых политикой безопасности, которая поддерживается администратором для компьютера, пользователя, организационной единицы (OU) или всего домена. С любой дейтаграммой службы IP могут выполнить одно из трех действий:

  •  Передать на обработку службам IPSec
  •  Передать ее без изменений
  •  Игнорировать ее

Установка IPSec включает описание характеристик трафика для фильтрации (IP-адрес источника/адресата, протокол, порт и т. д.) и определение того, какие механизмы требуется применить для трафика, соответствующего фильтру (фильтрам). Например, в очень простом случае два автономных компьютера могут быть сконфигурированы для использования IPSec между ними в одном и том же домене Windows 2000 и активизации политики «закрытости» (lockdown). Если два компьютера — не элементы одного и того же или доверенного домена, то доверие должно быть сконфигурировано с использованием пароля или ключа pre-shared в режиме «закрытый»:

  •  Установка фильтра, который определяет весь трафик между двумя компьютерами.
  •  Выбор метода опознавания (выбор ключа pre-shared или ввод пароля).
  •  Выбор политики переговоров (в режиме «закрытый», при этом весь трафик, соответствующий фильтру (фильтрам), должен использовать IPSec).
  •  Определение типа подключения (ЛВС, коммутируемое соединение или оба типа подключения).

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

Когда IPSec применяется для шифрования данных, производительность сети понижается из-за непроизводительных затрат на обработку и шифрование. Один из возможных методов уменьшения воздействия этих непроизводительных затрат — обработка на аппаратном уровне. Поскольку NDIS 5.0 поддерживает такую функцию, можно включить аппаратные средства шифрования в сетевой адаптер. Адаптер, обеспечивающий перегрузку IPSec на аппаратные средства, скоро представят на рынке несколько поставщиков аппаратного обеспечения.

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

Базовые механизмы и концепции. Алгоритмы шифрования

Для защиты данных применяются математические алгоритмы шифрования. Безопасность IP в Windows 2000 использует следующие стандартные криптографические алгоритмы:

  •  Методика Diffie-Hellman (D-H)

Алгоритм шифрования с открытым ключом (названный по имени изобретателей — Diffie и Hellman), который позволяет двум поддерживающим связь объектам договариваться об общедоступном ключе без требования шифрования во время порождения ключа. Процесс начинают два объекта, обменивающиеся общедоступной информацией. Затем каждый объект объединяет общую информацию другой стороны со своей собственной секретной информацией, чтобы сгенерировать секретное общедоступное значение.

  •  
    Код аутентификации хэшированного сообщения (НМАС, Hash Message Authentication Code)

НМАС — алгоритм шифрования с закрытым ключом, обеспечивающий целостность сообщений, установление их подлинности и предотвращение повторного использования. Установление подлинности, использующее функции хэширования (перемешивания), объединено с методом закрытого ключа. Хэшированное значение, известное также как дайджест (digest), или выборка, сообщений, используется для создания и проверки цифровой подписи. Это уникальное значение намного меньше, чем первоначальное сообщение, созданное из цифровой копии кадра данных. Если передаваемое сообщение изменилось по пути следования, то хэшированное значение будет отличаться от оригинала, а IP-пакет будет отброшен.

  •  HMAC-MD5

Дайджест сообщений-5 (MD5, Message Digest) — функция хэширования, которая порождает 128-разрядное значение, являющееся подписью данного блока данных. Эта подпись служит для установления подлинности, целостности и предотвращения повторного использования.

  •  HMAC-SHA

Безопасный алгоритм хэширования (SHA, Secure Hash Algorithm) — еще одна функция хэширования, которая порождает 160-разрядное значение подписи, необходимое для установления подлинности, целостности и предотвращения повторного использования.

  •  DES-CBC

Стандарт шифрования данных (Data Encryption Standard, DES) — формирование цепочки шифрованных блоков (Cipher Block Chaining, CBC) — алгоритм шифрования с закрытым ключом, обеспечивающий конфиденциальность. Генерируется случайное число, которое используется совместно с закрытым ключом для шифрования данных.

Ключи

Для обеспечения безопасности данных в криптографии совместно с алгоритмами используются ключи. Ключ — это некоторое значение, применяемое для шифрования или дешифрования информации. Для шифрования в системах безопасности могут использоваться как закрытые, так и открытые ключи. Даже если алгоритм известен, без ключа данные нельзя просмотреть или изменить. Возьмем, например, замок с секретом. Алгоритм открывания замка с секретом общеизвестен — чтобы открыть замок, необходимо установить диски в заданном порядке. Однако ключ к замку, число комбинаторного кода, является секретным и известно только хозяину замка. Безопасность IP в Windows 2000 использует ключи большой длины, чтобы обеспечить повышенную безопасность. Если длину ключа увеличить на один бит, число возможных комбинаций удваивается. Безопасность IP в Windows 2000 также применяет динамическое обновление ключей; это означает, что после определенного интервала для продолжения обмена данными генерируется новый ключ. Такое решение позволяет защититься от злоумышленника, который получил доступ к части информации во время ее передачи.

Протоколы безопасности

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

  •  Протокол ассоциаций безопасности и управления ключами Internet (ISAKMP, Internet Security Association and Key Management Protocol)

Прежде чем IP-пакеты будут переданы от одного компьютера другому, должна быть установлена ассоциация, или сопоставление безопасности (Security Association, SA). SA — набор параметров, который определяет необходимые для защищенной связи услуги и механизмы, типа ключей для безопасных протоколов. SA должна существовать между двумя поддерживающими связь сторонами, использующими безопасность IP. ISAKMP определяет основу для поддержки и установления ассоциаций безопасности. Протокол ISAKMP не связан ни с одним конкретным алгоритмом, методом порождения ключей или протоколом безопасности.

  •  Oakley

Протокол определения ключей, который использует алгоритм обмена ключами Diffie-Hellman (D-H). Oakley генерирует ключи, необходимые для безопасного обмена информацией.

  •  Заголовок аутентификации IP (АН, Authentication Header)

АН обеспечивает целостность, установление подлинности и защиту от повторного использования. Также при помощи АН поддерживается конфиденциальность. АН основан на некотором алгоритме вычисления ключевого кэшированного значения сообщения (НМАС) для каждого IP-пакета (рис. 3).

  •  Протокол инкапсуляции безопасности (ESP, Encapsulating Security Protocol)

В дополнение к услугам АН, описанным выше, ESP обеспечивает конфиденциальность, используя алгоритм DES-CBC (рис. 4).

Архитектура безопасности IP

Механизм безопасности IP в Windows 2000 разработан для защиты любого сквозного соединения между двумя компьютерами. При сквозном соединении два осуществляющих связь компьютера (системы) поддерживают IP-безопасность на каждом конце соединения. Сделано предположение, что располагающаяся между ними среда, по которой передаются данные, небезопасна. Данные прикладной программы компьютера, начинающего связь, перед пересылкой по сети автоматически (прозрачно для прикладной программы) шифруются. На компьютере адресата данные так же автоматически дешифруются — прежде, чем они будут переданы приложению-получателю. Шифрование всего сетевого IP-трафика гарантирует, что любая связь с использованием TCP/IP защищена от подслушивания. Поскольку данные передаются и шифруются на уровне протокола IP, для каждого протокола в наборе протоколов TCP/IP не требуются отдельные пакеты, обеспечивающие безопасность

Безопасность IP в Windows 2000 объединяет методы шифрования с открытыми и закрытыми ключами для повышения уровня безопасности и большей производительности.

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

  •  Политика безопасности (security policy)

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

  •  Политика переговоров (negotiation policy)

Политика переговоров определяет службы безопасности, используемые во время связи. Можно выбрать услуги, включающие конфиденциальность (ESP) или не обеспечивающие конфиденциальность (АН), или можно определить, какой алгоритм нужно использовать для безопасности IP. Можно установить несколько методов безопасности для каждой политики переговоров. Если первый метод недопустим для ассоциации безопасности, служба ISAKMP/Oakley продолжит просмотр этого списка до тех пор, пока не будет найден тот алгоритм, который безопасность IP сможет использовать для установления ассоциации. Если переговоры не увенчались успехом, устанавливается соединение без безопасности IP.

  •  IP-фильтры

IP-фильтры определяют различные действия, зависящие от направления передачи IP-пакета, от типа применяемого IP-протокола (например, TCP или UDP) и от того, какие порты используются в соответствии с протоколом. Фильтр применяется непосредственно — как шаблон, с которым сравниваются IP-пакеты. Каждый IP-пакет сверяется с IP-фильтром и, если соответствие найдено, для посылки данных применяются реквизиты связанной политики безопасности.

Для поддержки обмена информацией с использованием безопасности IP на каждом компьютере с Windows 2000 устанавливаются локальные службы и драйверы:

  •  Служба агента политики безопасности (Policy Agent Service)

Агент политики — локальный, резидентный агент. Он отыскивает политику безопасности IP в Active Directory во время инициализации системы. Затем он передает информацию о политике сетевому драйверу безопасности IP (IPSec-драйверу) и службе ISAKMP/Oakley. Агент политики не хранит политику безопасности локально, а находит ее в Active Directory.

  •  Служба управления ключами ISAKMP/Oakley

Это локальный, резидентный агент, который получает политику безопасности от агента политики. При использовании политики безопасности служба ISAKMP устанавливает ассоциацию безопасности (SA) с компьютером-получателем. Тождество поддерживающих связь сторон опознается с помощью центра распределения ключей Kerberos. В заключение служба ISAKMP посылает SA и информацию о ключе драйверу IPSec. Служба ISAKMP/Oakley запускается агентом политики.

  •  Драйвер безопасности IP (IPSec-драйвер)

Это локальный, резидентный агент, который просматривает все IP-пакеты на соответствие фильтру IP. Если он находит соответствие, то задерживает пакеты в очереди, в то время как служба ISAKMP/Oakley генерирует необходимую SA и ключ, чтобы защитить обмен информацией. Агент, получив эту информацию от службы ISAKMP, шифрует IP-пакеты и посылает их компьютеру-адресату. Драйвер IPSec запускается агентом политики.

Все три перечисленные компонента установлены в Windows 2000 по умолчанию и запускаются автоматически.

Примечание

 

Каждый контроллер домена содержит центр распространения ключей Kerberos (Kerberos Distribution Center, KDC) для установления подлинности, который конфигурируется сетевым администратором. Kerberos служит третьим доверенным лицом, которое проверяет подлинность поддерживающей связь стороны. Безопасность IP в Windows 2000 использует протокол Kerberos для идентификации компьютеров.


Windows 2000 — взлом за 10 минут и меньше…

Проблемы безопасности в существующих версиях Windows NT

Завязалась у меня как-то по электронной почте небольшая дискуссия с одним читателем на тему — кто такой ламер? В результате недолгой переписки мы пришли к единому мнению, что далеко не каждый неопытный пользователь — ламер, и не каждый ламер — неопытный пользователь. Что это значит? А значит это то, что непробиваемым ламером может оказаться и проработавший несколько десятков лет за компьютерами системный администратор, поскольку ламерство — это не отсутствие знаний, а ничем не подкреплённая уверенность в их наличии. Как там говорил кто-то из великих мудрецов (редактор наверняка в курсе — кто): «Я знаю, что ничего не знаю». Ламер же знает, что он знает всё.

Системный администратор, имеющий даже весьма серьёзные пробелы знаний в областях, имеющих непосредственное отношение к его рабочим обязанностям, не так уж и фатален для всего технологического процесса, протекающего в подведомственной ему локальной сети. В конце концов, нормальный человек имеет склонность к постоянному повышению своего образовательного уровня, да и наличие нескольких сисадминов, как правило, заметно улучшает суммарное качество их работы — опыт одного дополняют знания другого. Гораздо хуже, на мой взгляд, если системный администратор начинает сваливать свою вину на подопечных пользователей — дескать, это они, такие сякие, ведут себя нелояльно, так и норовят всё на свете хакнуть, и вообще, не умеют обращаться с компьютером. Дык, ёлки-палки, это ж твоя задача — сделать так, чтобы, во-первых, система не только была надёжно защищена от «дурака», но и как-то сопротивлялась хотя бы самым элементарным приёмам взлома. А во-вторых, создать для пользователей такие условия работы, чтобы во взломе просто не было никакой необходимости, и это, возможно, даже эффективнее. То есть работать надо, выполнять свои прямые обязанности. Ставить нужный пользователям софт, разграничивать грамотным образом пользовательские привилегии, делать так, чтобы всем было комфортно, а не только сисадмину. Если же на просьбу установить простейшую программу типа Exact Audio Copy сисадмин задаёт вопрос: «А зачем?» и отсылает к более высокому начальству за разрешением, то про него сразу всё становится ясно. Ну не хочет человек оторвать зад от стула, прикрываясь словами, что на рабочем ПК должен быть установлен софт только для работы. Как правило, именно в сетях с такими администраторами и творится чёрт знает что — пользователи, не видя админа месяцами, устанавливают такой софт, что мама не горюй! Диски забиты играми, порнухой и вирусами… Но зато сам сисадмин формально ни за что не отвечает — пользователи ведь делают всё это самовольно. И именно в таких сетях нередко возникают эксцессы со взломом системы, после случайного вскрытия которых недобросовестный админ тут же бежит жаловаться любимому начальнику, где начинает брызгать слюнями и исходить жуткой вонью с единственной целью — пытаться доказать, что это не он так плохо работает, а пользователи обнаглели. И ваще, хороший пользователь — мёртвый пользователь, а он весь такой белый и пушистый и сам про взлом всё знает, только непонятно, почему ничего не сделал для его предотвращения. Хотя дураку ясно, если админа живьём увидеть можно только у начальника в кабинете, то пользователям волей-неволей приходится брать права администратора на себя.

Надо ли говорить, что админ, который не сумел защитить компьютер от взлома даже со стороны обычного, ленивого на всякие дополнительные телодвижения, пользователя, и подавно не защитит сеть от проникновения активного и действительно злонамеренного хакера. Благо, делается это в считающейся на сегодня самой надёжной Windows 2000 минут этак за 10 (Windows XP встречается в сетях пока редко, но не сильно превосходит в этом плане).

Загрузка — основа основ

Способов «взлома» локальной Windows NT, вообще говоря, множество. Это и получение паролей других пользователей, в том числе администратора. Это и сброс или замена пароля администратора. Это и повышение до максимума пользовательских привилегий непосредственно из-под своей учётной записи, имеющей изначально весьма ограниченные права. Это и осуществление доступа к чужим файлам и многое другое. Из всех этих способов самый, на мой взгляд, элегантный и неразрушающий — получение полного списка паролей локальной машины. Ситуаций, когда взлом вероятен или даже необходим, тоже немало. Собственно говоря, само понятие «взлом» может применяться и к абсолютно законным случаям, прикрываясь фиговым листком фразы «восстановление забытых паролей». Ведь именно такая задача нередко стоит и перед самими системными администраторами, поскольку случаев, когда админ уволился, не сказав все пароли своему преемнику — пруд пруди. И используются при этом самые натуральные и достаточно известные хакерские методы. А уж пользователей, которые забыли понаставленные с бодуна пароли…

Вторая сторона медали во всём этом неблагодарном деле — умение по мере сил и возможностей противостоять взлому. Любой администратор самой маленькой локальной сети обязан это делать. Аксиома! Доказательств не требуется… Но не надо забывать и того, что всякого рода любопытным личностям или даже силовым структурам (легальным и нелегальным) может понадобиться полный или скрытый доступ и к вашему личному домашнему или мобильному ПК, если только информация на нём представляет хоть какую-то ценность. А потому, быть как минимум в курсе наличия брешей в безопасности своей собственной системы желательно и самому обычному пользователю, не только системному администратору. Конечно, если вас посадят на раскалённый утюжок, то тут будет уже не до сохранения паролей, но мы рассмотрим здесь чисто софтовый аспект проблемы. Различные методы «социального инжиниринга», «новорусские» пытки и шпионские штучки типа скрытых камер в отдушине или «жучков» в клавиатурном кабеле пока оставим за кадром.

И для осуществления большинства задач по взлому (будем всё же называть это именно так — «восстановление паролей» звучит хуже) системы необходимо загрузить на ПК альтернативную операционную систему — DOS, Linux или что-то ещё (например, можно перенести жёсткий диск на другой ПК со «своей» Windows NT). Думаю, понятно, что в системе, на которой можно запустить
NTFS for DOS, NTFS for Windows 98, ERD Commander
(все — http://www.
winternals.com), Paragon NTFS for Windows, Active@ NTFS Reader for DOS (http://www.ntfs.com), Windows Preinstallation Environment или «линуксовый» LiveCD, абсолютно невозможно скрыть свои частные документы от посторонних глаз, не прибегая к дополнительному шифрованию. А потому, сисадмин, который не предпринял никаких, даже простейших мер по предотвращению загрузки ПК со сменных носителей, или не очень умный или очень ленивый. А самый элементарный способ — установка пароля в CMOS Setup, плюс разрешение загрузки ПК только с диска С:.

Надо сказать, что существуют два наиболее распространённых метода ограничения доступа к компьютеру с помощью настроек CMOS Setup: запрет изменения настроек CMOS Setup и требование ввода пароля при загрузке компьютера. В обоих случаях для законного снятия блокировки необходимо знание установленного в системе пароля. Встречаются, конечно, и дополнительные меры защиты на уровне «железа», это, в частности, очень распространено в портативных компьютерах — ноутбуках. Например, парольная защита, встроенная в жёсткий диск или даже механические замки. Защищённый паролем жёсткий диск (hard disk lock password) часто оказывается бесполезен даже при его переносе на другую машину, и такой пароль неспециалисту не удастся сбросить ни форматированием ни переразбиением диска. Нередко для предотвращения неавторизованного доступа к ноутбуку применяются специальные микросхемы, которые либо просто в защищённом виде хранят пароль BIOS, либо осуществляют какую-то более серьёзную защиту, например, поддержку аутентификации по смарт-картам или отпечаткам пальцев. Впрочем, и такую защиту компетентные товарищи всё же ломают, причём в ряде случаев даже таким относительно простым способом, как перепрошивка BIOS или подмена чипа на аналогичный чип с уже известным паролем (http://www.pwcrack.com). Но в любом случае затраты на защиту, конечно, должны соответствовать возможному ущербу от неавторизованного доступа и вероятному упорству потенциальных хакеров. Для обычной офисной «локалки» дальше пароля на BIOS, вероятно, смысла идти всё же нет, а если вы вдруг начнёте заниматься банковским делом, то слабую гарантию безопасности может дать разве что круглосуточный охранник, готовый по условленному сигналу в пух и прах расстрелять из «Калашникова» жёсткий диск сервера. Да и то, если охранник неподкупный…

Итак, если вы можете загрузить компьютер в обычном режиме или с дискеты, т. е. пароль непосредственно на загрузку не установлен, то вскрыть пароль на изменение настроек CMOS Setup часто довольно легко — для этого написано немало специализированных программ (кракеров), которые либо вообще сбрасывают пароль в пустоту, либо элементарно выводят его на экран компьютера. Например, пара «линуксовых» утилит исключительно для установки паролей ноутбуков Toshiba имеется здесь: http://www.buzzard.org.uk/toshiba/passwords.html. Самые лучшие из универсальных программ вы найдёте в Интернете по адресам:

http://www.cgsecurity.org/cmospwd-4.3.zip

http://www.11a.nu/FILES/!BIOS/SRC/DOS/unpacked/IBIOS.EXE

http://www.newpowersoft.com/password%20reminder/setup.exe

или на сайте http://www.password-crackers.com/crack.html.

Надо только учитывать, что для BIOS от разных производителей обычно используются разные программы, найти которые в Интернете не так уж сложно, достаточно в любой поисковой системе задать поиск, например, по такой маске: «Award BIOS Cracker» или «AMI BIOS password recovery». Не все такие программы, правда, гарантированно сработают, они обычно жаждут чистого DOS, но вскрыть пароль с их помощью более чем реально.

Известен также «ручной» метод сброса настроек BIOS из-под DOS, при помощи команды Debug. Загрузившись с дискеты в чистый DOS необходимо набрать в командной строке для Award и AMI BIOS:

DEBUG

-O 70 17

-O 71 17 Q

для Phoenix BIOS:

DEBUG

-O 70 FF

-O 71 17 Q

Если же в системе установлен пароль и на загрузку ПК, то дело лишь немного усложняется. Вскрыть такую защиту тоже можно несколькими способами. Самый простой — вообще сбросить все настройки CMOS Setup в состояние по умолчанию. Естественно, при этом и требование ввода пароля будет отключено (что может заметить админ). Для корректного проведения такой операции желательно найти инструкцию к материнской плате (полагаю, в Интернете их навалом) и в соответствии с её указаниями переставить определённую перемычку на материнской плате. Обычно она располагается возле края платы, рядом с батарейкой или же рядом с процессором и маркируется <CLEAR>, <CLEAR CMOS>, <CLR>, <CLRPWD>, <PASSWD>, <PASSWORD>, <PWD>. На лаптопах её можно найти под клавиатурой или в открываемых отсеках нижней части. Если такой вариант по каким-либо причинам не проходит, то можно попробовать на несколько минут (редко — часов, если имеется ёмкий конденсатор) вынуть батарейку или сам чип CMOS из материнской платы — этого также достаточно для обнуления всех настроек CMOS (желательно при этом отсоединить и блок питания). В крайнем случае, если аккумулятор намертво впаян в плату, то допускается даже замыкание его контактов, но это, как вы понимаете, уже менее грамотно и гарантии сохранности оборудования вам в этом случае никто не даст (хотя вряд ли что-то при этом сломается). Однако в случае с ноутбуками, особенно IBM Thinkpad, обычно крайне не рекомендуется отключать батарейку, так как это может привести к невозможности загрузить ПК, поскольку в некоторых таких машинах используется скрытый от пользователя пароль жёсткого диска (включается он обычно вместе с установкой пароля Supervisor), который при сбросе питания система попросту забывает. В подобных ситуациях настройки CMOS следует сбрасывать только в соответствии с инструкцией на ноутбук — джампером на плате.

На некоторых машинах можно обойти ввод пароля путём нажатия некой комбинации клавиш при загрузке ПК, например, если держать зажатым левый <Shift> (на Toshiba), <Insert> (некоторые версии AMI BIOS) или же если в течение загрузки несколько раз одновременно нажать обе кнопки мыши (IBM APTIVA). Иногда помогают и такие не вполне корректные способы, как переполнение буфера клавиатуры путём быстрого многократного нажатия клавиши ESC при загрузке или даже загрузка ПК без клавиатуры или мыши. В Phoenix Ambra сбросить пароль можно, если загрузить ПК с отключенным от жёсткого диска IDE-шлейфом.

Кроме того, встречаются и такие необычные способы сброса пароля CMOS, как навешивание специальной заглушки на LPT-порт у ноутбуков Toshiba, в которых даже полное снятие питания может не сбросить пароль, хранящийся в энергонезависимой памяти. Для этого надо просто распаять стандартный коннектор 25pin, соединив контакты: 1–5–10, 2–11, 3–17, 4–12, 6–16, 7–13, 8–14, 9–15, 18–25.

Для ноутбуков Toshiba мне попался в Интернете ещё один интересный способ обхода пароля BIOS. Вот что он из себя представляет. Берётся дискета, и в любом шестнадцатеричном редакторе изменяются первые пять байтов второго сектора (если загрузочный сектор считать первым) таким образом, чтобы они равнялись: 4B 45 59 00 00. Изменения сохраняются, и вы получаете ключевую дискету! Теперь вставляете её в ноутбук, перегружаете его, при запросе пароля просто жмете <Enter> и появляется запрос на подтверждение ввода нового пароля (пустого!), на который отвечаем <Y> и <Enter>. Всё, пароль сброшен. Сам я этот способ не проверял — обладатели ноутбуков Toshiba могут поэкспериментировать на досуге. А готовую ключевую дискету для Toshiba можно скачать по адресу http://www.cgsecurity.org/keydisk.exe.

И, наконец, уже давно повелось, что производители BIOS оставляют в своих программах специальные «чёрные ходы» или так называемые «инженерные пароли» (а вы сомневались? Думаете, в Windows такого нет?). Всё бы хорошо, но инженерные пароли относительно старых систем давным-давно всем известны, а вот для новой материнской платы или современного «брендового» ноутбука вы, скорее всего, такой уже не подберёте. Более того, компания Award предоставляла производителям оборудования даже специальную утилиту MODBIN.EXE для установки своего собственного инженерного пароля, так что узнать такой пароль может оказаться непростой задачей.

Постоянно же обновляемые списки «заводских паролей» вы также можете найти в Интернете:

http://www.11a.nu/FILES/!BIOS/SRC/DOS/unpacked/DOCS/BIOSDEF1.LST

http://www.phenoelit.de/dpl/dpl.html

Последний способ получения доступа к информации при забытом пароле — обратиться непосредственно к производителю оборудования, профессионалам типа http://www.pwcrack.com или даже в обычный сервис-центр по ремонту ноутбуков. Уж они-то знают все «чёрные ходы» и, вероятно, за некоторое вознаграждение помогут вам или другим заинтересованным лицам восстановить или сбросить установленный на вашем ПК пароль.

Таким образом, пароль, установленный в CMOS Setup, по большому счёту, конечно, не представляет какой-либо серьёзной защиты даже от обычных, разбирающихся в современной технике пользователей, имеющих доступ к компьютеру, и без параллельного использования каких-то дополнительных ухищрений он почти бесполезен. Но в любом случае сисадмин ОБЯЗАН его устанавливать (а лучше — оба пароля)!!! Потому что пара достаточно простых приёмов всё же существенно повышают степень его защиты. А чем больше преград надо преодолевать при взломе системы, тем ниже вероятность его успешного осуществления.

Какие же это приёмы? Надо исключить возможность чисто механического сброса паролей, для чего вполне подойдёт опломбирование корпуса стикерами, применение винтов с нестандартными шлицами (типа «секреток» на колёсах автомобилей), установка на корпус специального замочка. Всё-таки оставить явные следы взлома на служебном ПК решится не каждый сотрудник даже ради установки очень нужной программы. Говорят, после появления программ типа NTFS for DOS Microsoft заявила, что полную безопасность сможет дать только отсутствие физического доступа к ПК (оптимисты, едрёныть!). Но можно, например, заставить каждого пользователя подписать жёсткий документ о политике безопасности в сети, где, помимо всего прочего, прописать запрет вскрытия корпуса и загрузки ПК со сменных носителей — психологический эффект от этого сыграет немалую роль.

Далее необходимо затруднить применение программных «крякеров» паролей CMOS. Естественно, весьма желательно, чтобы администратор заранее проверил возможность срабатывания таких программ на подведомственной ему технике. Если выяснится, что таковые существуют в природе, то, поскольку подобные программы обычно «ДОСовские», можно, во-первых, с помощью локальных политик безопасности запретить запуск консоли CMD.EXE на пользовательских ПК. Для этого в диалоговом окне <Групповая политика> ► <Конфигурация пользователя> ► <Административные шаблоны> ► <Система> установите параметр <Запретить использование командной строки> (<Disable the command prompt>).

Во-вторых, можно вообще исключить запуск любых DOS-программ на машине пользователя. Для этого запретите пользователю доступ к файлу %SystemRoot%\System32\ntvdm.exe. Или для запрета целой группе пользователей <Users> выполните такую команду:

CACLS %SystemRoot%\System32\ntvdm.exe /E /D "Users"

Также можно, например, запретить доступ или вообще удалить с диска все копии файла Command.com (а вообще для NTVDM — виртуальной машины DOS в Windows 2000 — требуются ещё файлы Ntio.sys, Ntdos.sys, Ntvdm.exe, Ntvdmd.dll, Redir.exe — можно провернуть эксперимент и с их удалением).

Если же провести тщательный поиск в Интернете
«крякеров» BIOS и составить список найденных программ
(
Password Reminder, например, это Windowsприложение — http://www.newpowersoft.com/password%20reminder/), то неплохо было бы ещё и внести эти программы в список запрещенных к запуску. Это тоже делается в меню <Групповая политика> ► <Конфигурация пользователя> ► <Административные шаблоны> ► <Система>. Правда, переименование программы, внесённой в такой список, полностью снимает блокировку, но, возможно, как раз на этом рубеже у потенциального «хакера» лопнет терпение. Либо проявите ещё большую жестокость и установите список разрешённых к запуску программ в значении параметра <Выполнять только разрешенные приложения для Windows> (<Run only allowed Windows applications>).

Наконец, можно пойти и на полное удаление из ПК привода гибких дисков — в локальной сети он не очень-то и нужен. От CD-ROM отказаться, конечно, сложнее, но если предпринять описанные выше усилия по защите пароля CMOS, то с наличием привода CD-ROM можно смириться. И ещё. Не используйте в BIOS опцию автоматического определения жёсткого диска, поскольку взломщик может подключить в систему собственный диск со всеми необходимыми для взлома пароля CMOS программами. И обязательно отключите в CMOS Setup возможность загрузки по сети, а также USB-порт, поскольку флеш-диски для этого порта сейчас получили огромное распространение, а Windows 2000 автоматически подключает такой диск, не спрашивая разрешения у администратора. Да и DOS-драйвера для USB-дисков уже появились.

Кража SAM-файла

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

Со времён Windows NT 4 каждому дошкольнику известно, что в этой ОС для получения имён пользователей и соответствующих им паролей достаточно скопировать файл реестра SAM — базу данных Security Account Manager, диспетчера защиты учётных записей, в которой и хранятся пароли, извлекаемые впоследствии с помощью специальных программ. Файл SAM Windows NT (и одна из его резервных копий SAM.SAV) находится в папке %SystemRoot%\system32\config, а ещё одну его копию можно обнаружить в папке %SystemRoot%\repair (и там же попадается упакованный файл SAM._, который может быть распакован командой <EXPAND SAM._ SAM>). Из-под самой Windows доступ к этому файлу (а в грамотно настроенной системе — и к его резервной копии) получить невозможно, потому-то и требуется загрузка альтернативных ОС, которой мы так активно добивались чуть выше. Обычная DOS-дискета и программа NTFS for DOS Pro отлично справляются с такой задачей.

Однако уязвимость SAM-файла Microsoft однажды попыталась устранить (в Windows NT 4 SP3) и в изучаемой нами сегодня Windows 2000, если говорить проще, файл SAM по умолчанию дополнительно шифруется с помощью специальной утилиты SYSKEY.EXE (вернее, SYSKEY дополнительно шифрует хэши паролей, http://support.microsoft.com/…q143475). Поэтому, в отличие от Windows NT4, в Win2k кража одного только файла SAM уже не даст злоумышленнику возможности вычислить локальные пароли. Но! Существует малюсенькая программа SAMInside, которая способна извлечь пароли из файла SAM при условии, что в её распоряжении имеется и второй по значимости файл реестра подвергшегося атаке компьютера — файл SYSTEM. Файл SAM обычно невелик и легко влезает на дискету, а вот SYSTEM может достигать нескольких мегабайт и «утащить» его чуть сложнее, но при желании, наличии архиватора, привода флоппи-дисков и полудюжины дискет всё получится.

Этот способ взлома паролей очень хорош по нескольким причинам: он предельно прост; время, которое необходимо злоумышленнику для работы непосредственно на атакуемом ПК, довольно невелико; процедуру взлома SAM-файла можно проводить в любое время в любом месте на максимально мощной машине; благодаря работе из-под DOS практически никаких следов взлома на атакованном ПК не остаётся (разве что даты последнего доступа к файлам в их атрибутах). Недостаток у этой программы один — ее демо-версия имеет существенные функциональные ограничения, которые позволяют восстанавливать только самые простые пароли. Да ещё не хватает, пожалуй, опций настройки процесса перебора паролей, максимум что предусмотрено — атака по словарю да выбор используемых при подборе пароля символов. Но даже при таком раскладе программа «щёлкает» пароли длиной до 14 символов, как семечки.

Хотя полное шифрование диска, безусловно, сделает невозможным копирование файлов реестра, никакой специальной защиты непосредственно от кражи файлов SAM и SYSTEM (так называемой атаки на SAM-файл), пожалуй, нет. Всё, что касалось защиты паролей CMOS Setup, в равной мере касается и SAM-файлов. Главная задача в обоих случаях — не допустить загрузки компьютера со сменных носителей. Также администратор обязан предотвратить несанкционированный доступ ко всем резервным копиям файлов реестра из-под Windows, что легко делается установкой соответствующих разрешений для папки %SystemRoot%\repair и других папок, в которых могут оказаться эти файлы при проведении регулярного резервного копирования. О защите же самих паролей от возможности их подбора программами, аналогичными SAMInside, мы поговорим чуть ниже.

Дамп хэшей

Второй способ получения пароля администратора — использование великолепной и очень полезной для каждого заботящегося о безопасности админа
программы
LC+4 (старое название L0phtCrack+, http://lcp.nm.ru)
или её зарубежного аналога —
LC4 (старое название — L0phtCrack http://www.atstake.com/research/lc/). Отечественная программа LC+4 гораздо предпочтительнее, поскольку абсолютно бесплатна, снабжена отличной справкой на русском языке, и у неё нет проблем с локализованными версиями Windows. Кроме того, многочисленные настройки этой программы при грамотном их использовании позволяют многократно ускорить процесс подбора пароля даже в сравнении со сверхбыстрым SAMInside, а потому её и рассмотрим поподробнее.

Но для начала немного теории. Windows NT/2000/XP хранят пароли в зашифрованном виде, называемом хэшами паролей (hash — смесь, мешанина). Хэши на локальной машине получить достаточно легко, но способ шифрования таков, что пароли не могут быть извлечены непосредственно из хэшей. Восстановление паролей заключается в вычислении хэшей по возможным паролям и сравнении вычисленных хэшей с имеющимися в действительности. В Windows 2000 с активированной функцией SYSKEY реально получить хэши учётных записей двумя способами: внедрением DLL из реестра или Active Directory локального или удалённого компьютера либо перехватом аутентификационных пакетов в сети. Второй способ в рамках этой статьи подробно рассматривать, пожалуй, не будем, поскольку нас интересует пока только локальный взлом. А первый способ называется методом pwdump2 (подробнее о нём — в readme к соответствующей утилите), и для его осуществления требуются полномочия администратора. Что же получается — замкнутый круг? Для получения прав администратора требуются права администратора? Ну, во многих случаях действительно восстановлением утерянных паролей юзеров-склеротиков приходится заниматься самому администратору, а потому он изначально имеет все права. Если же работать приходится из-под учётной записи обычного пользователя, то для снятия дампа паролей с помощью LC+4 методом pwdump2 потребуется пара нехитрых приёмов.

Попробуйте загрузить ПК и не прикасаться ни к мыши, ни к клавиатуре порядка 10—15 минут. Т. е. на экране всё это время должно оставаться либо приглашение нажать клавиши <Ctrl>+<Alt>+<Del>, либо приглашение ввести имя пользователя и пароль. Если хватит терпения, то вы увидите, как запустится хранитель экрана — скринсейвер, файл %SystemRoot%\system32\scrnsave.scr. Оказывается, этот скринсейвер запускается в контексте системы, ещё до регистрации какого-либо пользователя (вернее, от имени пользователя Default), и, соответственно, у скринсейвера имеются все права системы. Таким образом, достаточно просто подменить файл скринсейвера на любую другую программу (хотя бы на консоль CMD.EXE), и у нас будет максимум прав. Подмену скринсейвера сразу на программу LC+4 можно провернуть двумя способами. Например, просто переименовать файл LCP4.EXE в scrnsave.scr и скопировать его в папку %SystemRoot%\system32 вместе с необходимой библиотекой samdump.dll, которую копируем в подкаталог %SystemRoot%\system32\DATA\pwdump2. Не забудьте только сохранить в надёжном месте исходный scrnsave.scr, чтобы потом вернуть его на место. Теперь перегружаем ПК и выпиваем чашечку кофе в ожидании автоматического запуска LC+4.

Если же этот способ по какой-то причине не сработает, или ждать 10 минут кажется недостойным рулёзного хакера, то можно скопировать LC+4
под его родным именем, а уже в реестре прописать запуск
не scrnsave.scr, а LCP4.EXE. Это очень несложно сделать с помощью
интересной бесплатной программы
Offline NT Password & Registry Editor (http://home.eunet.no/~pnordahl/ntpasswd/), которая является вполне пригодным консольным редактором реестра Windows 2000, работающим из-под мини-линукса, загружаемого с обычной дискеты. Более удобный редактор из комплекта ERD Commander, к сожалению, не даёт доступа ко всем кустам реестра и в данном случае нам не поможет, разве что для удобного копирования файлов. Работать с Offline NT Password & Registry Editor несложно, встроенная подробная справка вызывается стандартным символом ? ; главное — вникать во все вопросы, что задаёт программа, и выписать на бумажку все консольные команды, которые понадобятся при редактировании реестра из командной строки. С помощью этих команд мы должны открыть куст реестра Default, отвечающий за настройки системы в отсутствии залогинившегося пользователя, перейти к разделу (учтите, что при вводе имён разделов реестра важен регистр букв) \Control Panel\Desktop и изменить значение параметра “SCRNSAVE.EXE”=”scrnsave.scr”. Нужно вместо scrnsave.scr указать имя программы, которую мы хотим запустить с правами системы, в нашем случае — LCP4.EXE. Сам файл этой программы опять же необходимо скопировать в папку %SystemRoot%\system32, чтобы система его легко нашла, а все сопутствующие DLL-библиотеки её дистрибутива — в папку %SystemRoot%\system32\DATA. Хотя, чтобы быть совсем точным, желательно, чтобы количество символов в имени дефолтного скринсейвера (а в слове scrnsave их восемь) и его замены совпадало — только в этом случае гарантируется безошибочная работа оффлайнового редактора реестра. А потому заранее всё-таки переименуйте файл LCP4.EXE в LCP40000.EXE. И уже под таким именем копируйте его в системную папку и прописывайте в реестр. А чтобы не ждать 10-15 минут до автоматического запуска нашего казачка, изменим в реестре ещё один параметр, как раз и определяющий задержку перед запуском хранителя экрана:

HKEY_USERS\.DEFAULT\Control Panel\Desktop “ScreenSaveTimeOut”=”600”

Выставляем вместо «дефолтных» 600 секунд (или 900, в зависимости от версии ОС) 100 и через пару минут наблюдаем запуск LC+4. Если этого не произошло, проверьте ещё два параметра в том же разделе:

“ScreenSaveActive”=”1” “ScreenSaverIsSecure”=”0”

После того, как одним из вышеперечисленных способов мы добились
запуска
LC+4 от имени системы, в меню программы выбираем команду
<Импорт> ► <Импорт с локального компьютера>, и — вуаля, дапм хешей паролей, пригодный для взлома, у нас готов! Сохраняем его в файл (<Файл>
  <Сохранить как>) и копируем на дискету. После этого, чтобы не оставлять никаких следов нашего вторжения, заново загружаем ПК с дискеты Offline NT Password & Registry Editor и возвращаем всем изменённым параметрам реестра их исходные значения. Не забудьте вернуть на место настоящий scrnsave.scr, удалить с диска все файлы программы LC+4 и автоматически создающиеся файлы дампов вида pwdxxхxx.txt из папки %SystemRoot%\system32 — лишние улики в нашем чёрном деле ни к чему. Я бы даже посоветовал перед тем, как приступать к взлому, перевести календарь в CMOS Setup таким образом, чтобы он указывал на тот день, когда вас точно не могло быть за компьютером — в этом случае в свойствах файлов не засветится реальная дата попытки проникновения в систему. Да и не забывайте подчищать следы своей деятельности в системном журнале событий. Впрочем, всё, что происходит при загрузке ПК с дискеты или до регистрации пользователя, никоим образом аудитом не зафиксируется.

Теперь на любом доступном ПК запускаем в LC+4 непосредственно сам подбор паролей по полученным хэшам и при удачном стечении обстоятельств через несколько часов имеем полный список учётных записей локального ПК вместе с их паролями. Сам процесс подбора паролей по снятому дампу вряд ли есть смысл описывать — вся методология достаточно подробно разжевана в документации к программе LC+4. С умом выбранные настройки процесса подбора, основанные на наличии минимума информации об установленном пароле (какая раскладка, есть ли цифры, сколько букв) или большой словарь значительно сокращают необходимое программе время. Скажу лишь, что даже такой длинный — 14 букв — пароль как slonhobotastiy вычисляется часа за 3-4 на машине двухлетней давности (а вот кажущийся более сложным пароль gjkmpjdfntkm — за одну секунду, догадайтесь почему). Обратите внимание, что в зарубежных программах, выполняющих снятие дампа хэшей паролей, имеется ошибка, не позволяющая получить достоверные хэши паролей, если в операционной системе имеются учётные записи с нелатинскими буквами в именах. В программе LC+4 эта ошибка отсутствует, а потому нет смысла использовать буржуйские аналоги. На мой взгляд, единственный вариант, когда может пригодиться импортный LC4 — перехват аутентификационных пакетов в сети.

Как же защититься от подбора пароля, если вы всё же не смогли предотвратить взлом CMOS и загрузку ПК со сменного носителя? Самый надёжный способ, который сведёт на нет все усилия хакера по снятию дампа или копированию файлов реестра, — это использование очень длинного пароля. Почему-то считается, что пароль, состоящий из случайных букв и символов «взломать» сложно. Это не так. Какой бы сложный пароль вы не выбрали, если он меньше 15 букв, то вычислить его вполне реально, поскольку по умолчанию в Windows 2000 хранится два хэша одного и того же пароля — NT-хэш и LM-хэш. LM-хэш используется для совместимости с другими операционными системами — Windows 3.11, Windows 9x и OS/2, и он содержит информацию о пароле без учёта регистров букв, что серьёзно упрощает восстановление пароля! Более того, в LM-хэше независимо друг от друга шифруются первые семь букв пароля и вторые семь букв, то есть фактически нужно подобрать всего лишь два семибуквенных пароля, в которых не различается регистр букв. А вот если вы будете устанавливать пароль длиной 15 букв или ещё больше, то лёгкий для взлома LM-хэш не будет использоваться (он будет соответствовать пустому паролю) и парольные взломщики SAMinside и LC+4, а также импортная L0phtCrack его либо вообще не смогут вычислить в силу особенностей шифрования, либо им потребуются месяцы и годы беспрерывной работы. Правда, передачу по сети LM-хэша и его сохранение в реестре можно отключить и принудительно, даже если пароль меньше 15 символов. Для этого используйте диалоговое окно Групповая политика — gpedit.msc — или редактор политик безопасности secpol.msc. В Windows XP эти программы, кстати говоря, позволяют регулировать гораздо больше системных параметров безопасности. Откройте раздел <Конфигурация компьютера> ► <Конфигурация Windows> ► <Параметры безопасности> ► <Локальные политики> ► <Параметры безопасности>, здесь необходимо изменить значение параметра <Уровень проверки подлинности LAN Manger> (<LAN Manager Authentication Level>), выбрав использование только протокола NTLMv2 (http://support.microsoft.com/…q147/7/06.asp) и <Network security: Do not store LAN Manager hash value on next password change>, установив для него <Enabled>. В Windows 2000 последний параметр придётся установить напрямую в реестре, редактор политик этого не позволяет. Для этого надо лишь создать такой подраздел:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\NoLMHash

А в Windows XP через реестр LM-хэш отключается так:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa "nolmhash"=dword:00000001

После этих операций перегрузите ПК и непременно смените все пароли, чтобы «убить» LM-хэш. Но в любом случае главное — длина пароля!

Кроме того, полезно будет ужесточить и другие политики паролей, для этого откройте диалоговое окно <Групповая политика> ► <Конфигурация компьютера> ► <Конфигурация Windows> ► <Параметры безопасности> ► <Политики учетных записей> ► <Политика паролей> и измените имеющиеся там параметры в соответствии с вашими представлениями о защите системы. К сожалению, установить минимально разрешённую длину пароля более 14 символов с помощью редактора политик Windows 2000 невозможно, а ведь максимальная длина пароля в этих ОС — 128 символов!

Конечно, имеется масса рекомендаций по придумыванию наиболее устойчивого (в том числе к подсматриванию через плечо) и при этом легко запоминаемого пароля: одновременное использование букв разного регистра, цифр и символов
(ВасяСиДоРоФФ140$$); применение несуществующих или составных слов
(ГлавСнабГанджобас); записывание русских слов в английской раскладке (:ehyfk Fguhtql); применение специальных символов типа вертикальной черты, вводимой клавишами <Ctrl>+<BkSpace>. Пробелы и прочие символы типа тех, что можно задать только при нажатии клавиши <A
lt> и вводе цифрового кода, ещё больше осложняют вычисление пароля. Например, для ввода символа «возврат каретки», который не воспринимает программа L0phtCrack, нажмите клавиши <ALT>+<0>+<1>+<3> на цифровой панели клавиатуры, а для ввода символа неразрывного пробела — <ALT>+<0>+<1>+<6>+<0>. Но, опять повторю, главное условие — длина должна быть более 14 букв! Чем длиннее пароль, тем он надёжнее.

Подбор пароля по таблице хэшей

В Windows 2000 при генерации хэша пароля, к сожалению, не используется случайная составляющая, уникальная для каждого конкретного компьютера (что-то типа механизма активации Windows XP). Т. е. если на самых разных машинах, в разных версиях Windows NT задать один и тот же пароль, то и соответствующие хэши на этих машинах будут полностью совпадать, что очень сильно облегчает задачу взлома. Возникает вопрос: зачем же проделывать двойную работу, каждый раз вычисляя одни и те же хэши при подборе пароля? Не проще ли было бы раз и навсегда составить организованную таблицу хэшей соответствующих им паролей и затем просто брать искомый пароль из этой таблицы? Действительно, поиск в уже готовой базе данных, по идее, должен быть гораздо быстрее, чем поочередное вычисление каждого её компонента. Как-то до меня уже доходили слухи о существовании огромной супер-хакерской базы хэшей, и вот совсем недавно в Интернете открылся сайт Advanced Instant NT Password Cracker (http://lasecpc13.epfl.ch/ntcrack/), на котором всем желающим предоставляют бесплатный доступ к такой базе. Скорость работы этого сервиса онлайнового взлома паролей Windows NT просто феноменальная — на взлом буквенно-цифрового пароля обычно требуется не более нескольких секунд (в среднем — 5)! Сама база на сегодняшний день имеет объём 1,4 Gb, и её общедоступные демонстрационные возможности пока ограничены взломом паролей, состоящих только из латинских букв и цифр. Но это только начало! Создатели сайта, студенты из Швейцарии, разработали уникальный алгоритм работы поискового механизма, уже имеют в загашнике ещё большую базу для паролей, состоящих из букв, цифр и 16 специальных символов, и, надо думать, на этом они не остановятся.

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

Захват привилегий

Ну что же, если ваш администратор не лыком шит, и после снятия дампа программа LC+4 показывает наличие пароля более 14 букв, то нет смысла пытаться его вычислять. Гораздо проще назначить своей собственной учётной записи максимум прав или создать нового пользователя с правами администратора. Это делается гораздо легче и быстрее, чем вычисление пароля администратора. Если вы внимательно читали описание трюка с дефолтным скринсейвером, то наверняка догадались, что использование этой уязвимости уже позволяет захватывать права системы. Достаточно с помощью Offline NT Password & Registry Editor прописать в реестре запуск CMD.EXE вместо scrnsave.scr (или просто переименовать CMD.EXE в scrnsave.scr), как вы получите командную строку с максимумом прав. Но этот способ не очень удобен и в зависимости от версии Windows NT далеко не всегда срабатывает. Есть способ гораздо лучше! А именно — программа DebPloit, которую без особого труда можно найти в Интернете. Программа эта относится к классу эксплоитов, то есть использует одну из известных уязвимостей Windows 2000, и после её запуска в обычном сеансе пользователя с ограниченными правами вы опять-таки получаете командную строку с правами администратора. Из этой консоли можно вызвать любую другую программу, например диалоговое окно <Управление компьютером> и в меню <Локальные пользователи и группы> добавить себя в группу администраторов, создать нового пользователя или сменить пароль администратора. После того, как вы используете права администратора по полной программе, не забудьте всё вернуть на место, чтобы никто ничего не заметил. Учтите только, что эксплоит DebPloit детектируют многие антивирусы (хотя никаких деструктивных функций он сам по себе не выполняет), что вполне логично. Поэтому, если на вашей системе установлен антивирус, и вы не хотите, чтобы админ получил от него оповещение о попытке запуска DebPloit, то перед использованием эксплоита антивирус придется отключать. А для этого опять нужно загрузить ERD Commander или Offline NT Password & Registry Editor и напрямую в реестре установить параметры, выключающие антивирус. Какие это параметры для каждого конкретного антивируса, вам придётся выяснить заранее, установив на своём собственном ПК с такой же ОС точно такой же антивирус и, отслеживая с помощью деинсталлятора Ashampoo Uninstaller все изменения в реестре, определить, какой параметр меняется при включении-выключении антивируса. Очень распространённый в отечественных локальных сетях Norton Antivirus версии 7.61 Corporate, например, отключается совершенно элементарно:

HKEY_LOCAL_MACHINE\SOFTWARE\INTEL\LANDesk\VirusProtect6\CurrentVersion\Storages\Filesystem\RealTimeScan"OnOff"=dword:00000000

Более свежие версии NAV 2002 и 2003 отключаются немного по-другому, но ещё проще:

HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Services\ navapsvc "Start"=dword:00000003

Уязвимость, которой вовсю пользуется DebPloit, присутствует в Windows 2000 вплоть до SP2. В третьем сервис-паке (а точнее — в одном из хотфиксов, вышедшем после SP2) она была исправлена. Но и это нас не остановит! Оказывается, в случае с DebPloit уязвим файл SMSS.EXE, а потому нам ничего не стоит просто взять более старую версию этого файла из дистрибутива Windows 2000 (или даже из SP2) и скопировать его в %SystemRoot%\system32 с помощью NTFS for DOS Pro, предварительно сохранив исходный файл. После того, как необходимость в DebPloit отпадёт, опять же верните исходный файл на место, и заметите следы в реестре.

Ещё один аналогичный эксплоит — GetAdm2, этот ваааще — работает даже в Windows XP! Принцип всё тот же: запускаете сразу после перезагрузки ПК эксплоит, а он уже загружает консоль с правами системы. Вы перетаскиваете в её окно значок C:\WinNT\System32\lusrmgr.msc, жмёте <Enter> и получаете диалог <Local Users and Groups>, в котором вносите себя в группу <Administrators>. И всё! Взлом Windows фактически занял две минуты… Если только антивирус не заверещал… В Windows XP SP1 уязвимость, которой пользуется GetAdm2, «пофиксена», но при желании вы можете попробовать выяснить, обновление какого файла прикрыло «дырку» GetAdm. Думаю, что возврат старой версии этого файла, как и в случае с DebPloit, вернёт всё на свои места.

Поскольку DebPloit и GetAdm2 — далеко не первые эксплоиты для Windows NT, боюсь, они далеко и не последние. И ничего не попишешь… Операционных систем без ошибок не бывает. В борьбе с такими программами поможет только хороший, ежедневно обновляемый антивирус да своевременная установка обновлений операционной системы и прикладных программ. Не помешает и регулярное посещение специализированных веб-ресурсов, посвящённых вновь открытым уязвимостям Windows и даже чисто хакерских сайтов.


Сброс пароля

В принципе, существуют и ещё более простые способы получения прав администратора, но они предназначены, скорее, для самих администраторов, забывших или потерявших установленные пароли. Дело в том, что почти в любой системе можно без особого труда просто сбросить, отменить или изменить любой пароль. Для этого удобнее всего использовать программу ERD Commander или тот же Offline NT Password & Registry Editor. Умеют сбрасывать пароли локальных учётных записей также такие универсальные программы, как O&O BlueCon XXL, в составе которого, между прочим, имеется ещё и неплохой консольный редактор реестра и похожего назначения утилита CIA Commander. Хотя имеются и несколько устаревшие аналоги, больше подходящие для Windows NT 4: NTAccess, NTFS driver & Change a NT password. Но опять-таки надо учитывать, что практически все эти программы очень не любят, когда имя учётной записи записано кириллицей (Администратор), и в этих случаях могут возникнуть серьёзные проблемы с последующей загрузкой ПК. Поэтому прежде, чем пойти на такой шаг, проведите эксперимент с вашей версией подобной программы на тестовом ПК. Впрочем, изменить пароль с минимумом усилий помогут и описанные выше эксплоиты DebPloit и GetAdm2.

Удаление же файла SAM, которое забывчивым администраторам почему-то очень часто советуют в различных веб-конференциях для сброса паролей, приведёт всего лишь к невозможности загрузить операционную систему, поэтому даже пытаться это делать бессмысленно.

А вот ещё один интересный способ сбросить пароль администратора заключается в замене системной библиотеки MSV1_0.DLL на её «пропатченную» версию, в которой отключена проверка пароля при авторизации пользователя в системе. Фактически, необходимо таким образом исправить код этой библиотеки, чтобы изменить порядка десятка условных переходов на безусловные — как это делается можно при желании найти в Интернете. Правда, для пользователя, плохо знакомого с ассемблером, это вряд ли будет лёгкой задачей. Возможно, было бы проще предоставить «пропатчивание» этого файла вирусу Bolzano версий 3628, 3904, 5396. Этот вирус, помимо всего прочего, патчит две процедуры в системных файлах WinNT: в NTOSKRNL разрешает запись во все файлы системы вне зависимости от прав доступа к файлам, а в MSV1_0.DLL отключает проверку паролей, в результате чего любая введённая строка воспринимается системой как пароль, необходимый для доступа к системным ресурсам. Однако найти этот вирус сегодня вряд ли реально, и неизвестно, сработает ли он с обновлёнными версиями файла MSV1_0.DLL.

Способы защиты от такой атаки на систему все те же: запрет загрузки ПК со сменных носителей и хороший, регулярно обновляемый антивирус.

Кейлоггеры

Отдельно стоит упомянуть, пожалуй, такой класс жизненно необходимых программ, как клавиатурные шпионы, поскольку в нашем деле они могут оказать неоценимую помощь. Дело в том, что это, пожалуй, единственный софтовый метод (Snooping), который позволяет на практике определить пароль администратора, превышающий 14 знаков. И главное в работе с клавиатурным шпионом — правильный выбор этого самого шпиона. Конечно, для установки качественного кейлоггера наверняка потребуются права администратора, но, как мы видим, получить максимальные пользовательские привилегии без знания пароля администратора — не такая уж и сложная задача. Куда важнее, чтобы кейлоггер хорошо маскировался и обладал способностью фиксировать нажатия клавиш в момент ввода пароля при загрузке системы, а это не самая тривиальная задача. И такие шпионы есть! Один из них — Invisible KeyLogger Stealth. Множество настроек, минимальный размер, возможность переименования файла программы и её библиотек, шифрование лог-файла, словом, в арсенале имеется всё для успешного и безнаказанного перехвата админского пароля. Если же вам по каким-то причинам эта программа не подойдёт, то сравните возможности конкурентов на сайте http://www.keylogger.org/, где приведены отличные материалы по самым лучшим кейлоггерам. Так, записать аутентификационный пароль смогут ещё самый серьёзный из известных мне клавиатурных шпионов PC Activity Monitor Net (http://www.keyloggers.com) и мало в чём ему уступающий ProBot SE. Но, к сожалению, качественные кейлоггеры платные и в демо-режиме, как правило, отказываются маскироваться в системе.

Если вы решите воспользоваться кейлоггером, то не забывайте, что чем короче период, в течение которого шпион присутствует на ПК, тем меньше вероятность его обнаружения. Установите кейлоггер, позовите админа поправить какую-нибудь проблему или установить новый софт и сразу же после его ухода удаляйте! Пароль перехвачен — задача выполнена. И обязательно заранее проверьте, не фиксируется ли выбранный кейлоггер установленным на препарируемый ПК антивирусом — такое вполне возможно. Надо сказать, что и некоторые троянские вирусы или программы удалённого управления способны записывать все действия пользователя, но это, скорее, побочный продукт их применения.

Интересно, что хорошую программу для защиты от кейлоггеров Anti-keylogger (http://www.anti-keyloggers.com) производит сам же разработчик одного из лучших клавиатурных шпионов — PC Activity Monitor. Программа эта способна обнаруживать не только заложенных в систему явных шпионов, но и вообще все программы, пытающиеся перехватывать нажатия клавиш, так что скрыться от неё сложно.

Снифферы

Про программы, осуществляющие перехват аутентификационных пакетов в сети я, пожалуй, только упомяну. В ряде случаев пароль администратора или пароли других пользователей можно получить и не с локальной машины,
а производя «прослушивание» всего сетевого трафика. Эта возможность,
в частности, реализована в уже упомянутой программе
LC4 (L0phtCrack, http://www.atstake.com/research/lc/). Её отечественному аналогу это пока не под силу, но при желании можно найти и другие снифферы.

Как меру противодействия снифферам могу посоветовать использование в сети свитчей, которые, в отличие от хабов, не транслируют весь трафик на каждый компьютер. Однако и в этом случае злоумышленник сможет перехватить ваш пароль в тот момент, когда вы попытаетесь, например, скопировать какой-то файл с его собственного компьютера. И тут посоветовать, пожалуй, можно только одно — используйте шифрование трафика и как можно более длинные и сложные пароли, чтобы даже перехвативший их хакер не смог их расшифровать за разумный период времени.

Взлом вторичных паролей

Различных привлекательных для потенциального хакера паролей в Windows может быть очень много, дело тут не ограничивается только лишь паролями учётных записей. Нередко пользователю или администратору бывает необходимо «вспомнить» пароль, установленный в настройках удалённого доступа, т. е. имя пользователя и пароль для выхода в Интернет через модем. После получения администраторского пароля это, я думаю, вторая по важности задача. И тут, к сожалению ответственных за безопасность работников, дела с защитой совсем плохи. Даже в Windows XP, в которой Microsoft пошла на беспрецедентный шаг по защите паролей Dial-Up — заменила звёздочки на кружочки в диалоговых окнах, пароли удалённого доступа в ней вскрываются за доли секунды. И делает это программа Dialupass (http://nirsoft.multiservers.com). Правда, имеется незначительное ограничение: для работы программы требуется войти в систему с правами администратора. Другая программа, в которой заявлена возможность восстановления скрывающихся за кружочками паролей различных программ под Windows XP — iOpus Password Recovery XP. Она без проблем покажет вам пароли, например, Outlook Express или CuteFTP.

Да и для взлома других паролей, присутствующих в прикладных программах, уже давно созданы специальные утилиты — и для архивов любых типов, и для самых популярных звонилок, и для FTP-клиентов, и для электронных книг, и для документов MS Office. Например, получившая скандальную известность российская фирма Elcomsoft (http://www.elcomsoft.com) предоставит в ваше распоряжение целый букет таких взломщиков, вплоть до уникальной программы, вскрывающей файлы, зашифрованные посредством хвалёной шифрующей файловой системы Windows — EFS! Программа Advanced EFS Data Recovery работает во всех версиях Windows, кроме (пока) Windows XP SP1 и Windows Server 2003. А вот ещё «небольшой» список программ, которые сегодня «ломает» Elcomsoft: архивы ZIP/RAR/ACE/ARJ; Microsoft Office (Word, Excel, Access, Outlook и т. д.); Outlook Express; Internet Explorer; Lotus SmartSuite (WordPro, 1-2-3, Approach, Organizer); Corel WordPerfect Office (WordPerfect, Paradox, QuattroPro); Adobe Acrobat PDF; ACT!; Intuit Quicken и QuickBooks; а также целая куча различных Интернет-пейджеров и e-mail-клиентов.

Впрочем, и конкурентов у нашей компании на этом поприще хватает. Огромное количество самых разных «крякеров» дожидается вашего внимания на сайте http://www.password-crackers.com. Именно здесь вы найдёте, например, утилиту для взлома паролей известной шифровальной программы BestCrypt. Быстрому взлому паролей обычно способствует хороший словарь — некоторое количество таких словарей, программ и сопутствующих справочных материалов вы
можете найти на ещё на одном специализированном отечественном сайте http://www.passwords.ru.

Ну а защита от этих программ только одна, всё та же, самая главная — сложный длиннющий пароль. За исключением тех случаев, когда, в силу несовершенства алгоритма шифрования или вообще из-за его отсутствия, программе-крякеру даже не требуется производить перебор паролей. Тут можно посоветовать только сменить столь уязвимое ПО на что-нибудь более приличное — например, не использовать встроенную в Windows «звонилку», а установить вместо неё программу от независимых разработчиков.

Общие рекомендации

Поскольку защита приватной информации для обычного пользователя всё же гораздо важнее, нежели знание самых изощрённых приёмов взлома, я попробую вкратце дать ещё кое-какие достаточно известные советы по повышению общего уровня защиты Windows 2000. Для воплощения в жизнь многих из этих рекомендаций требуется просто открыть редактор политик групп gpedit.msc или редактор политик безопасности secpol.msc и изменить соответствующий параметр. Редакторы системных политик из состава Windows или популярные программы-«твикеры» позволяют изменить множество настроек Windows, влияющих на безопасность системы, и грамотный пользователь обязан изучить их вдоль и поперёк. Поэтому полный путь к каждому из упоминаемых мной параметров я, пожалуй, приводить не буду — найти его самостоятельно будет полезно. Главное — помните, что максимальный эффект даст только целый комплекс оборонительных мероприятий, поскольку достаточно одного прокола, чтобы cвести все усилия на нет.

Итак, нередко рекомендуется переименовать имена учётных записей администратора и гостя, и хотя в случае снятия хэша паролей или кражи SAM-файла это бессмысленно, тем не менее, в целом это повышает уровень защиты системы, так как затрудняет взлом с удалённого компьютера. Для переименования этих учётных записей запустите диалоговое окно secpol.msc — Локальные параметры безопасности, откройте Локальные политики  Параметры безопасности (Local Policies  Security Options) и воспользуйтесь пунктами
<Переименование учетной записи администратора>
и <Переименование
 учетной записи гостя>
(<Accounts: Rename administrator account>
и <Accounts: Rename guest account>). Также для этих учётных записей измените соответствующим образом параметры <Описание> и <Полное имя> (<Description> и <Full
 name>) в диалоговом окне <Управление компьютером> ► <Локальные пользователи и группы>. А ещё можно создать своеобразную ловушку для взломщика — ложную учётную запись администратора с минимумом прав, после чего активизировать аудит регистрации пользователей и периодически отслеживать зондирование потенциальными хакерами этой учётной записи в журнале безопасности системы. Вообще, активнее используйте аудит, во многих случаях это способно вовремя предупредить взлом системы. В ряде ситуаций нелишним будет включить создание полного протокола работы модема (\SYSTEM32\RAS\DEVICE.LOG):

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\
Parameters "Lo
gging"=dword:00000001

Также полезным будет по возможности отключить учётную запись гостя, используя только явное прописывание пользователей в системе, чтобы исключить безответственную анонимность. Безответственность порождает и ситуация, когда все администраторы сети используют только одну на всех учётную запись администратора. Каждый админ должен иметь свою собственную учётную запись. Учётные записи с правами администратора следует использовать как можно реже, осуществляя рутинную работу из-под аккаунта пользователя с ограниченными правами
и запуская приложения, непременно требующие прав администратора в режиме
<Запуск
 от имени…> (<Run as…>). Обязательно своевременно удаляйте учётные записи уволившихся сотрудников. Регулярно меняйте пароли. Для разных ресурсов или программ должны быть разные пароли. Пароль администратора на сервере или на ПК с секретной информацией, разумеется, должен отличаться от пароля на машинах рядовых сотрудников. Ни в коем случае не используйте в качестве пароля слова, которые могут оказаться в словаре. Не используйте персональную информацию (дата рождения, имя собаки) в качестве пароля. Не записывайте пароль на бумагу и никогда не вводите свой пароль на чужом компьютере. Включите режим блокирования учётной записи администратора после нескольких попыток ввода неправильного пароля. То же самое касается и обычных пользователей (в Windows XP параметры <Account lockout duration> и <Account lockout threshold>).

Кроме того, в редакторе политик безопасности secpol.msc,
в диалоге <Локальные политики> ► <Параметры безопасности>
(<Local Policies> ► <Security Options>) тщательно просмотрите все имеющиеся параметры и установите максимально возможные в вашей сети ограничения, поскольку по умолчанию система не настроена даже на разумный уровень защиты. Например, желательно выставить в положение <Disabled> параметр <Консоль
 восстановления: разрешить автоматический вход администратора> (<Recovery console: Allow automatic administrative logon>), чтобы злоумышленник не смог воспользоваться встроенным механизмом восстановления Windows. Снизить до 2 или даже до нуля значение параметра <Количество предыдущих подключений к кэшу…> (<Interactive logon: Number of previous logons to cache...>), тем самым отключится кэширование хэшей 10 последних пользователей, входивших в систему интерактивно, которое производится для того, чтобы пользователь смог залогиниться, даже если ПК отключен от сети, или недоступен контроллер домена. В положение <Enabled> желательно установить <Не отображать последнего имени пользователя в диалоге входа> (<Interactive logon: Do not display last user name>), чтобы лишний раз не показывать настоящие имя учётной записи администратора и так далее. Короче говоря, если решили заняться защитой, не бойтесь прослыть параноиком.

Установите права доступа к папкам таким образом, чтобы обычные пользователи не могли изменять содержимое директорий WinNT и Program Files. В реестре, соответственно, установите запрет на изменение разделов HKLM и Default. Запретите удалённый доступ к реестру. Включите режим очистки файла подкачки при выключении компьютера, а также напишите командный файл, очищающий папки временных файлов и удаляющий файлы user.dmp и memory.dmp (для этих файлов разрешите доступ только администраторам и системе). Ещё лучше — полностью отключить создание дампа памяти при сбоях. Отключите дебаггер Dr.Watson.

Ни в коём случае не используйте в локальной сети, о безопасности которой нужно заботиться, машины с Windows 9x, так как их защита… её почти нет. К тому же, наличие клиентов Windows 9x приводит к появлению тех самых легко расшифровываемых LM-хэшей. Запретите администратору доступ из сети, отключите скрытые системные ресурсы общего доступа, такие как C$ (диск C:), D$ (диск D:, и так далее), Admin$ (папка WinNT), к которым имеют доступ
члены группы администраторов. Для этого в разделе реестра HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \
LanmanServer
 \ Parameters установите равным 0 параметр <AutoShareServer> (типа REG_DWORD) для сервера или параметр <AutoShareWks> для рабочей станции. Эту операцию можно осуществить, в частности, и с помощью известной программы POLEDIT.EXE — редактора системных политик (System Policy Editor) — за управление скрытыми ресурсами общего
доступа отвечает параметр <Windows
 NT>  <Network>  <Sharing> ► <Create Hidden Drive Shares>.

Используйте юрандмауэр, по возможности вообще отключите службу Server и другие неиспользуемые сервисы. Кроме того, компьютер можно сделать «невидимым» в сети:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\

LanManServer\Parameters "Hidden"=dword:00000001

Запретить возможность использования т. н. Null — Session:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\

Lsa "RestrictAnonymous"=dword:00000001

Запретить запуск «дефолтного» скринсейвера (http://support.microsoft.com/ …q185348), появляющегося, если не производить регистрацию пользователя в течение 10—15 минут:


HKEY_USERS\.DEFAULT\Control Panel\Desktop

"ScreenSaveActive"="0" "ScreenSaveTimeOut"="0"

Запретите автозапуск компакт-дисков. Для BAT, VBS и REG-файлов установите действие по умолчанию <Редактировать>, чтобы исключить автозапуск этих файлов из папки Автозагрузка или разделов Run реестра. Не забывайте блокировать или выключать ПК, когда покидаете своё рабочее место даже на несколько минут. Даже такой простой вещью, как пароль скринсейвера, пренебрегать не стоит. В особо ответственных случаях прибегайте к помощи «железной» защиты: SmartCard, видеонаблюдение, блокировка входа в помещение, аппартные шифраторы, электронные замки и т. п. Носители с резервными копиями системы или важных данных храните в надёжном сейфе, желательно в зашифрованном виде.

Последнее слово

В заключение хочу добавить, что я, конечно же, далеко не профессионал в отношении защиты и тем более взлома операционных систем и надеюсь, что читатели подскажут мне и другие способы как защиты ОС, так и её взлома. Всё то, что я довольно бегло описал в этой статье, давно доступно любому пользователю средней руки, имеющему выход во Всемирную Паутину. И тем более эти азы должен знать администратор хоть сколько-нибудь приличной локальной сети, в которой помимо секретутки и престарелых бухгалтеров работают и немного разбирающиеся в компьютерах люди. Наверное, 99 % так называемых «хакеров» всего лишь пользуются чужими программами и эксплуатируют обнародованные в Сети уязвимости. Именно от них (<script-kidz>) и приходится чаще всего защищаться. И это вполне возможно, если только лень не родилась раньше сисадмина. От оставшегося же одного процента настоящих хакеров, которые сами пишут «боевой» софт и находят новые бреши и лазейки в операционных системах и прикладных программах, а также от вооружённых суперкомпьютерами и спецтехникой силовых структур защититься куда сложнее, и рассмотрение этой проблемы не было целью данной статьи. Про это как минимум книги пишут… На мой взгляд, в сегодняшних условиях максимальную защиту приватных файлов и ценной информации можно получить только с помощью серьёзного шифрования (специалисты RSA Laboratories рекомендуют использовать ключи шифрования длиной не менее 768 бит) посредством аппаратных кодеров или проверенных программ, предпочтительно с открытым исходным кодом. Причём наилучший результат будет при шифровании всего системного диска, а не отдельных файлов, т. к. это практически исключит возможность какого-либо взлома операционной системы — взламывать будет нужно не ОС, а шифратор. «Виндовая» шифрованная файловая система EFS для этого не годится, так как с её помощью нельзя закриптовать системные файлы — Windows после этого просто не загрузилась бы. К тому же, уже появились программы, взламывающие EFS. Даже загрузка альтернативной копии Windows в ряде случаев может позволить злоумышленнику восстановить файлы, зашифрованные EFS. Возможно, неплохим выбором для рядового пользователя или админа среднестатистической локалки оказалась бы программа DriveCrypt Plus Pack (http://www.securstar.com), поскольку она с минимумом затрат позволяет полностью зашифровать системный диск вместе со всей операционной системой и её загрузочными файлами, а при шифровании всего диска автоматически устраняются ещё и такие прорехи в безопасности, как файл подкачки и временные файлы, в которых может оказаться конфиденциальная информация. Кстати говоря, DriveCrypt Plus Pack имеет встроенную защиту против подбора пароля, клавиатурных шпионов и троянских вирусов. Так что, шифруйте и ещё раз шифруйте! Правда, недобрые слухи ходят даже вокруг сертификации криптосистем в специальных органах, якобы это делается лишь для того, чтобы встроить в программы «чёрные ходы». В свете последних событий в мире в это верится…


Приложения

CriptoAPI

Уровень Win32

испетчер ввода/вывода

Вызовы FSRTL

Драйвер EFS

NTFS

Связь LPC для поддержки управления ключами

Жёсткий диск

Служба EFS

Режим пользователя

Привилегированный режим (режим ядра)

Рисунок 2. Архитектура EFS

IP-Заголовок

АН

Заголовок TCP/UDP

Прикладные данные

Подписанные данные

Рисунок 3. Заголовок аутентификации АН

IP-Заголовок

ESP-заголовок

ESP-хвостовик

Прикладные данные

Подписанные данные

Рисунок 4. Протокол инкапсуляции безопасности ESP

Аутентификационная информация ESP

Зашифрованные данные


 

А также другие работы, которые могут Вас заинтересовать

19213. Термоэлектронная эмиссия. Статистический и термодинамические вывод формулы плотности тока термоэлектронной эмиссии 557.5 KB
  Лекция № 9. Термоэлектронная эмиссия. Статистический и термодинамические вывод формулы плотности тока термоэлектронной эмиссии. Влияние внешнего электрического поля Эффект Шоттки. Распределение термоэлектронов по энергиям. Средняя энергия термоэлектронов. Эксп
19214. Влияние поверхностной неоднородности материала катода на термоэмиссию 557 KB
  Лекция № 10. Влияние поверхностной неоднородности материала катода на термоэмиссию. Пленочные катоды. Оксидные катоды. Автоэлектронная эмиссия. Изменение температуры эмиттера при термо и автоэлектронной эмиссии. 9.7. Влияние поверхностной неоднородности материала...
19215. Фотоэлектронная эмиссия. Законы Столетова и Эйнштейна. Теория фотоэмиссии 476 KB
  Лекция № 11. Фотоэлектронная эмиссия. Законы Столетова и Эйнштейна. Теория фотоэмиссии. Кривая Фаулера. Применение фотоэмиссии в технике. Фотокатоды. XI. ФОТОэлектронная эмиссия. 11.1. Законы фотоэффекта. В широком смысле фотоэффект – это возникновение или измене
19216. Вторичная электрон-электронная эмиссия. Отражение электронов от твердого тела 326 KB
  Лекция № 12. Вторичная электронэлектронная эмиссия. Отражение электронов от твердого тела. Характеристические потери энергии. Закономерности истинной вторичной электронной эмиссии. Приведенная кривая. Эффективные эмиттеры вторичных электронов. XII. вторичная элек
19217. Вторичная электронная эмиссия полупроводников и диэлектриков. Эффективные эмиттеры вторичных электронов 336.5 KB
  Лекция № 13. Вторичная электронная эмиссия полупроводников и диэлектриков. Эффективные эмиттеры вторичных электронов. Электронные умножители. Вторичная ионноэлектронная эмиссия. Потенциальная и кинетическая эмиссия их физический механизм. Закономерности ионноэлек
19218. Поверхностная ионизация. Формула Саха-Ленгмюра. Температурная зависимость плотности тока положительной ионизации 217 KB
  Лекция № 14. Поверхностная ионизация. Формула СахаЛенгмюра. Температурная зависимость плотности тока положительной ионизации. Термодинамичсекий вывод формулы СахаЛенгмюра. Термодинамичсекий вывод формулы СахаЛенгмюра. Отрицательная поверхностная ионизация. XIV...
19219. Ионное распыление. Диссипация энергии атомных частиц при взаимодействии с твердым телом 288.5 KB
  Лекция № 15. Ионное распыление. Диссипация энергии атомных частиц при взаимодействии с твердым телом. Торможение быстрых частиц в твердом теле. Эмиссия атомных частиц. XV. ИОННОЕ распыление 15.1. Характеристики ионного распыления. Явление распыления твердого ...
19220. ИОНИЗАЦИЯ И ВОЗБУЖДЕНИЕ ЧАСТИЦ В ГАЗЕ 163 KB
  ИОНИЗАЦИЯ И ВОЗБУЖДЕНИЕ ЧАСТИЦ В ГАЗЕ Плазму как среду состоящую из заряженных частиц характеризует степень ионизации или соотношение между количеством заряженных и нейтральных частиц: концентрация электронов конц...
19221. ТЕРМОДИНАМИЧЕСКОЕ РАВНОВЕСИЕ В ГАЗЕ 101.5 KB
  Лекция 2 ТЕРМОДИНАМИЧЕСКОЕ РАВНОВЕСИЕ В ГАЗЕ Одним из известных подходов к описанию плазмы является ее сопоставление с термодинамической системой. При этом состояние плазмы характеризуется такими величинами как температура энтропия и т.д. В термодинамик...