Тема_43_Сетевая безопасность. Шифрование. Аутентификация, авторизации, аудит Раздел 6 Технологии глобальных сетей.

Презентация:



Advertisements
Похожие презентации
Базовые технологии безопасности. Шифрование - это средства создания защищенного канала или способ безопасного хранения данных. Пара процедур - шифрование.
Advertisements

Лекция 6 Безопасность сети. Средства обеспечения безопасности сети.
Шифрование Симметричное шифрование в 1949 г. Клод Шеннон.
ЗАЩИТА ИНФОРМАЦИИ ПОДГОТОВИЛА
Администрирование RAS серверов. RAS (Remote Access Server) сервер – это сервер удаленного доступа. Используется для соединения компьютеров по коммутируемым.
Организация компьютерной безопасности и защита информации автор: Чекашов а Ирин а 10А учитель: Антонова Е.П год.
ТЕХНОЛОГИИ АУТЕНТИФИКАЦИИ Аутентификация, авторизация и администрирование действий пользователя.
Сетевые службы Для конечного пользователя сеть это не компьютеры, кабели и концентраторы и даже не информационные потоки, для него сеть это, прежде всего,
ЭЛЕКТРОННАЯ ЦИФРОВАЯ ПОДПИСЬ. ЭЛЕКТРОННАЯ ЦИФРОВАЯ ПОДПИСЬ (ЭЦП) – ЭТО реквизит электронного документа, полученный в результате криптографического преобразования.
МЕТОДЫ ПРОГРАММНО- АППАРАТНОЙ ЗАЩИТЫ ИНФОРМАЦИИ. Программно-аппаратные средства защиты информации это сервисы безопасности, встроенные в сетевые операционные.
ЭЛЕКТРОННАЯ ЦИФРОВАЯ ПОДПИСЬ. Электронная цифровая подпись ( ЭЦП ) – это аналог личной подписи клиента, выполненный как секретный ключ ( специальный файл.
Лекция 5 - Стандарты информационной безопасности распределенных систем 1. Введение 2. Сервисы безопасности в вычислительных сетях 3. Механизмы безопасности.
Защищенность и отказоустойчивость ОС Повторение модуля, основные понятия и вопросы для повторения.
Раздел 3 Сетевые модели. Тема 3.1 Понятие сетевой модели. Архитектура сети определяет основные элементы сети, характеризует ее общую логическую организацию,
Центр Удостоверения Цифровой Подписи. Виды криптосистем: Симметричные криптосистемы Криптосистемы с открытым ключом Системы электронной подписи Управление.
Асимметричная криптография. Проблемы и идеи. Проблемы, связанные с использованием симметричных шифров Симметричные алгоритмы обеспечивают эффективное.
ЭЦП– это криптографическое средство, которое позволяет удостовериться в отсутствие искажений в тексте электронного документа, а в соответствующих случаях.
Бурное развитие систем электронного документооборота, электронных платежей, электронной почты, широкое распространение вычислительных сетей с большим числом.
Распределенная обработка информации Разработано: Е.Г. Лаврушиной.
Аутентификация Децентрализованные системы аутентификации многопользовательские приложения отдельные операционные системы серверы удаленного доступа,
Транксрипт:

Тема_43_Сетевая безопасность. Шифрование. Аутентификация, авторизации, аудит Раздел 6 Технологии глобальных сетей

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

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

2. Принцип многоуровневой защиты. Соблюдение баланса надежности защиты всех уровней. Так, например, физические средства защиты (закрытые помещения, блокировочные ключи) дополняют и усиливают эффективность централизованной системы авторизации пользователей. Также и резервное копирование … Баланс надежности – это, например, вы используете шифрование, но ключи легкодоступны, то ваши усилия бесполезны. 3. Предоставление каждому сотруднику минимально достаточного уровня привилегий по доступу к данным и ресурсам сети; 4. Принцип единого контрольно-пропускного пункта заключается в том, что весь входящий во внутреннюю сеть и выходящий во внешнюю сеть трафик проходит через единственный узел сети, например через сетевой экран. Если у кого из сотрудников есть обычный модем, то он может выходить в Интернет без контроля и этот принцип нарушается; 5. Принцип использование только таких средств, которые при отказе переходят в состояние максимальной защиты. Например, мощный сетевой экран или прокси-сервер, если при отказе будет пропускать любые пакеты, то в данном случае защита из вне будет нарушена. 6. Принцип баланса возможного ущерба от реализации угрозы и затрат на ее предотвращение. Администратор должен взвесить величину ущерба, которую может понести предприятие в результате нарушения защиты данных, и соотнести ее с величиной затрат, требуемых на обеспечение безопасности этих данных.

Шифрование это средство обеспечения конфиденциальности данных, хранящихся в памяти компьютера или передаваемых по проводной или беспроводной сети. Шифрование является краеугольным камнем всех служб информационной безопасности, будь то система аутентификации или авторизации, защищенный канал или средства безопасного хранения данных. Пара процедур шифрование и дешифрирование называется криптосистемой. Обычно криптосистема предусматривает наличие специального параметра секретного ключа. Криптосистема считается раскрытой, если найдена процедура, позволяющая подобрать ключ за реальное время. Сложность алгоритма раскрытия является одной из важных характеристик криптосистемы и называется криптостойкостью. ПРАВИЛО КЕРКХОФФА: Стойкость шифра должна определяться только секретностью ключа.

Существует два класса криптосистем симметричные и асимметричные. В симметричных схемах шифрования (классическая криптография) секретный ключ шифрования совпадает с секретным ключом дешифрирования. В асимметричных схемах шифрования (криптография с открытым ключом) открытый ключ шифрования не совпадает с секретным ключом дешифрирования. Симметричные алгоритмы шифрования Рис Модель симметричного шифрования

На рис приведена классическая модель симметричной криптосистемы, теоретические основы которой впервые были изложены в 1949 году в работе Клода Шеннона. В данной модели три участника: отправитель, получатель и злоумышленник. Отправитель зашифровывает открытый текст X ключом k и передает шифрованный текст Y. Получатель, используя тот же ключ k расшифровывает сообщение У и получает сообщение X. Сгенерированный ключ заранее по надежному каналу передается получателю. Задача злоумышленника заключается в перехвате и чтении передаваемых сообщений, а также в имитации ложных сообщений. Алгоритм DES Наиболее популярным стандартным симметричным алгоритмом шифрования данных является DES (Data Encryption Standard). Алгоритм разработан фирмой IBM и в 1976 году был рекомендован Национальным бюро стандартов к использованию в открытых секторах экономики. Суть этого алгоритма заключается в следующем (рис ).

Открытый текст шифруется блоками по 64 бита, в результате чего на выходе получаются 64-битные блоки зашифрованного текста. Алгоритм, использующий 56-разрядный ключ, состоит из 19 отдельных этапов. На первом этапе выполняется независимая перестановка 64 разрядов открытого текста. Последний этап представляет собой обратную перестановку. Предпоследний этап меняет местами левые и правые 32 разряда. Остальные 16 этапов функционально идентичны, но управляются разными функциями входного ключа. На каждом i-м этапе 64-разрядный блок делится пополам на левую (L i-1 ) и правую (R i-1 ) части. Далее правая часть замещает левую часть Li=Ri-1. Правая часть результирующего блока вычисляется с помощью функции f(L i-1, Ki), аргументами которой являются исходная левая часть блока Li-1 и ключ Ki. Функция состоит из четырех последовательно выполняемых шагов. Сначала из 32 разрядов правой части, с помощью фиксированной перестановки и дублирования формируется 48-разрядное число Е. На втором шаге число Е и ключ Кi- складываются по модулю 2. Затем выход разделяется на восемь групп по шесть разрядов, каждая из которых преобразуется независимым S-блоком в 4-разрядные группы. Наконец, эти 8 4 разряда пропускаются через Р- блок.

Рис Стандарт шифрования данных DES: общий вид (а); детализация одного из этапов (б)

На каждом из 16 этапов используются различные функции исходного ключа. Алгоритм был разработан так, чтобы дешифрация выполнялась тем же ключом, что и шифрование. Это обеспечивает соответствие алгоритма принципу симметричных ключей. Этапы при расшифровке просто выполняются в обратном порядке. Используемая двоичная последовательность, представляющая собой ключ данного алгоритма, имеет длину 64 бита, из которых 56 действительно случайны, а 8 предназначены для контроля ключа. Для того чтобы повысить криптостойкость алгоритма DES, иногда применяют его усиленный вариант, называемый «тройным алгоритмом DES», который включает троекратное шифрование с использованием двух разных ключей. При этом можно считать, что длина ключа увеличивается с 56 до 112 бит а значит, криптостойкость алгоритма существенно повышается. Но за это приходится платить производительностью тройной алгоритм DES требует в три раза больше времени на реализацию, чем «обычный».

Недостатки DES Диффи и Хеллман в 1977 году описали машину, способную за один день подобрать ключ DES. Стоимость оценивалась в 20 млн. долл. К началу 1990-х годов прогнозируемые затраты на создание машины, способной взломать DES, снизились в десять раз. В 1997 году группа из нескольких тысяч добровольцев, работавших параллельно в течение нескольких месяцев, расшифровала сообщение, закодированное с помощью DES. В 1998 году была представлена работоспособная машина ($ ) для взлома DES. Она способна в среднем расшифровывать один ключ DES каждые 4,5 дня. В 2001 году Национальное бюро стандартов США приняло новый стандарт симметричного шифрования, который получил название AES (Advanced Encryption Standard). Стандарт AES был разработан в результате проведения конкурса на разработку симметричного алгоритма шифрования, обладающего лучшим, чем у DES, сочетанием показателей безопасности и скорости работы. Победителем был признан алгоритм Rijndael, который и был положен в основу AES. В результате AES обеспечивает лучшую защиту, так как использует 128- битные ключи (а также может работать со 192- и 256-битными ключами) и имеет более высокую скорость работы, кодируя за один цикл 128-битный блок в отличие от 64-битного блока DES. В настоящее время AES является наиболее распространенным симметричным алгоритмом шифрования.

В симметричных алгоритмах главную проблему представляют ключи. Во-первых, криптостойкость многих симметричных алгоритмов зависит от качества ключа, это предъявляет повышенные требования к службе генерации ключей. Во-вторых, принципиальной является надежность канала передачи ключа второму участнику секретных переговоров. Проблема с ключами возникает даже в системе с двумя абонентами, а в системе с n абонентами, желающими обмениваться секретными данными по принципу «каждый с каждым», потребуется n х (n - 1)/2 ключей, которые должны быть сгенерированы и распределены надежным образом. То есть количество ключей пропорционально квадрату количества абонентов, что при большом числе абонентов делает задачу чрезвычайно сложной. Несимметричные алгоритмы, основанные на использовании открытых ключей, снимают эту проблему. Односторонние функции шифрования Во многих базовых технологиях безопасности используется еще один прием шифрования шифрование с помощью односторонней функции (one-way function), называемой также необратимой функцией, хэш-функцией (hash function) или дайджест-функцией (digest function). Эта функция, примененная к шифруемым данным, дает в результате значение, называемое дайджестом, которое состоит из фиксированного сравнительно небольшого и не зависящего от длины шифруемого текста числа байтов.

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

Рис Использование односторонних функций шифрования для контроля целостности

Таким образом, хотя знание дайджеста не дает возможности восстановить исходное сообщение, оно позволяет проверить целостность данных. На первый взгляд кажется, что дайджест является своего рода контрольной суммой для исходного сообщения. Однако имеется и существенное отличие. Контрольные суммы применяются тогда, когда нужно обнаружить ошибки, вызванные техническими неполадками, например помехами в линии связи. Это средство не распознает модификацию данных злоумышленником, который, подменив сообщение, может просто добавить к нему заново вычисленную контрольную сумму. В отличие от контрольной суммы дайджест вычисляется с использованием параметра секретного ключа. Поскольку значение секретного ключа для ОФШ известно только отправителю и получателю любая модификация исходного сообщения будет немедленно обнаружена. На рис , б показан другой вариант использования односторонней функции шифрования для обеспечения целостности данных. Здесь односторонняя функция не имеет параметра-ключа, но зато применяется не просто к сообщению, а к сообщению, дополненному секретным ключом.

Получатель извлекает из полученных по сети данных исходное сообщение, потом дополняет его тем же известным ему секретным ключом и применяет к полученным данным одностороннюю функцию. Результат вычислений сравнивается с полученным по сети дайджестом. Помимо обеспечения целостности сообщений, дайджест может быть использован в качестве электронной подписи для аутентификации передаваемого документа. Построение односторонних функций является трудной задачей. Такого рода функции должны удовлетворять двум условиям: по дайджесту, вычисленному с помощью данной функции, должно быть невозможно каким-либо образом вычислить исходное сообщение; должна отсутствовать возможность вычисления двух разных сообщений, для которых с помощью данной функции могли быть вычислены одинаковые дайджесты. Наиболее популярной в системах безопасности в настоящее время является серия хэш-функций MD2, MD4, MD5. Все они генерируют дайджесты фиксированной длины 16 байт. Адаптированным вариантом MD4 является американский стандарт SHA, длина дайджеста в котором составляет 20 байт. Компания IBM поддерживает односторонние функции MDC2 и MDC4, основанные на алгоритме шифрования DES.

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

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

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

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

Авторизация доступа Авторизация это процедура контроля доступа легальных пользователей к ресурсам системы и предоставление каждому из них именно тех прав, которые ему были определены администратором. Термин авторизация (authorization) происходит от латинского слова auctoritas, показывающее уровень престижа человека в Древнем Риме и соответствующие этому уровню привилегии. В отличие от аутентификации, которая позволяет распознать легальных и нелегальных пользователей, авторизация имеет дело только с легальными пользователями, успешно прошедшими процедуру аутентификации. Помимо предоставления пользователям прав доступа к каталогам, файлам и принтерам, средства авторизации могут контролировать возможность выполнения пользователями различных системных функций, таких как: локальный доступ к серверу, установка системного времени, создание резервных копий данных, выключение сервера и т. п.

Средства авторизации могут предоставлять различные формы правил доступа, которые часто делят на два класса: Избирательный доступ. В этом случае определенные операции с определенными ресурсами разрешаются или запрещаются пользователям или группам пользователей, явно указанным своими идентификаторами, например: «пользователю User_T разрешено читать и записывать в файл Filel», а User_R только читать. Мандатный подход прав доступа заключается в том, что вся информация делится на уровни в зависимости от степени секретности. Пользователи сети также делятся на группы, образующие иерархию в соответствии с уровнем допуска к этой информации. Информация классифицируется на категории: «Для служебного пользования» (ДСП), «Секретно» и «Совершенно секретно». Пользователи в зависимости от определенного для них статуса получают разные формы допуска: первую, вторую или третью. В отличие от систем с избирательными правами доступа, в системах с мандатным подходом пользователи в принципе не имеют возможности изменить уровень доступности информации. Например, пользователь более высокого уровня не может разрешить читать данные из своего файла пользователю, относящемуся к более низкому уровню. Отсюда видно, что мандатный подход является более строгим.

Процедуры авторизации часто совмещаются с процедурами аутентификации и реализуются одними и теми же программными средствами, которые могут встраиваться в операционную систему или приложение, а также поставляться в виде отдельных программных продуктов. При этом программные системы аутентификации и авторизации могут строиться на базе двух схем: Централизованная схема, базирующаяся на сервере, построенная по «принципу единого входа». Пользователь один раз логически входит в сеть и получает на все время работы некоторый набор разрешений по доступу к различным ресурсам сети. К централизованным системам относятся «Kerberos» и более современная система Shibboleth, а также системы TACACS и RADIUS, часто применяемые совместно с системами удаленного доступа. Децентрализованная схема, базирующаяся на рабочих станциях. При этом подходе средства авторизации работают на каждой машине. Администратор должен отслеживать работу механизмов безопасности каждого отдельного приложения электронной почты, справочной службы, локальных баз данных и т. п. Подчеркнем, что системы аутентификации и авторизации совместно решают одну задачу обеспечение контроля доступа, поэтому к ним необходимо предъявлять одинаковый уровень требований. Ненадежность одного звена здесь не может быть компенсирована надежностью другого.

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

Эта информация, возможно, позволит найти злоумышленника или, по крайней мере, предотвратить повторение атак путем устранения уязвимых мест в системе защиты. Функции аудита встраиваются в различные средства обеспечения безопасности: сетевые экраны, системы обнаружения вторжений, антивирусные системы, сетевые мониторы. Строгая аутентификация на основе многоразового пароля в протоколе CHAP Протокол аутентификации по квитированию вызова (Challenge Handshake Authentication Protocol, CHAP) входит в семейство протоколов РРР. В этом протоколе предусмотрено 4 типа сообщений: Success (успех), Challenge (вызов), Response (ответ), Failure (ошибка). Этот протокол используется, например, при аутентификации удаленных пользователей, подключенных к Интернету по коммутируемому каналу. Здесь аутентификатором является сервер провайдера, а аутентифицируемым клиентский компьютер (рис ). При заключении договора клиент получает от провайдера пароль (пусть, например, это будет слово parol). Этот пароль хранится в базе данных провайдера в виде дайджеста Z = d(parol), полученного путем применения к паролю односторонней хэш- функции MD5.

Рис Аутентификация по протоколу CHAP

Аутентификация выполняется в следующей последовательности. 1. Пользователь-клиент активизирует программу (например, программу дозвона) удаленного доступа к серверу провайдера, вводя имя и назначенный ему пароль. Имя («Moscow») передается по сети провайдеру в составе запроса на соединение, но пароль не передается в сеть ни в каком виде. То есть здесь мы имеем дело со строгой аутентификацией. 2. Сервер провайдера, получив запрос от клиента, генерирует псевдослучайное слово-вызов (пусть это будет слово «challenge») и передает его клиенту вместе со значением, идентифицирующем сообщение в рамках данного сеанса (ID), и собственным именем (здесь «Paris»). Это сообщение типа Challenge. (Для защиты от перехвата ответа аутентификатор должен использовать разные значения слова-вызова при каждой процедуре аутентификации.) 3. Программа клиента, получив этот пакет, извлекает из него слово-вызов, добавляет к нему идентификатор и вычисленный локально дайджест Z = d/(parol), а затем вычисляет с помощью все той же функции MD5 дайджест Y= d{(ID), challenge, d/(parol)} от всех этих трех значений. Результат клиент посылает серверу провайдера в пакете Response. 4. Сервер провайдера сравнивает полученный по сети дайджест Y с тем значением, которое он получил, локально применив ту же хэш-функцию к набору аналогичных компонентов, хранящихся в его памяти. 5. Если результаты совпадают, то аутентификация считается успешной и аутентификатор посылает партнеру пакет Success.

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

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

Рис Аппаратный ключ, который используют клиенты банка Barclays для доступа к своим счетам

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

Идея метода состоит в том, что аппаратный ключ и аутентифицирующий сервер вычисляют некоторое значение по одному и тому же алгоритму. Алгоритм имеет два параметра: разделяемый секретный ключ, представляющий собой 64-разрядное число, уникально назначаемое каждому пользователю и хранящееся как в аппаратном ключе, так и в базе данных сервера аутентификации; значение текущего времени. Если вычисленные значения совпадают, то аутентификация считается успешной. При логическом вход в систему с персонального компьютера (рис ), аутентифицирующая программа предлагает пользователю ввести его личный персональный номер (PIN), состоящий из четырех десятичных цифр, а также 6 цифр случайного числа, отображаемого в тот момент на дисплее аппаратного ключа. На основе PIN-кода сервер извлекает из базы данных информацию о пользователе, а именно его секретный ключ. Затем сервер выполняет вычисления по тому же алгоритму, который заложен в аппаратном ключе, используя в качестве параметров секретный ключ и значение текущего времени, проверяя, совпадает ли сгенерированное число с числом, которое ввел пользователь. Если они совпадают, то пользователю разрешается логический вход.

Рис Аутентификация, основанная на временной синхронизации

Существующую проблему с постепенным рассогласованием внутренних часов сервера и аппаратного ключа, компания Security Dynamics решает двумя способами. Во-первых, при производстве аппаратного ключа измеряется отклонение частоты его таймера от номинала. Далее эта величина учитывается в виде параметра алгоритма сервера. Во-вторых, сервер отслеживает коды, генерируемые конкретным аппаратным ключом, и если таймер данного ключа постоянно спешит или отстает, то сервер динамически подстраивается под него. Одноразовый пароль, генерируемый аппаратным ключом, действителен в течение некоторого интервала времени (от нескольких десятков секунд до нескольких десятков минут), то есть в течение этого времени одноразовый пароль, в сущности, является многоразовым. Поэтому теоретически возможно, что очень проворный хакер сможет перехватить PIN-код и одноразовый пароль с тем, чтобы также получить доступ в сеть в течение этого интервала.

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

Схема использования сертификатов Сертификат является аналогом пропуска на проходной большого предприятия и выдается по запросам специальными сертифицирующими центрами при выполнении определенных условий. Сертификат представляет собой электронную форму, в которой содержится следующая информация: 1.открытый ключ владельца данного сертификата; 2.сведения о владельце сертификата, такие, например, как имя, адрес электронной почты, наименование организации, в которой он работает и т. п.; 3.наименование сертифицирующей организации, выдавшей данный сертификат; 4.электронная подпись сертифицирующей организации, то есть зашифрованные закрытым ключом этой организации данные, содержащиеся в сертификате. Использование сертификатов основано на предположении, что сертифицирующих организаций немного и их открытые ключи широко доступны, например, из публикаций.

Когда пользователь хочет подтвердить свою личность, он предъявляет свой сертификат в двух формах: открытой (то есть такой, в которой он получил его в сертифицирующей организации) и зашифрованной с применением своего закрытого ключа (рис ). Сторона, проводящая аутентификацию, берет из незашифрованного сертификата открытый ключ пользователя и расшифровывает с его помощью зашифрованный сертификат. Совпадение результата с открытым сертификатом подтверждает, что предъявитель действительно является владельцем закрытого ключа, соответствующего указанному открытому. Затем с помощью известного открытого ключа указанной в сертификате организации проводится расшифровка подписи этой организации в сертификате. Если в результате получается тот же сертификат с тем же именем пользователя и его открытым ключом, значит, он действительно прошел регистрацию в сертификационном центре, является тем, за кого себя выдает, и указанный в сертификате открытый ключ действительно принадлежит ему. В качестве примера рассмотрим такую ситуацию: Роберт хочет разрешить Алисе и другим лицам устанавливать с ним защищенные соединения. Он приходит в Управление сертификации со своим открытым ключом, а также паспортом или другим удостоверением личности и просит зарегистрировать ключ. Управление выдает ему сертификат, напоминающий тот, что показан на рис , и подписывает хэш SHA-1 своим закрытым ключом. Затем Роберт оплачивает услуги Управления и получает дискету с сертификатом и подписанным хэшем.

Рис Пример сертификата и подписанного хэша

Основная задача сертификата состоит в связывании открытого ключа с именем принципала (физического или юридического лица). Сертификаты сами по себе никак не защищаются и не хранятся в тайне. Например, Роберт может выложить его на свой сайт и поставить ссылку: «Здесь можно посмотреть на сертификат моего открытого ключа». Перейдя по этой ссылке, пользователь увидит и сертификат, и блок с подписью (подписанный хэш SHA- 1 сертификата). Цифровой сертификат устанавливает и гарантирует соответствие между открытым ключом и его владельцем. Злоумышленник может перехватить запрос Алисы к страницы Роберта, и подменить его сертификат собственным. Алиса, проверив сертификат алгоритмом SHA-1, получит значение хэш-функции, не согласующееся с тем, которое будет вычислено по открытому ключу Управления сертификации и блоку подписи и установит подлог.

Рис Аутентификация пользователей на основе сертификатов

Сертификаты можно использовать не только для аутентификации, но и для предоставления избирательных прав доступа. Для этого в сертификат могут вводиться дополнительные поля, в которых указывается принадлежность его владельцев к той или иной категории пользователей. Эта категория назначается сертифицирующей организацией в зависимости от условий, на которых выдается сертификат. Например, организация, поставляющая через Интернет на коммерческой основе информацию, может выдавать сертификаты определенной категории пользователям, оплатившим годовую подписку на некоторый бюллетень, тогда веб-сервер будет предоставлять доступ к страницам бюллетеня только пользователям, предъявившим сертификат данной категории. Это предотвращает угрозу подмены открытого ключа. Если некоторый абонент А получает по сети сертификат от абонента Б, то он может быть уверен, что открытый ключ, содержащийся в сертификате, гарантированно принадлежит абоненту Б, адрес и другие сведения о котором содержатся в этом сертификате. Это значит, что абонент А может без опасений использовать открытый ключ абонента Б для секретных посланий в адрес последнего. Сертификат является средством аутентификации пользователя при его обращении к сетевым ресурсам, роль аутентифицирующей стороны играют при этом информационные серверы корпоративной сети или Интернета. В то же время и сама процедура получения сертификата включает этап аутентификации, когда аутентификатором выступает сертифицирующая организация.

Сертифицирующие центры Принципиальным является вопрос о том, кто имеет право выполнять функции сертифицирующей организации. Во-первых, задачу обеспечения своих сотрудников сертификатами может взять на себя само предприятие. В этом случае упрощается процедура первичной аутентификации при выдаче сертификата. Предприятия достаточно осведомлены о своих сотрудниках, чтобы брать на себя задачу подтверждения их личности. Для автоматизации процесса генерации, выдачи и обслуживания сертификатов предприятия могут использовать готовые программные продукты, например, компания Netscape Communications выпустила сервер сертификатов, который организации могут у себя устанавливать для выпуска своих сертификатов. Во-вторых, эти функции выполнять независимые центры по выдаче сертификатов, работающие на коммерческой основе, например сертифицирующий центр компании Verisign. Сертификаты компании Verisign выполнены в соответствии с международным стандартом Х.509 и используются во многих продуктах защиты данных, в том числе в популярном протоколе защищенного канала SSL. Любой желающий может обратиться с запросом на получение сертификата на веб-сервер этой компании. Сервер Verisign предлагает несколько типов сертификатов, отличающихся уровнем полномочий, которые получает владелец сертификата.

Сертификаты класса 1 предоставляют пользователю самый низкий уровень полномочий. Они могут применяться при отправке и получении шифрованной электронной почты через Интернет. Чтобы получить сертификат этого класса, пользователь должен сообщить серверу Verisign свой адрес электронной почты или свое уникальное имя. Сертификаты класса 2 дают возможность его владельцу пользоваться внутрикорпоративной электронной почтой и принимать участие в подписных интерактивных службах. Чтобы получить сертификат этого более высокого уровня, пользователь должен организовать подтверждение своей личности сторонним лицом, например своим работодателем. Такой сертификат с информацией от работодателя может эффективно применяться при деловой переписке. Сертификаты класса 3 предоставляют владельцу все те возможности, которые имеет обладатель сертификата класса 2, плюс возможность участия в электронных банковских операциях, электронных сделках по покупке товаров и некоторые другие возможности. Для доказательства своей аутентичности соискатель сертификата должен явиться лично и предоставить подтверждающие документы. Сертификаты класса 4 используются при выполнении крупных финансовых операций. Поскольку такой сертификат наделяет владельца самым высоким уровнем доверия, сертифицирующий центр Verisign проводит тщательное изучение частного лица или организации, запрашивающей сертификат.

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

В настоящее время существует большое количество протоколов и продуктов, использующих сертификаты. Например, компания Microsoft реализовала поддержку сертификатов и в своем браузере Internet Explorer, и в сервере Internet Information Server, разработала собственный сервер сертификатов, а также продукты, которые позволяют хранить сертификаты пользователя, его закрытые ключи и пароли защищенным образом. Hoster.by 17 ноября2011 начал продажу SSL-сертификатов – "цифровых подписей" ресурса, позволяющих установить безопасное соединение между клиентом и сервером, которые сообщат посетителям сайта, что тому или иному ресурсу можно доверять. Компания предлагает широкий выбор различных видов SSL- сертификатов от VeriSign, Comodo, Thawte, GeoTrust и TrustWave по цене от рублей в год. SSL-сертификаты необходимы интернет-магазинам, предоставляющим пользователям возможность оплаты товаров через интернет, почтовым службам, банкам и другим ресурсам, которые используют персональные данные пользователя. Владелец сайта обязан предупредить любую возможность утечки личных данных пользователя, например, используя SSL- сертификат.

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

Для более надежной защиты корпоративной информации желательно реализовать централизованную службу генерации и распределения ключей. По этим причинам был разработан альтернативный способ сертификации открытых ключей. Он известен под общим названием PKI (Public Key Infrastructure инфраструктура систем с открытыми ключами). PKI состоит из множества компонентов, среди которых Управления сертификации, сами сертификаты, а также каталоги. Инфраструктура систем с открытыми ключами предоставляет возможность структурной организации этих компонентов и определяет стандарты, касающиеся различных документов и протоколов. Одним из простейших видов PKI является иерархия Управлений, представленная на рис На рисунке представлены три уровня, однако реально их может быть как больше, так и меньше. Управление сертификации верхнего уровня (root) мы будем называть Центральным управлением (ЦУ). Центральное управление сертифицирует управления второго уровня назовем их Региональными отделами (РО), так как они могут обслуживать некоторый географический регион, например, страну или континент.

Этот термин не стандартизован. Названия для уровней иерархии вообще не оговариваются стандартом. Региональные отделы, в свою очередь, занимаются легализацией реальных Управлений сертификации (УС), эмитирующих сертификаты стандарта Х.509 для физических и юридических лиц. При легализации Центральным управлением нового Регионального отдела последнему выдается сертификат, подтверждающий его признание. Он содержит открытый ключ нового РО и подпись ЦУ. Аналогичным образом РО взаимодействуют с Управлениями сертификации: выдают и подписывают сертификаты, содержащие открытые ключи УС и признающие легальность деятельности.

Рис Иерархия PKI (а); цепочка сертификатов (б) Процедура, позволяющая получать копии закрытых ключей, называется восстановлением ключей. Вопрос, включать ли в продукты безопасности средства восстановления ключей, в последние годы приобрел политический оттенок. В США прошли бурные дебаты, тему которых можно примерно сформулировать так: обладает ли правительство правом доступа к любой частной информации при условии, что на это есть постановление суда?

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

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

Цифровая подпись Для решения задачи аутентификации информации используется концепция цифровой, или электронной, подписи. Согласно терминологии, утвержденной Международной организацией по стандартизации (ISO), под термином «цифровая подпись» понимаются методы, позволяющие устанавливать подлинность автора сообщения (документа) при возникновении спора относительно авторства. Основная область применения цифровой подписи это финансовые документы, сопровождающие электронные сделки, документы, фиксирующие международные договоренности и т. п. До настоящего времени чаще всего для построения схемы цифровой подписи использовался алгоритм RSA. Как уже отмечалось (см. раздел «Алгоритм RSA»), в основе этого алгоритма лежит концепция ДиффиХеллмана. Она заключается в том, что каждый пользователь сети имеет свой закрытый ключ, необходимый для формирования подписи, а соответствующий этому секретному ключу открытый ключ, предназначенный для проверки подписи, известен всем другим пользователям сети. На рис показана схема формирования цифровой подписи по алгоритму RSA. Подписанное сообщение состоит из двух частей: незашифрованной части, в которой содержится исходный текст Т, и зашифрованной части, представляющей собой цифровую подпись. Цифровая подпись S вычисляется с использованием закрытого ключа (D, n) по формуле: S=T D mod n.

Рис Схема формирования цифровой подписи по алгоритму RSA Сообщение посылается в виде пары (T, S). Каждый пользователь, имеющий соответствующий открытый ключ (Е, п), получив сообщение, отделяет открытую часть Т, расшифровывает цифровую подпись S и проверяет равенство: Т= S E mod n.

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

Рис Обеспечение конфиденциальности документа с цифровой подписью

Другие методы цифровой подписи основаны на формировании соответствующей сообщению контрольной комбинации с помощью симметричных алгоритмов типа DES. Учитывая более высокую производительность алгоритма DES по сравнению с RSA, он более эффективен для подтверждения аутентичности больших объемов информации. А для коротких сообщений типа платежных поручений или квитанций подтверждения приема, лучше подходит алгоритм RSA. Аутентификация программных кодов Компания Microsoft разработала средства для доказательства аутентичности программных кодов, распространяемых через Интернет. Пользователю важно иметь доказательства, что программа, которую он загрузил с какого-либо сервера, действительно содержит коды, разработанные определенной компанией. Протоколы защищенного канала типа SSL помочь здесь не могут, так как позволяют удостоверить только аутентичность сервера. Суть технологии аутентикода (authenticode), разработанной Microsoft, состоит в следующем.

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

Рис Схема получения аутентикода

В.Г. Олифер, Н.А. Олифер Компьютерные сети, 3-е издание, 2009г.