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

Автор: Пользователь скрыл имя, 01 Декабря 2012 в 16:51, курсовая работа

Краткое описание

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

Оглавление

Введение 3
Проблемы удаленной аутентификации 4
Одноразовый пароль 6
Реализация 8
Уязвимости технологий OTP 15
Пример реализации OTP 17
Настройка OTP–аутентификации в продуктах «1С-Битрикс» 19
Список использованной литературы: 23

Файлы: 1 файл

курсовая работа ПАЗИ 5 курс .doc

— 626.50 Кб (Скачать)

 

Федеральное агентство  по образованию

Государственное образовательное учреждение высшего  профессионального образования

«Сыктывкарский  государственный университет»

Факультет информационных систем и технологий

Кафедра защиты информации

 

Допустить к защите

Зав. кафедрой, к.ф.-м.н., доцент

_____________Л.С. Носов 

«____»_______2010 г.

 

Курсовая работа по дисциплине

Программно-аппаратная защита информации

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

 

 

 

 

Научный руководитель: 

_____________ А.О. Басенко

         «___» ________2010 г.

 Исполнитель: 

Студент 143 гр.      _____________А.Н. Колотилкин

          «____»________2010 г.

 

 

Сыктывкар 2010

 

Оглавление

 

Введение

Как показывают последние исследования, одна из наиболее серьезных для компаний проблем в области информационной безопасности - несанкционированный доступ к компьютерным системам. По данным исследования CSI/FBI Computer Crime and Security Survey, за последние несколько лет 55% компаний зарегистрировали инциденты, связанные с несанкционированным доступом к данным. Естественно, для российских компаний цифры убытков будут совершенно иными, однако это не отменяет самой проблемы: несанкционированный доступ действительно наносит серьезный ущерб компаниям, независимо от того, осознает это руководство или нет.

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

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

 

Проблемы удаленной аутентификации

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

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

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

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

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

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

Потребность подключения  к корпоративной сети по надежной схеме аутентификации при наличии под рукой лишь КПК или смартфона может стать серьезной проблемой, если пользователь находится на конференции, переговорах или других деловых мероприятиях. Как раз для мобильных приложений, а также для организации доступа к нужной информации из тех мест, где невозможно установить специальное ПО, была разработана концепция одноразовых паролей OTP - One-Time Password.

 

 

Одноразовый пароль

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

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

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

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

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

 

Реализация

Технологии OTP были разработаны в рамках отраслевой инициативы Open Authentication (OATH), выдвинутой компанией VeriSign в 2004 г. Суть этой инициативы заключается в разработке стандартной  спецификации действительно надежной аутентификации для различных Интернет-сервисов. Причем речь идет о двухфакторном определении прав пользователя, в процессе которого последний должен "предъявить" смарт-карту или USB-токен и свой пароль. Таким образом, одноразовые пароли со временем могут стать стандартным средством удаленной аутентификации в различных системах.

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

Метод "запрос-ответ".

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

Рис. 1 метод «запрос-ответ»

  1. Пользователь вводит свой id на рабочей станции;
  2. id пользователя передается по сети в открытом виде;
  3. Сервер аутентификации генерирует случайный запрос;
  4. Запрос передается по сети в открытом виде;
  5. Пользователь вводит запрос в свой ОТР-токен;
  6. Аутентификационный токен шифрует запрос с помощью секретного ключа пользователя, в результате получается ответ , и он отображается на экране;
  7. Пользователь вводит этот ответ на рабочей станции;
  8. Ответ передается по сети в открытом виде;
  9. Аутентификационный сервер находит запись пользователя в атентификациооной базе данных и с использованием хранимого им секретного ключа пользователя зашифровывает тот же запрос;
  10. Сервер сравнивает представленный ответ от пользователя с вычисленным им самим ответом.

Метод "только ответ".

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

Рис. 2 метод «только ответ»

  1. Пользователь активизирует свой OTP-токен, который вычисляет и отображает ответ на «скрытый» запрос;
  2. Пользователь  вводит  свой id  и ответ ОТР-токена(запрос от пользователя)  на  рабочей станции;
  3. ID и запрос от пользователя передаются по сети в открытом виде;
  4. Сервер находит запись пользователя, генерирует такой же скрытый запрос и шифрует его с использованием секретного ключа пользователя, получая ответ на свой запрос;
  5. Сервер  сравнивает  представленный  ответ  от  пользователя с  вычисленным  им самим ответом.

 

 

Метод "синхронизация по времени".

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

Рис. 3 метод "синхронизация по времени"

  1. Пользователь активизирует свой OTP-токен, который генерирует OTP, зашифровывая показания часов с помощью своего секретного ключа;
  2. Пользователь вводит свой id и этот OTP на рабочей станции;
  3. ID пользователя и OTP передаются по сети в открытом виде;
  4. Аутентификационный сервер находит запись пользователя и шифрует показание своих часов с использованием  хранимого им  секретного  ключа пользователя,  получая в результате OTP;
  5. Сервер сравнивает OTP, представленный пользователем, и OTP, вычисленный им самим.   
    Метод "синхронизация по событию".

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