29.06.2005

eToken NG-OTP - безопасность на расстоянии

Infobez.ru, 2005, Марат Давлетханов

Компания Aladdin Software Security R.D. - одна из самых известных в России организаций, работающих в области информационной безопасности и, в частности, предоставления безопасного доступа к данным. Ее специалисты постоянно совершенствуют линейки аппаратных ключей, так называемых токенов, которые успешно проходят тестирования в независимых лабораториях и регулярные проверки на соответствие как российским, так и международным стандартам. И вот совсем недавно, 10 июня этого года, IT-общественности было представлено новое устройство под названием eToken NG-OTP. Причем оно является не простым расширением уже существующей линейки продуктов, а принципиально новой разработкой, выводящей продуктовую линейку токенов на значительно более высокий технологический уровень. Почему? А вот это мы с вами, уважаемые читатели, сейчас и выясним.

Аппаратный ключ eToken NG-OTP состоит из двух отдельных модулей, объединенных в одном корпусе USB-ключа. Первый из них является функциональным аналогом продукта eToken PRO. А значит, он может применяться для решения тех же самых задач по аутентификации. То есть eToken NG-OTP может использоваться в PKI-приложениях различных корпоративных проектах, где требуется работа с конфиденциальными данными для работы с приложениями, поддерживающими технологии смарт-карт, в том числе в банковских системах и системах электронной коммерции. Помимо этого рассматриваемый ключ может оказать помощь в решении многих других задач, связанных с процессом строгой аутентификации, криптографией и электронно-цифровой подписью. Как в архитектуре eToken PRO в состав нового устройства входят чип смарт-карты Infineon SLE66CX со встроенной защищенной памятью, специальный микроконтроллер для реализации интерфейса между токеном и компьютером, уникальный ID-номер, аппаратный датчик случайных чисел, герметичный пластиковый корпус, который невозможно вскрыть бесследно, и т. д.

В общем, описанный модуль ключа eToken NG-OTP весьма интересен и может использоваться для решения множества различных задач. Однако есть одна область, в которой применение обычных токенов оказывается либо неудачным решением, либо вообще невозможно. Речь идет, конечно же, об удаленном доступе к закрытым информационным ресурсам. Проблема заключается в том, что в Интернете или любых других открытых сетях всегда существует опасность сниффинга. То есть злоумышленник может попытаться "прослушать" трафик и вычленить из него нужные ему ключи, в том числе и те, которые извлекаются из аппаратного ключа. Но и это еще не все. Сегодня все больше и больше пользователей применяют для выхода в Глобальную сеть сотовые телефоны и наладонные компьютеры (PDA). Естественно, эти устройства не оснащены ни портами USB, ни, тем более, портами LPT. То есть использовать обычные токены на них просто-напросто невозможно. Что же делать?

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

Сегодня разработкой решений на базе одноразовых паролей занимаются несколько организаций. Правда, официальных стандартов в этой области пока еще не существует. Зато есть так называемая отраслевая инициатива Open AuTHentication (OATH). Именно согласно ее требованиям и разрабатывался алгоритм HOTP (HMAC-based One Time Password), используемый в ключах eToken NG-OTP. Такое решение имеет целый ряд преимуществ. Во-первых, данный алгоритм публичен и доступен для изучения любыми специалистами. Во-вторых, за его использование не предусмотрено никаких лицензионных отчислений. Ну а в-третьих, использование данного алгоритма обеспечивает возможность использования с ключами широкого спектра различного программного обеспечения, в том числе и серверного.

Для реализации процесса аутентификации по принципу одноразовых паролей предназначен второй функциональный модуль аппаратного ключа eToken NG-OTP. Он состоит из нескольких архитектурных элементов. Самым главным из них является, конечно же, аппаратный генератор одноразовых паролей. Кроме него в компонент OTP входят кнопка управления, жидкокристаллический дисплей и элемент питания.

Простейшая схема аутентификации пользователя с помощью одноразового пароля выглядит следующим образом. Допустим, какому-то сотруднику нужно срочно получить удаленный доступ к защищенной информации, размещенной на сервере компании. При этом он имеет доступ только к чужому компьютеру (например, в интернет-кафе) или должен сделать это со своего наладонного ПК. В этом случае человек подключается к Интернету и открывает диалог ввода персональных данных. Параллельно он нажимает кнопку на своем eToken NG-OTP. В ответ на жидкокристаллическом дисплее отображается шестизначный набор цифр (OTP), который отображается на дисплее в течение 15 секунд. В диалоговом окне пользователь вводит свой логин, например "Ivanov", свой собственный PIN-код, который он должен помнить, и сгенерированное значение OTP, которое присоединяется к оригинальному PIN-коду пользователя.

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

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

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

Таким образом, типичная схема полной системы аутентификации на базе одноразовых паролей выглядит следующим образом. Ее основу составляет сервер. Это может быть обычный сервер аутентификации, например Microsoft IAS с установленным на нем плагином. В распоряжении зарегистрированных пользователей, которым необходим удаленный доступ к системе, находятся ключи eToken NG-OTP. Причем, если рассматривать масштаб компании, у части сотрудников могут быть ключи с генератором одноразовых паролей, у части - "обычные" аппаратные ключи (например, eToken Pro), а у остальных - например, смарт-карты. Кроме того, для полноценной работы на стороне сервера должно быть установлено специальное программное обеспечение - eToken TMS (система управления жизненным циклом). Она необходима для управления всеми типами ключей и смарт-картами, их первоначальной инициализации, замены, восстановления PIN-кодов и т. д.

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