Двухфакторная аутентификация на основе технологии RSA SecurID

 

Компания RSA Security (ныне RSA, The Security Division of EMC) уже много лет успешно предлагает собственное решение в области двухфакторной аутентификации. Технология RSA SecurID дает платформо-независимое, проверенное и простое в использовании решение, защищающее сегодня информационные системы ведущих мировых компаний с более чем десятью миллионами пользователей по всему миру.

Данное решение включает в себя 3 компонента:

  • RSA Authentication Manager – серверная часть. Устанавливается на отдельный компьютер. Хранит базу пользователей, журнал событий. Обрабатывает информацию, присылаемую агентами.
  • RSA Authentication Agents – агенты. Устанавливаются на ресурсы, которые необходимо защитить. Подменяют запрос на ввод логина и пароля, на запрос соответствующей SecurID информации (логин + пин-код + токен-код), проверку её с помощью центрального сервера, и на основании этой проверки, предоставление доступа или отказ в доступе.
  • Hardware&Software Authenticators – токены и заменяющее их ПО. Находятся непосредственно у пользователя, отображают текущее значение одноразового пароля.

Описание процесса аутентификации

Пользователь запрашивает доступ к ресурсу, будь то Web-портал, рабочая станция, сетевое хранилище, VNP или Dial-up сервер. Вместо стандартного приглашения на ввод логина и пароля запрашивается логин и кодовая фраза (passcode). Кодовая фраза представляет собой комбинацию пин-кода (4 цифры, которые пользователь помнит) и токен-кода (6 цифр, которые в данный момент высвечиваются на токене). Пользователь просто последовательно вводит эти 2 числа.

Агент предоставленную пользователем информацию передаёт на сервер в зашифрованном виде. Сервер хранит пин-коды пользователей и программные копии всех зарегистрированных токенов, соответственно может проверить предоставленную пользователем информацию.

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

Видеопрезентацию с подробным описанием шагов можно посмотреть на сайте производителя (на английском языке) — http://www.rsa.com/node.aspx?id=1159.

Описание алгоритма получения токен-кода

Каждому токену соответствует 128ми битное случайное число – начальный вектор генерации, seed. Плюс к этому в каждый токен встроены часы.

Токен-код — результат работы запатентованного компанией RSA алгоритма, который в качестве параметров берёт текущее время, и начальный вектор генерации. При этом алгоритм работает в одну сторону, так что по токен-коду невозможно восстановить начальный вектор генерации.

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

Алгоритм получения токен-кода

RSA Authentication Manager

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

  • хранит базу пользователей;
  • хранит журнал событий;
  • хранит список зарегистрированных токенов;
  • обрабатывает информацию, присылаемую агентами.

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

Поддерживаются следующие операционные системы: Microsoft Windows Server 2000\2003, Sun Solaris, Red Hat Linux, SuSE Linux Enterprise Server, HP-UX, IBM AIX. Более подробно можно посмотреть на сайте производителя — http://www.rsa.com/node.aspx?id=1171

RSA Authentication Agents

Данное программное обеспечение устанавливается на защищаемый ресурс. Основная задача – потребовать от пользователя ввод SecurID информации, отправить её на центральный сервер и, в зависимости от ответа, предоставить доступ или отказать в доступе.

Список ресурсов, которые могут быть защищены, огромен. В него входят Web-серверы, сетевые ресурсы, VPN и Dial-up серверы, почтовые серверы, рабочие станции, серверы удалённого доступа к приложениям. Полный список, а так же инструкции по интеграции можно найти на сайте производителя — http://rsasecurity.agora.com/rsasecured/

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

Hardware&Software Authenticators

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

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

На сегодняшний день доступны следующие модели аппаратных токенов:

  • Токен в форме брелока для ключей RSA SecurID SID700.

RSA SecurID SID700

  • Токен RSA SecurID SD200. По форме аналогичен банковской пластиковой карте. Выполнен из металла, его толщина порядка 5 мм.

RSA SecurID SD200

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

RSA SecurID SD520

  • Токен RSA SecurID SID800. Данный токен совмещает в себе токен SID700 и usb смарт-карту. Это позволяет использовать данный токен как отторгаемое хранилище цифровых сертификатов.

RSA SecurID SID800

На сегодняшний день доступны следующие модели программных токенов:

  • ПО для рабочих станций под управлением Microsoft Windows;
  • Панель для web-браузера Internet Explorer и Mozilla Firefox;
  • ПО для КПК под управлением Windows Mobile 2003, PalmOS, BlackBerry;
  • ПО для смартфонов: Ericsson R380, Nokia 9210.

Лицензирование

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

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

Минимальное первоначальное количество – 25 пользователей.

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