Олифер В.Г., Олифер Н.А. - Компьютерные сети. Принципы, технологии, протоколы (4-ое изд.) - 2010 - обработка (953099), страница 217
Текст из файла (страница 217)
АУДИТ Аудит (ацгзбпб) — это набор процедур мониторинга и учета всех событий, представлаощих по- тенциальную угрозу для безопасности системы. Аудит позволяет «шпионить» за выбранными объектами и выдавать сообщения тревоги, когда, например, какой-либо рядовой пользователь попытается прочитать или модифицировать системный файл. Если кто-то пытается выполнить действия, выбранные системой безопасности для мониторинга, то система аудита пишет сообщение в журнал регистрации, идентифицируя пользователя. Системный менеджер может готовить отчеты безопасности, которые содержат информацию из журнала регистрации. Для «сверхбезопасных» систем предусматриваются аудио- и видеосигналы тревоги, устанавливаемые на машинах администраторов, отвечающих за безопасность.
Поскольку никакая система безопасности не гарантирует защиту на уровне 100»», последним рубежом в борьбе с нарушениями оказывается система аудита. Действительно, после того как злоумышленнийу удалось провести успешную атаку, пострадавшей стороне не остается ничего другогб, Как обратиться к службе аудита. Если при настройке службы аудита были правильно заданы события, которые требуется отслеживать, то подробный анализ записей в журнале может дать много полезной информации. Эта информация, возможно, позволит найти злоумышленника или, по крайней мере, предотвратить повто- ' Детали о системе КегЬегоз см, в книге авторов «Сетевые операционные системы». ббО Глава 24.
Сетевая безопасность рение подобных атак путем устранения уязвимых мест в системе защиты. Функции аудита встраиваются в различные средства обеспечения безопасности: сетевые экраны, системы обнаружения вторжений, антивирусные системы, сетевые мониторы. Строгая аутентификация на основе многоразового пароля в протоколе СНАР Аутентифицируемый узел Узеп- аугентификатор Разделяемый секрет — рам! Компьютер клиента Мовсовг Сервер провайдера Рапв Рве. 24.14. Аутентификация по протоколу СНАР Аутентификация выполняется в следующей последовательности. 1. Пользователь-клиент активизирует программу (например, программу дозвона) удаленного доступа к серверу провайдера, вводя имя и назначенный ему пароль. Имя (на рисунке это «Мозсочгз) передается по сети провайдеру в составе запроса на соединение, Протокол аутеитифнкации по квитированию вызова (СЬаБепйе НапсЬЬаЬе АптЬепс)сасюл Ргососо!, СНАР) входит в семейство протоколов РРР.
В этом протоколе предусмотрено 4 типа сообщений: Яиссеат (успех), СЬа)(елйе (вызов), Яецгопзе (ответ), гаг(иге (ошибка). Этот протокол используется, например, при аутентификации удаленных пользователей, подключенных к Интернету по коммутируемому каналу. Здесь аутентификатором является сервер провайдера, а аутентифицируемым — клиентский компьютер (рис. 24.14). При заключении договора клиент получает от провайдера пароль (пусть, например, это будет слово раго1). Этот пароль хранится в базе данных провайдера в виде дайджеста л - г((раго1), полученного путем применения к паролю одностороиней хэш-функции М()5. ВЕ1 Аутентификация, авторизации, аудит но пароль не передается в сеть ни в каком виде.
То есть здесь мы имеем дело со строгой аутентификацией. 2. Сервер провайдера, получив запрос от клиента, генерирует псевдослучайное слово- вызов (пусть это будет слово «сЬаИепяет) и передает его клиенту вместе со значением, идентифицирующем сообщение в рамках данного сеанса (П)), и собственным именем (здесь «Раг(зк). Это сообщение типа СЬайеще, (Для зашиты от перехвата ответа аутентификатор должен использовать разные значения слова-вызова при каждой процедуре аутентификации.) 3. Программа клиента, получив этот пакет, извлекает из него слово-вызов, добавляет к нему идентификатор и вычисленный локально дайджест к = г1(раго1), а затем вычисляет с помощью все той же функции М()5 дайджест У = г(((1Р, сйаПепйе, г((раго1)) от всех этих трех значений.
Результат клиент посылает серверу провайдера в пакете Яе~говзе. 4. Сервер провайдера сравнивает полученный по сети дайджест Ус тем значением, которое он получил, локально применив ту же хэш-функцию к набору аналогичных компонентов, хранящихся в его памяти. 5. Если результаты совпадают, то аутентификация считается успешной и аутентификатор посылает партнеру пакет 5иссем.
Аналогичный алгоритм аутентификации применяется в семействе ОС тт1пг(отуз. Там многоразовые пароли пользователей также хранятся в базе данных сервера в виде дайджестов, а по сети в открытом виде передается только слово-вызов. Кажется, что такой способ хранения паролей надежно защищает их от злоумышленника, даже если он сможет получить к ним доступ. Действительно, ведь даже теоретически нельзя восстановить исходное значение по дайджесту.
Однако создатель первого червя Роберт Моррис решил эту проблему. Он разработал довольно простую программу, которая генерировала возможные варианты паролей, как используя слова из словаря, так и путем последовательного перебора символов. Для каждого сгенерированного слова вычислялся дайджест и сравнивался с дайджестами из файла паролей. Удивительно, но такая стратегия оказалась весьма эффективной, и хакеру удалось завладеть несколькими паролями.
Аутентификация на основе одноразового пароля Алгоритмы аутентификации, основанные на многоразовых паролях, не очень надежны. Пароли можно подсмотреть, разгадать или просто украсть. Более надежными оказываются схемы с одноразовыми паролями. К тому же одноразовые пароли намного дешевле и проще биометрических систем аутентификации, таких как сканеры сетчатки глаза или отпечатков пальцев. Все зто делает системы, основанные на одноразовых паролях, очень перспективными. Следует иметь в виду, что, как правило, системы аутентификации на основе одноразовых паролей рассчитаны на проверку только удаленных, а не локальных пользователей.
Генерация одноразовых паролей может выполняться либо программно, либо аппаратно. Аппаратные реализацигусйстем доступа на основе одноразовых паролей называют аппаратными ключами. Они представляют собой миниатюрные устройства со встроенным микропроцессором, похожие либо на обычные пластиковые карточки, используемые для доступа к банкоматам, либо на карманные калькуляторы, имеющие клавиатуру и маленькое дисплейное окно (рис. 24.15).
Аппаратные ключи могут быть также реализованы в виде присоединяемого к разъему компьютера устройства. Глава 24. Сетевая безопасность Рис. 24.16. Аппаратный ключ, который используют клиенты банка Ваго!ауз для доступа к своим счетам Существуют и программные реализации средств аутентификации на основе одноразовых паролей — программные ключи. Программные ключи размещаются на сменном магнитном носителе в виде обычной программы, важной частью которой является генератор одноразовых паролей. Независимо от того, какую реализацию системы аутентификации на основе одноразовых паролей выбирает пользователь, ои, как и в системах аутентификации с применением многоразовых паролей, сообщает системе свой идентификатор, однако вместо того чтобы вводить каждый раз один и тот же пароль, он указывает последовательность цифр, сообщаемую ему аппаратным или программным ключом.
Через определенный небольшой период времени генерируется другая последовательность — новый пароль. Сервер аутентификации проверяет введенную последовательность и разрешает пользователю осуществить логический вход. Сервер аутентификации может представлять собой отдельное устройство, вьщеленный компьютер или же программу, выполняемую иа обычном сервере. Рассмотрим схему использования аппаратных ключей, в основе которой лежит сиггзтголиэаг1ил ло времени.
Этот популярный алгоритм аутентификации был разработан компанией Яесапсу Рупаписз. Идея метода состоит в том, что аппаратный ключ и аутентифицирующий сервер вычислшот некоторое значение продному и тому же алгоритму. Алгоритм имеет два параметра: 0 разделяемый секретный ключ, представляющий собой 64-разрядное число, уникально назначаемое каждому пользователю и хранящееся как в аппаратном ключе, так и в базе данных сервера аутентификации; 0 значение текущего времени. Если вычисленные значения совпадают, то аутентификация считается успешной. ввз Аутентификация, авторизации, аудит Итак, пусть удаленный пользователь пытается совершить логический вход в систему с персонального компьютера (рис. 24.16). Аугеитифицирующая программа предлагает ему ввести его личный персональный номер (Р1Х), состоящий из четырех десятичных цифр, а также 6 цифр случайного числа, отображаемого в тот момент иа дисплее аппаратного ключа.
На основе Р1Х-кода сервер извлекает из базы данных информацию о пользователе, а именно— его секретный ключ. Затем сервер выполняет вычисления по тому же алгоритму, который заложен в аппаратиом ключе, используя в качестве параметров секретный ключ и зиачеиие текущего времени, проверяя, совпадает ли сгенерированное число с числом, которое ввел пользователь. Если оии совпадают, то пользователю разрешается логический вход. Удаленный клиент Рчн 23ЗО сервер йиер Рис. 24.16. Аутентификация, основанная на временной синхронизации Потенциальной проблемой этой схемы является временная синхронизация сервера и аппаратного ключа (ясио, что вопрос согласования часовых поясов решается просто).
Гораздо сложнее обстоит дело с постепенным рассогласованием внутренних часов сервера и аппаратного ключа, тем более что потеицизльио аппаратный ключ может работать несколько лет. Компания Беспг!гу 1)упаш(сз решает эту проблему двумя способами, Во-первых, при производстве аппаратного ключа измеряется отклонение частоты его таймера от номинала. Далее эта величина учитывается в виде параметра алгоритма сервера. Во-вторых, сервер отслеживает коды, генерируемые конкретным аппаратным ключом, и если таймер данного ключа постоянно спешит или отстает, то сервер динамически подстраивается под него.
Существует еще одна проблема, связанная со схемой времеиибй синхронизации. Одноразовый пароль, генерируемый аппаратным ключом, действителен в течение некоторого иитервала времени (от нескольких десятков секунд до нескольких десятков минут), то есть в течение этого времени одноразовый пароль, в сущности, является многоразовым. Поэтому теоретически вошаожио, что очень проворный хакер сможет перехватить Р1М-код и одноразовый пароль с тем, чтобы также получить доступ в сеть в течение этого интервала. Аутентификация на основе сертификатов Аутентификация с применением цифровых сертификатов является альтернативой применению паролей и представляется естествеииым решением в условиях, когда число пользо- Глава 24.
Сетевая безопасность вателей сети (пусть и потенциальных) измеряется миллионами. В таких обстоятельствах процедура предварительной регистрации пользователей, связанная с назначением и хранением их паролей, становится крайне обременительной, опасной, а иногда и просто нереализуемой. При наличии сертификатов сеть, которая дает пользователю доступ к своим ресурсам, не хранит никакой информации о своих пользователях — они ее предоставляют сами в своих запросах д виде сертификатов, удостоверяющих личность пользователей.
Сертификаты выдаются специальными уполномоченными организациями — центрами сертификации (Сегг)беате Ацйогйу, СА). Поэтому задача хранения секретной информации (закрытых ключей) возлагается на самих пользователей, что делает это решение гораздо более масштабируемым, чем вариант с централизованной базой паролей. Схема использования сертификатов Аутентификация личности на основе сертификатов происходит примерно так же, как на проходной большого предприятия. Вахтер пропускает людей на территорию на основании пропуска, который содержит фотографию и подпись сотрудника, удостоверенных печатью предприятия и подписью лица, выдавшего пропуск.