Многофакторный LastPass

c7683e0fffaa4f8aa53bb40122eff9f4.png

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

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

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

Бесплатный аккаунт:

  • Google Authenticator — программный OTP, задействующий смартфон.
  • Toopher — PUSH сообщения на телефон.
  • Duo Security — OTP или PUSH на выбор.
  • Transakt — PUSH сообщения.
  • Grid — распечатываемые листы с OTP.


Премиум/корпоративный аккаунт. Стоит недорого и при этом дает возможность использовать намного более надежные средства аутентификации:

  • Yubikey — USB устройство, генерирующее OTP.
  • Sesame — Программа, генерирующая OTP.
  • Fingerprint/Smart Card — использование отпечатка пальца или смарт-карты с сертификатом пользователя.


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

Технология OTP не зря снискала популярность благодаря своей относительной простоте, но все таки нельзя назвать её очень надежной.

Гораздо более надежным механизмом аутентификации является технология PKI/SmartCard (инфраструктура открытых ключей с неизвлекаемыми закрытыми ключами на смарт-картах). Не даром именно на ней построены действительно серьезные системы безопасности как государственного, так и корпоративного уровней.

Поэтому в данной статье мы рассмотрим использование смарт-карт и токенов в LastPass, как самых оптимальных по соотношению стоимости/безопасности/удобства использования, на примере наших смарт-карт и токенов Рутокен.

Использование смарт-карт/токенов — надёжно (LastPass требует выписанный на токен сертификат RSA2048), удобно (необходимо лишь ввести пин-код во всплывающем окошке), недорого ($20 за самую навороченную модель Рутокен) и очень доступно и распространено в России (более того, возможно вы уже пользуетесь нашим токеном или смарт-картой у себя на работе).

Бесспорно, использование смарт-карт или токенов будет по настоящему безопасно только в том случае, если криптографическая схема правильно реализована.
Наш экспертный анализ показал, что у них «под капотом» всё правильно — они по-честному подписывают случайные данные закрытым ключом на защищенном ключевом носителе.

Аутентификация в LastPass по смарт-картам настраивается очень просто. Благодаря нашему сотрудничеству с компанией LastPass токены и смарт-карты Рутокен работают с менеджером паролей LastPass и на Windows, и на OS X, и в Linux «из коробки».

Первым делом, если у вас нет RSA2048 сертификата на токене, его можно получить в инфраструктуре вашей компании, создать бесплатно на одном из соответствующих интернет-ресурсов, выписать самостоятельно или, при желании, купить. На безопасность авторизации в LastPass это не повлияет. Для самостоятельного выписывания сертификата можно использовать, к примеру, OpenSSL, графическую надстройку XCA или, если есть возможность, Microsoft Certification Authority, встроенный в Windows Server. Инструкции можно легко найти в интернете.
Также сертификаты можно бесплатно получить на таких ресурсах как, например, Comodo или StartSSL.

Поскольку LastPass работает с токенами и смарт-картами через библиотеки стандарта PKCS#11, нам необходимо будет ей обзавестись.

  • Пользователям Windows достаточно установить драйвера с нашего сайта.
  • Для Linux необходимо взять с нашего сайта пакет DEB/RPM и установить его. Также, при необходимости, по той же ссылке можно взять саму библиотеку и самостоятельно установить ее в /usr/lib или /usr/lib64 для x86 или x64 версии ОС соответственно.
  • В OS X библиотека PKCS#11 устанавливается с помощью модуля поддержки «Связки Ключей» или вручную скачивается с нашего сайта и размещается в /usr/lib.


Далее для включения многофакторной аутентификации в LastPass перейдем в «Хранилище LastPass» («My LastPass Vault») в «Настройки профиля»…

b4ff91a13eb9471bb3d4757f525e3660.png

… на вкладку Multifactor options.

8a82e79dab6e4da0996fcfeca487ede9.png

Нас интересует нижний блок для Премиум пользователей.

c525e9ed8753482fb033b11e7dbb55b1.png

Зайдем в настройки аутентификации Fingerprint/SmartCard. В случае, если библиотека PKCS#11 установлена корректно, мы увидим в выпадающем списке считыватель смарт-карт. Выберем «включено — да» и нажмем на «обновить».

203fad5ca4f441fb93757b3434f669aa.png

Будет запрошено подтверждение мастер-пароля…

b6b57741f75146ec963d135ea988506c.png

… и пин-код смарт-карты/токена.

58cabbcdb41d4ef994fc17283592d343.png

После чего мы получим сообщение об успешной настройке аутентификации.

b66a7f52f30042029eb36e20b6e321bb.png

Теперь для разблокировки сохраненных паролей в LastPass достаточно лишь подключить электронный идентификатор и ввести его пин-код.

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

© Habrahabr.ru