Проверка пароля на утечку

Узнайте, не попал ли ваш пароль в базы утечек данных. Проверка идёт по базе Have I Been Pwned, где собрано более 800 миллионов скомпрометированных паролей. Используется модель k-anonymity — сам пароль не передаётся.

На сервер уходят только первые 5 символов SHA-1-хеша пароля. Сам пароль не передаётся и не покидает ваш браузер.

Что такое утечки данных и почему они опасны

Каждый год хакеры взламывают десятки крупных сервисов и выкачивают базы учётных записей. LinkedIn, Adobe, Dropbox, Yahoo, ВКонтакте, сотни форумов и интернет-магазинов — миллиарды пар «логин-пароль» оказались в открытом доступе. Эти базы продаются и свободно распространяются.

Главная угроза называется credential stuffing: злоумышленник берёт пару email-пароль из одной утечки и автоматически пробует её на сотнях других сайтов. Если вы использовали один пароль в нескольких местах, взлом одного сервиса открывает доступ ко всем остальным. Поэтому «утёкший» пароль опасен, даже если он длинный и сложный — его сложность больше не имеет значения, он уже известен атакующим как готовая строка.

Что такое Have I Been Pwned

Have I Been Pwned (HIBP) — проект исследователя безопасности Троя Ханта. Он агрегирует данные из известных утечек и предоставляет сервис проверки. База Pwned Passwords содержит более 800 миллионов уникальных паролей, засветившихся в реальных утечках, вместе со счётчиком — сколько раз каждый пароль встречался. Это де-факто стандарт индустрии: проверку HIBP встраивают менеджеры паролей, формы регистрации крупных сервисов и корпоративные системы.

Как работает k-anonymity

Проверка пароля по чужой базе сама по себе звучит как риск — но модель k-anonymity делает её безопасной. Процесс такой:

  • Ваш пароль хешируется по алгоритму SHA-1 прямо в браузере.
  • На сервер HIBP отправляются только первые 5 символов этого хеша.
  • Сервер возвращает все известные хеши, начинающиеся с этих 5 символов — это сотни вариантов.
  • Сравнение оставшейся части хеша с этим списком происходит локально, в вашем браузере.

В результате сервер физически не знает, какой именно пароль вы проверяли — он видел только пятисимвольный префикс, под который подходят тысячи разных паролей. Ни сам пароль, ни его полный хеш никогда не покидают ваше устройство.

Почему даже сложный пароль может быть в утечке

Случайный 16-символьный пароль теоретически невозможно перебрать. Но если вы создали его, использовали на каком-то сайте, а этот сайт потом взломали — пароль попал в утечку как готовое значение. Перебор больше не нужен. Поэтому проверка на утечку дополняет проверку надёжности: надёжность отвечает на вопрос «сложно ли подобрать», а эта проверка — «не подобран ли уже».

Что делать, если пароль найден

Если проверка показала, что пароль скомпрометирован — действуйте сразу. Смените его на всех сервисах, где он использовался. Сгенерируйте новый уникальный пароль для каждого аккаунта. Включите двухфакторную аутентификацию там, где она доступна. И никогда больше не используйте найденный пароль — он останется в базах злоумышленников навсегда. Чтобы хранить уникальные пароли для каждого сервиса, нужен менеджер паролей: как выбрать менеджер паролей.

Почему генератор паролей PassMakers безопасен для использования?

Никаких серверов, баз и логов. Все вычисления — в вашем браузере через Web Crypto API, проверка на утечку — по модели k-anonymity.

Узнать больше