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

Проверка утечки пароля задаёт базе данных вопрос, на который не ответит ни один чат-бот: встречался ли этот пароль в известной утечке данных? Введите пароль, и эта страница вычислит его хэш в вашем браузере, отправит только первые 5 символов хэша в сервис Pwned Passwords от Have I Been Pwned и скажет, сколько раз пароль встречался в реальных утечках, — сам пароль никогда не покидает эту страницу. Можно также проверить до 50 паролей за раз или загрузить файл с SHA-1-хэшами. Сопутствующее руководство есть ли ваш пароль в утечке данных объясняет, что означает это число и что делать дальше; чтобы начать заново, воспользуйтесь Генератором паролей, а чтобы найти учётные данные, раскрытые на живом сайте, — Сканером утёкших секретов.

Последнее обновление:

Ваш пароль никогда не покидает эту страницу

Эта страница вычисляет хэш вашего пароля в вашем браузере с помощью SHA-1 и отправляет в Have I Been Pwned только первые 5 символов хэша. Сам пароль — и даже его полный хэш — никогда не покидает ваше устройство, никогда не сохраняется и никогда не записывается в журнал. Сервис отвечает всеми суффиксами хэшей, разделяющими эти 5 символов, а сопоставление выполняется здесь, на вашем устройстве. О том, как работает эта модель, читайте на haveibeenpwned.com/Passwords.

Проверить один пароль

Проверить сразу много

Дубликаты проверяются один раз. В результатах показан только номер (#1, #2…) — никогда сам пароль. Экспорт CSV содержит только метки и счётчики.

Честные ограничения

Здесь проверяется только корпус утечек Pwned Passwords — пароли, собранные из сотен известных утечек данных. “Не найден” означает “не встречался в известных утечках”, а не “безопасен”.

Поиск утечек по электронной почте здесь не предлагается: API утечек по почте от Have I Been Pwned — платная подписка, поэтому эта страница не обещает его бесплатно.

Данные об утечках: Have I Been Pwned — Pwned Passwords (haveibeenpwned.com/Passwords).

Что такое корпус утечек — и что означает число

Корпус утечек — это собрание паролей, добытых из реальных утечек данных: когда сервис взламывают и его база паролей утекает, содержащиеся в ней пароли — обычно хранящиеся в виде хэшей — собираются, очищаются от дублей и индексируются, чтобы любой мог спросить, есть ли среди них конкретный пароль. Корпус Pwned Passwords от Have I Been Pwned содержит более миллиарда таких паролей из сотен утечек и продолжает расти по мере появления новых утечек. Этот масштаб — весь смысл проверки: пароль, который вы придумали за пять секунд, с большой вероятностью уже придумали в точно такой же форме тысячи других людей, — и если он хоть раз был в утёкшей базе, у злоумышленников он уже есть в списке, готовый к перебору на каждой странице входа, до которой они могут добраться.

Проверка работает, ни разу не раскрывая пароль, благодаря приёму под названием k-анонимность. Ваш пароль хэшируется в браузере с помощью SHA-1, что даёт 40-символьный отпечаток; сервису отправляются только первые 5 символов этого отпечатка. Сервис возвращает все суффиксы отпечатков, разделяющие эти 5 символов, — обычно около восьмисот, — а ваш браузер ищет собственный суффикс в этом списке локально. Пяти символов достаточно, чтобы спрятать один пароль среди сотен похожих, и при этом их так мало, что сервис никогда не узнает, о каком пароле вы спрашивали. Сам пароль никогда не пересекает сеть, никогда не попадает в журнал сервера и никогда не появляется в URL.

Найден, не найден — и что делать дальше

Число больше нуля означает, что пароль встречался в утечках столько раз. Число в миллионы — “password” встречался более пятидесяти миллионов раз — означает, что это одна из первых догадок в каждой атаке credential stuffing, и его следует сменить везде, где он используется, начиная с почты и банка. Маленькое число — тоже не оправдание: даже одно появление означает, что пароль уже есть в словаре злоумышленника, и, скорее всего, это ещё и признак того, что пароль следует угадываемому шаблону — имя плюс год, проход по клавиатуре, обычная фраза с заменённой цифрой. Решение в обоих случаях одно: замените его уникальным паролем, который вы больше нигде не использовали, сгенерированным Генератором паролей и хранящимся в менеджере паролей, а не в голове или в файле заметок.

Ноль — хорошая новость с жёстким ограничением: пароль не встречался в утечках, которые знает этот корпус. Это ничего не говорит о том, надёжен ли пароль, легко ли его угадать и не сидит ли он уже в утечке, которая ещё не всплыла. Короткий знакомый пароль может отсутствовать в корпусе и всё равно пасть под атакой перебора за считаные минуты, а пароль, повторно используемый на десяти сайтах, в одной утечке от потери всех десяти. Воспринимайте “не найден” как разрешение оставить пароль, только если он к тому же длинный, случайный и используется ровно в одном месте. Если он не проходит хотя бы один из этих трёх тестов, всё равно смените его — проверка говорит о том, был ли пароль раскрыт, а не о его стойкости.

Никогда не вставляйте пароль в чат-бот или ИИ-ассистент, чтобы спросить, безопасен ли он. Чат сохраняет стенограмму: ваш пароль окажется на чужих серверах, будет использован для обучения или донастройки моделей и, возможно, процитирован в последующем ответе — прямо противоположно тому, для чего нужна проверка утечек. То же правило применимо к любому сайту, который просит ввести пароль в его форму и обещает его оценить: если страница не хэширует локально и не показывает механизм, как эта, считайте, что пароль отправляется и сохраняется. Проверка утечек стоит того именно потому, что её можно сделать, никому не передавая секрет, и это свойство стоит беречь, даже когда вопрос кажется маленьким.

Проверка простыми словами

K-анонимностьТолько первые 5 символов хэша пароля покидают браузер. Сервис не может узнать, о каком из сотен паролей с этим префиксом вы спрашивали.
SHA-1-хэш40-символьный отпечаток пароля, вычисляемый в вашем браузере. Один и тот же пароль всегда даёт один и тот же отпечаток, а отпечаток нельзя обратить обратно в пароль.
Корпус Pwned PasswordsБолее миллиарда паролей, собранных из сотен известных утечек данных, поддерживается Have I Been Pwned и обновляется по мере появления новых утечек.
Range APIПубличный, бесплатный, не требующий ключа endpoint HIBP, который вызывает эта страница: по 5-символьному префиксу он возвращает каждый совпадающий суффикс с его счётчиком утечек, по одной строке SUFFIX:count.
Счётчик утечекСколько раз пароль встречался в корпусе. Счётчик 1 уже означает, что он есть в словаре злоумышленника; миллионы означают, что он среди первых проверяемых догадок.
Не найденСуффикс хэша пароля отсутствует в возвращённом диапазоне — в известных утечках он не встречался. Это не вердикт о том, что пароль надёжен или безопасен.
Массовая вставкаДо 50 паролей, по одному в строке. Дубликаты проверяются один раз, пароли с общим 5-символьным префиксом делят один запрос, а в результатах показаны только номера — никогда сами пароли.
Файл хэшейДо 500 SHA-1-хэшей, по одному в строке, для проверки паролей, которые вы вообще не хотите вводить. Недопустимые строки перечисляются как пропущенные; в результатах показан усечённый хэш.
Экспорт CSVМассовые результаты в виде таблицы: только замаскированная метка и счётчик утечек. Ни один пароль открытым текстом и ни один полный хэш никогда не попадёт в скачанный файл.
Утечки по почтеЗдесь не предлагаются. Чтобы узнать, встречается ли адрес почты в утечках, нужен платный почтовый API от HIBP, поэтому эта страница не обещает бесплатный поиск по почте.

Частые вопросы

Отправляется ли мой пароль в Have I Been Pwned?

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

Что означает “найден 52 миллиона раз”?

Это означает, что именно этот пароль встречался в утёкших базах данных 52 миллиона раз, во множестве разных утечек и учётных записей. Это одна из первых догадок в каждой атаке credential stuffing, где украденные пароли автоматически перебираются на страницах входа. Смените его везде, где он используется, начиная с почты и банка, и никогда больше не используйте его повторно.

Мой пароль не найден. Теперь он безопасен?

Не обязательно. “Не найден” означает лишь то, что он не встречался в утечках, которые знает этот корпус. Короткий или предсказуемый пароль может отсутствовать в корпусе и всё равно пасть под перебором за считаные минуты, а пароль, повторно используемый на нескольких сайтах, в одной утечке от потери их всех. Оставляйте его, только если он длинный, случайный и используется ровно в одном месте.

Почему здесь нельзя проверить адрес электронной почты?

Проверка того, встречается ли адрес почты в утечках, использует другой сервис HIBP — API утечек по почте, — который является платной подпиской. Эта страница использует только бесплатный Range API от Pwned Passwords, который проверяет пароли, а не адреса почты, и обещать поиск по почте бесплатно было бы нечестно.

Мой пароль найден в утечке. Что делать сначала?

Смените его везде, где вы его используете, начиная с учётных записей, которые защищают остальные, — сначала почту, затем банк и пути восстановления пароля, — и никогда больше не используйте старый пароль нигде. Сгенерируйте свежую уникальную замену с помощью Генератора паролей и сохраните её в менеджере паролей. Если один и тот же пароль защищал несколько учётных записей, считайте их все скомпрометированными, потому что злоумышленники пробуют утёкший пароль на каждом сервисе, до которого могут добраться.