Интеграция проверок пароля в KeePass по базе данных утечек

Автор оригинала: Martin Brinkmann
  • Перевод
Данная статья по шагам описывает процесс интеграции проверок пароля на безопасность в менеджере паролей KeePass. Проверки используют последнюю базу данных Have I Been Pwned, где хранятся утекшие пароли, и всё это работает локально, поэтому вам не надо беспокоиться о возможности утечек хэшей паролей в интернет.

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

Have I Been Pwned – онлайн-сервис для проверки того, не скомпрометирован ли один из ваших онлайн-аккаунтов во время какой-либо утечки паролей.

Некоторые менеджеры паролей, например, 1Password, предлагают возможность проверки пароля в этой базе данных.

Настройка




Пользователи KeePass могут сделать то же самое, только локально. Вот, что для этого нужно:
  • Установить KeePass.
  • Скачать последнюю версию плагина HIPB Offline Check. KeePass поддерживает кучу плагинов, способных улучшать безопасность и предоставлять другие возможности.
  • Скачать последнюю базу данных с паролями с сайта Have I Been Pwned (сортированную по хэшам).


Поместите плагин в каталог для плагинов KeePass. У него открытый код, и вы могли бы сделать его с нуля, если бы у вас были нужные навыки. По умолчанию KeePass установлен в C:\Program Files (x86)\KeePass.

Распакуйте базу с паролями в какой-либо каталог. В текстовом виде она занимает 23 Гб, а в сжатом для скачивания – 9 Гб.

Запустите KeePass и выберите меню Tools > HIBP Offline Check. Нажмите Browse и выберите файл с паролями, распакованный ранее.

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

Наконец, выберите View > Configure Columns и активируйте столбец Have I Been Pwned, чтобы видеть результаты находок в базе.

Проверка паролей KeePass в базе Have I Been Pwned




Проверить пароли на нахождение в базе можно несколькими способами.
  1. Двойной клик на поле с любым паролем.
  2. Можно выбрать несколько пунктов, нажать правую клавишу и Selected Entries > Have I Been Pwned database.


Плагин автоматически проверяет любой обновлённый пароль на наличие в базе. Плагин сравнивает хэш пароля с хэшем в базе, чтобы узнать, не утёк ли он.

Совпадение с базой утекших паролей не означает автоматически, что пароль стал известен третьим лицам – всё зависит от сложности пароля и возможностей третьих лиц по его расшифровке.

Что можно сделать с утекшими паролями


Можно рекомендовать сменить пароли, обнаруженные в базе Have I Been Pwned. Просто зайдите на сайт или выберите нужный сервис, и меняйте на нём пароль вручную.

KeePass можно использовать для генерации безопасных паролей; они автоматически проверяются на наличие в базе Have I Been Pwned, так что на этот счёт тоже можно не беспокоиться.

Итоги


Основное преимущество данного метода состоит в локальности всех проверок. Недостаток в том, что придётся регулярно скачивать новые выпуски базы и проверять пароли на наличие в них.

А каким менеджером паролей пользуетесь вы?
Поддержать автора
Поделиться публикацией

Похожие публикации

Комментарии 17

    –6
    А какой в этом смысл вообще?
    Ну т.е. перебрать 23 Гб паролей задачка непростая и практически равносильная брутфорсу. Причем, даже если ваш пароль есть в этой базе и он сложнее 12345678, он с таким же успехом может быть подобран простым перебором, ну пусть чуточку дольше.

    В том же KeePass можно поставить огромное число итераций «Key transformation» и перебор будет длиться ну очень долго. Например, у меня это занимает почти 2 секунды на моем i-5.
      +5
      база отсортирована
      отвечаю на вопрос ниже: вы просто не поняли о чём статья
        –5
        Т.е. это гораздо быстрее?

        А как же это:
        image
          0
          Ваша картинка относится к шифрованию самой базы с паролями.
          Плагин проверяет, есть ли ваши пароли (которые сохранены в KeePass) среди известных ему базах утечек.
          Если ваш пароль есть в этой базе, то у кого-то есть и логин.
            0
            Вообще не факт. Подскажите логин от пароля 12345678?

            Я не говорю, что эта база с паролями бесполезна. Возможно, статья не слишком понятная.
              0
              Вообще не факт.

              Не факт, но это мало что меняет.


              Подскажите логин от пароля 12345678?

              Пара логина к паролю — это хорошо, но совсем не обязательно. Когда у кого-то утечёт база паролей или даже хешей, подбирать пароли будут по списку в том числе и этому.

                0
                Хеши бывают разные. Как минимум, они солятся. А если сделать несколько различных итераций или алгоритмов хеширования, то список утекших хешей мало чем поможет в подборе к такой базе.
        –4
        Согласен, непонятная статья и переводчик. Не понятно что ищем, просто один из палец в базе или связку логин+пароль в базе.
        +2
        Ох, а что ж так много-то? Вообще, я считаю, что это реальный cs-challenge — найти наиболее оптимальную структуру хранения тыреных паролей.

        Всё осложняется разными алгоритмами и солью.

        Я чувствую запах бинарных деревьев…
          +1
          Мой менеджер паролей — бумажный блокнот и гелевая ручка. Генерирую пароли самописанным генератором, берущим рандом из виндового CrypoAPI. Можно начинать смеяться.
          Если кто не хочет копаться в хешах утекших паролей, я скачал ту саму многогигабайтную БД, отсортировал и убрал дубли. Можно скачать:
          https://drive.google.com/open?id=1nhMUEISwJAlNzwOIngyZaq8wwmVCdSi-
          707 мб 7z архив, plain text, только пароли.
            0
            Благодарен за статью, пользуюсь keepass уже лет 10 на разных ОС (windows, macos, ios), но об этом плагине не знал
              –3
              «Поздравляем, до этого момента, вашего пароля небыло в базах данных» ;)
                0
                Я не очень понял, как это должно работать
                  0

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

                  0
                  я храню свои пароли открыто… перед монитором :)
                  просто не записываю их целиком или намерено искажаю.
                  сама идея паролей в том, что его знаешь только ты, если привлекать «супернадежные» сервисы, то это даже не двое а неопределенный круг лиц получает доступ к чувствительной информации.
                  конечно никуда не делись провайдеры, но тут уж вопрос паранойи и неизбежного зла, а без третьих сервисов можно обойтись.

                    0
                    Честно говоря, смысла в такой проверке очень мало, разве что найти «слабые» пароли.

                    Мне кажется, гораздо проще изначально использовать рандомные пароли (от 16 символов и больше), либо же длинные мнемонические модифицированные («Асъ Пукшин долетался?») если не хочется заучивать рандомные для часто используемых сервисов. Вероятность взлома таких паролей перебором хешей стремится к нулю, разве что их хранят в открытом виде.

                    Что гораздо более ценно в HIBP — это мониторинг email, на который можно подписаться — как для отдельных адресов, так и на целые домены, но оффлайн, по понятным причинам, это не очень практично делать. Даже если этот email утечет с самого HIBP, это ничего не даст — без знания собственно сервисов где он используется и пароля (если он очень непрост).

                    В идеале, разумеется, лучше иметь уникальную пару email/пароль на каждый сервис (как минимум уникальный пароль), что сильно уменьшает вероятность глобальных проблем в случае утечки.

                    Уникальные email полезны ещё и тем что позволяют шустренько выяснить нет ли утечки задолго до того как её обнаружат — по начавшемуся спаму или фишингу.
                      0

                      А чем вариант со скачиванием БД лучше чем вариант без скачивания?
                      Вот есть плагин для KeePass который использует базу Have I Been Pwned безопасным способом: https://github.com/andrew-schofield/keepass2-haveibeenpwned
                      В результате не нужно ничего качать, а значит мотивация провести проверку не убивается тем, что нужно качать огромный архив, и ещё и распаковывать его.

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

                      Самое читаемое