Сегодня поговорим о стандарте U2F, разработанном ассоциацией FIDO Aliance, участником которой мы являемся, и электронном ключе нашей собственной разработки — JaCarta U2F, и, конечно, покажем несколько примеров его использования.
О чем думает человек, услышав упоминание слов типа двухфакторная аутентификация, электронный ключ, USB-токен, смарт-карта? Человек, далекий от погружения в технологии ИБ, может быть вспомнит одноразовые смс-пароли для входа в банк, а кто-то подумает про инфраструктуры открытых ключей, сертификаты, цепочки доверия.
А тем временем, разработанный альянсом FIDO протокол U2F набирает популярность среди интернет-компаний и показывает, что двухфакторная аутентификация — не только безопасно, но легко и просто, а главное понятно для конечного пользователя, нетехнического специалиста.
Правда тут есть и минус, в отличие от централизованного enterprise использования, этот самый конечный пользователь должен сам озаботится об усилении аутентификации в свои любимые сервисы и приобрести для себя такой токен, а сервисы, в свою очередь, должны U2F заранее поддерживать.
Таких сервисов уже довольно много, и список их постоянно расширяется. Сначала стандарт U2F поддерживали Google (gmail, youtube, etc), Dropbox, Github. Сейчас присоединились Facebook, Salesforce, Bitbucket, Dashlane и другие сервисы и компании. Большое развитие U2F получил в криптовалютной среде на различных крипто-биржах и крипто-кошельках, например Bitfinex, Coinbase и другие. Об этом мы поговорим отдельно чуть позже.
Взломы аккаунтов в социальных сетях, почте и других сервисах — не новость, это всегда неприятно, и часто связано с финансовыми или репутационными потерями, а, как правило, взломанные аккаунты защищены только простым, может и не простым, но все равно одним паролем, без второго фактора аутентификации. Популяризация же второго фактора в принципе и U2F в частности приводит к повышению общего уровня компьютерной грамотности и безопасности.
Если сервис сам пока не добавил возможность привязать U2F-ключ в качестве аутентификатора, возможно, это получится осуществить через провайдеров двухфакторной аутентификации, например, duo security, причем доступ можно будет настроить не только в web-приложения. Строго говоря, такие облачные платформы в качестве аутентификаторов используют не только U2F, и их возможности гораздо шире. Но не отметить эту возможность в нашей обзорной статье мы также не могли.
Еще один из способов интеграции U2F мы предусмотрели в нашем сервере аутентификации JaCarta Authentication Server (JAS), встраивание происходит путем настройки сервера и добавления необходимого кода на сайт, доступ к которому необходимо защитить.
В качестве примера ресурса, где поддержка U2F уже реализована, возьмем Google как наиболее популярный.
А для примера аутентификации с использованием облачного провайдера аутентификации сервис duo.com и web-сайт на платформе WordPress.
Google
Теперь проверим вход.
Чтобы зайти в профиль учётной записи Google с помощью JaCarta U2F, выполните следующее.
Чтобы защитить какое либо приложение или протокол по средствам платформы DUO, необходимо выбрать, что защищать в самой платформе, и связать платформу с защищаемым приложением.
Со стороны Web-сайта добавьте Duo-плагин, для этого в меню Плагины в поиске найдите Duo-Two-Factor Authentication и нажмите Установить. После установки нажмите Активировать.
Со стороны платформы войдите в меню Приложения (Applications) и выберите Защитить приложение (Protect an Application).
В отобразившемся меню поиска наберите WordPress и нажмите Защитить это приложение (Protect this Application).
Отобразятся 3 ключевых поля, Integration Key, Secret Key и API Hostname.
Значения этих полей нужно перенести в соответствующие поля плагина на Web-сайте.
На этом настройка связи Web-сайта с платформой DUO завершена. Далее аутентифицируйтесь по паролю, на том Web-сайте, куда ранее была привязана платформа Duo.
Установленный и настроенный плагин Duo предложит настроить защиту аккаунта. Нажмите Start Setup.
Выберите U2F-token.
Подсоедините JaCarta U2F к USB-порту и следуйте указаниям.
По завершении вы попадете в админскую часть сайта, пройдя аутентификацию с использованием JaCarta U2F.
Сами сервисы обычно имеют свои собственные инструкции по настройке U2F, и их довольно просто найти, вот некоторые примеры.
Facebook
GitHub
Dropbox
Google
В заключении приведем несколько часто задаваемых вопросов и ответы на них.
Как получить доступ к ресурсу, если U2F ключ будет утерян? Все довольно просто, предусмотрен резервный способ двухфакторной аутентификации в виде кода по смс или email. А после входа в аккаунт связь с утерянным ключом можно разорвать и настроить новый.
Сколько ресурсов может быть добавлено в 1 ключ? Практически безгранично.
На каких платформах используется U2F? Устройство с любой операционной системой, с установленным браузером, поддерживающим U2F (в настоящее время это Google Chrome версии 38 и выше, Opera версии 40 и выше FireFox через специальный плагин), и свободным USB-портом.
О чем думает человек, услышав упоминание слов типа двухфакторная аутентификация, электронный ключ, USB-токен, смарт-карта? Человек, далекий от погружения в технологии ИБ, может быть вспомнит одноразовые смс-пароли для входа в банк, а кто-то подумает про инфраструктуры открытых ключей, сертификаты, цепочки доверия.
А тем временем, разработанный альянсом FIDO протокол U2F набирает популярность среди интернет-компаний и показывает, что двухфакторная аутентификация — не только безопасно, но легко и просто, а главное понятно для конечного пользователя, нетехнического специалиста.
Правда тут есть и минус, в отличие от централизованного enterprise использования, этот самый конечный пользователь должен сам озаботится об усилении аутентификации в свои любимые сервисы и приобрести для себя такой токен, а сервисы, в свою очередь, должны U2F заранее поддерживать.
Таких сервисов уже довольно много, и список их постоянно расширяется. Сначала стандарт U2F поддерживали Google (gmail, youtube, etc), Dropbox, Github. Сейчас присоединились Facebook, Salesforce, Bitbucket, Dashlane и другие сервисы и компании. Большое развитие U2F получил в криптовалютной среде на различных крипто-биржах и крипто-кошельках, например Bitfinex, Coinbase и другие. Об этом мы поговорим отдельно чуть позже.
Взломы аккаунтов в социальных сетях, почте и других сервисах — не новость, это всегда неприятно, и часто связано с финансовыми или репутационными потерями, а, как правило, взломанные аккаунты защищены только простым, может и не простым, но все равно одним паролем, без второго фактора аутентификации. Популяризация же второго фактора в принципе и U2F в частности приводит к повышению общего уровня компьютерной грамотности и безопасности.
Если сервис сам пока не добавил возможность привязать U2F-ключ в качестве аутентификатора, возможно, это получится осуществить через провайдеров двухфакторной аутентификации, например, duo security, причем доступ можно будет настроить не только в web-приложения. Строго говоря, такие облачные платформы в качестве аутентификаторов используют не только U2F, и их возможности гораздо шире. Но не отметить эту возможность в нашей обзорной статье мы также не могли.
Еще один из способов интеграции U2F мы предусмотрели в нашем сервере аутентификации JaCarta Authentication Server (JAS), встраивание происходит путем настройки сервера и добавления необходимого кода на сайт, доступ к которому необходимо защитить.
Примеры настройки и использования
В качестве примера ресурса, где поддержка U2F уже реализована, возьмем Google как наиболее популярный.
А для примера аутентификации с использованием облачного провайдера аутентификации сервис duo.com и web-сайт на платформе WordPress.
- Войдите в свой аккаунт Google.
- Перейдите на страницу настроек учётной записи, нажав на кнопку «Мой аккаунт» в верхнем правом углу страницы.
- Перейдите в раздел «Безопасность и вход».
- В разделе «Пароль и способ входа в аккаунт» перейдите по ссылке «Двухэтапная аутентификация».
- Нажмите на кнопку «Приступить к настройке» и следуйте инструкциям.
- В процессе настройки снимите флажок «Надежный компьютер». В противном случае токен не будет использоваться при входе в аккаунт.
- Перейдите на закладку «Токены» и нажмите на кнопку «Добавить аппаратный токен».
- Подключите токен к USB-порту и дождитесь, пока световой индикатор на корпусе токена не начнет гореть непрерывно.
- Нажмите на кнопку «Зарегистрировать», после чего световой индикатор начнет мигать.
- Нажмите на кнопку на корпусе токена.
- Регистрация токена завершена.
Теперь проверим вход.
Чтобы зайти в профиль учётной записи Google с помощью JaCarta U2F, выполните следующее.
- Подсоедините JaCarta U2F к компьютеру и зайдите на сайт https://www.google.com.
- В правой верхней части страницы щёлкните на кнопке Войти
Отобразится страница, содержащая следующую форму.
- Введите адрес своей электронной почты и нажмите Далее.
Отобразится следующая форма.
- Введите пароль от своей учетной записи и нажмите Войти.
Отобразится следующая страница.
- Снимите флажок Запомнить на этом компьютере.
Если вы оставите установленным флажок Запомнить на этом компьютере, то режим двухфакторной аутентификации для доступа к учетной записи на этом компьютере будет отключен. Для входа потребуется ввести только пароль пользователя.
- Нажмите на кнопку на корпусе JaCarta U2F.
Вход в профиль учетной записи Google выполнен.
Аутентификация в Web-сайт на WordPress с использованием облачного провайдера аутентификации duo.com
Чтобы защитить какое либо приложение или протокол по средствам платформы DUO, необходимо выбрать, что защищать в самой платформе, и связать платформу с защищаемым приложением.
Со стороны Web-сайта добавьте Duo-плагин, для этого в меню Плагины в поиске найдите Duo-Two-Factor Authentication и нажмите Установить. После установки нажмите Активировать.
Со стороны платформы войдите в меню Приложения (Applications) и выберите Защитить приложение (Protect an Application).
В отобразившемся меню поиска наберите WordPress и нажмите Защитить это приложение (Protect this Application).
Отобразятся 3 ключевых поля, Integration Key, Secret Key и API Hostname.
Значения этих полей нужно перенести в соответствующие поля плагина на Web-сайте.
На этом настройка связи Web-сайта с платформой DUO завершена. Далее аутентифицируйтесь по паролю, на том Web-сайте, куда ранее была привязана платформа Duo.
Установленный и настроенный плагин Duo предложит настроить защиту аккаунта. Нажмите Start Setup.
Выберите U2F-token.
Подсоедините JaCarta U2F к USB-порту и следуйте указаниям.
По завершении вы попадете в админскую часть сайта, пройдя аутентификацию с использованием JaCarta U2F.
Сами сервисы обычно имеют свои собственные инструкции по настройке U2F, и их довольно просто найти, вот некоторые примеры.
GitHub
Dropbox
В заключении приведем несколько часто задаваемых вопросов и ответы на них.
Как получить доступ к ресурсу, если U2F ключ будет утерян? Все довольно просто, предусмотрен резервный способ двухфакторной аутентификации в виде кода по смс или email. А после входа в аккаунт связь с утерянным ключом можно разорвать и настроить новый.
Сколько ресурсов может быть добавлено в 1 ключ? Практически безгранично.
На каких платформах используется U2F? Устройство с любой операционной системой, с установленным браузером, поддерживающим U2F (в настоящее время это Google Chrome версии 38 и выше, Opera версии 40 и выше FireFox через специальный плагин), и свободным USB-портом.
Комментарии (12)
herrjemand
19.01.2018 20:18shuralev Алладин не будет на планерке в Монтери на следующей неделе часом?;)
sergrt
21.01.2018 19:59Есть у меня такой токен. Он в общем-то и работает, и пользоваться удобно… Но число приложений и аккаунтов, которые им может защитить среднестатистический пользователь, очень мало. Особенно жаль, что не удалось скрестить его с KeePass.
sopov
А как быть со смартфонами/планшетами? Без USB
shuralev Автор
есть спецификация UAF, в случае смартфона\планшета ios\android будет само устройство доверенным, как второй фактор выступать.
The_Kf
www.yubico.com/support/knowledge-base/categories/articles/yubikey-neo-support-u2f-nfc
www.yubico.com/product/yubikey-neo
Мой пока в дороге: как приедет — буду пробовать в т.ч. для этого.
vikarti
А как заказывали? Там напрямую доставка в Россию работает а то устройство шифрования, нотификации, таможня…
The_Kf
С Амазона, напрямую, не в СНГ =)
91koff
Я пару месяцев назад заказывал себе yubikey 4 nano в одном крупном российской интернет магазине, который торгует лицензиями на ПО (думаю, найдете). Все привезли. Правда, порадовал комплект доставки – чек и приклеенный к нему скотчем токен :)
herrjemand
Андроид устройства поддерживают NFC и BLE аутентификаторы