Самый удобный и безопасный способ использования паролей 

Мы ранее говорили о необходимости использования сложных паролей и втором факторе. В этой статье мы решили подробнее разобрать вопрос мультифакторной аутентификации.
Второй фактор - возможность защититься от злоумышленников, даже если кто-то завладеет вашим паролем. Технологий мультифакторной аутентификации представлено множество, можно использовать подтверждение по SMS или звонку, одноразовые пароли (OTP) и т.д. Все они увеличивают сложность взлома аккаунтов, но не так радикально, как использование железного токена, например, YubiKey
Google на собственном примере показала, что использование железных токенов может свести количество успешных фишинговых атак к 0. 
Наша команда тоже решила не давать злоумышленникам повода и опробовала на себе данную технологию. Мы подвязали ключи под учётные записи G-suite, что было крайне просто и вся инструкция вмещается в 1 картинку. 

Идём дальше. Пароли мы храним в KeePassXC, но сама база с паролями открывается одним мастер паролем, нужен второй фактор.
Важно понимать, что в Chrome и прочих онлайн-сервисах используется U2F аутентификация (бэкап который вы не сделаете), а в случае с KeePassXC Challenge-response. 
Для этого:

  1. Устанавливаем и запускаем YubiKey Personalization Tool. Взять можно тут.
  2. Вставляем YubiKey в USB и в верхнем правом углу должна появиться зелёная надпись "YubiKey is inserted".
  3. Переходим вверху на вкладку "Challenge-Response" и жмём на кнопку "HMAC-SHA1".
  4. В верхнем разделе ("Configuration Slot") выбираем "Configuration Slot 2".
  5. Находим ниже раздел "HMAC-SHA1 Parameters" и ставим галочку "Require user input button". Это означает, что для использования ключа, хранящегося на YubiKey, к нему нужно будет прикоснуться (на срок от 2 до 5 секунд). Это позволяет подтверждать, что запрос выполнен пользователем и избежать автоматического использования.
  6. Выберите "Fixed 64-byte input" и нажмите кнопку "Generate" чтобы сгенерировать случайное 20-байтовое значение в шестнадцатеричном формате.
  7. Копируем ключ в безопасное место. Записываем и прячем под подушку.
    Зачем это нужно - если вы потеряете YubiKey, то сможете перенести сохранённый ключ на новый. Важно!! Нужно скопировать весь ключ (в поле отображаются не все символы). 
  8. Проверьте настройки и если всё верно - нажмите "Write Configuration", чтобы сохранить секретный ключ на YubiKey.
  9. Средство персонализации YubiKey захочет записать файл журнала (в формате CSV), который также будет содержать секретный ключ, поэтому убедитесь, что вы храните этот журнал в безопасном месте или надёжно удалите его.

Итак, у нас есть сконфигурированный YubiKey с HMAC-SHA1 ключом во второй ячейке. Осталось только включить нужную опцию в самом приложении KeePassXC. Для этого:

  1. Открыв KeePassXC, сверху на панели инструментов выбираем "Database" - "Change master key" ("База данных" - "Изменение мастер пароля...").
  2. Ставим галочку напротив "Challenge Response" ("Запрос ответа") и подтверждаем действие. В этом поле уже должен быть YubiKey со вторым вариантом конфигурации.
  3. По требованию касаемся пальцем YubiKey.
  4. Перезапускаем KeePassXC и проверяем: тип аутентификации выбираем "Challenge Response" ("Запрос ответа"), нажимаем OK и касаемся пальцем по требованию.

Готово!

Подведём итог:

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