Проверить пароль на утечку можно за секунду, и сам пароль при этом никуда не отправится.
Звучит как противоречие, но механика простая: от пароля считается хеш (короткий отпечаток строки, из которого её не восстановить), наружу уходят только первые пять символов этого отпечатка, а сравнение с базой утечек идёт уже у вас в браузере. Ниже по порядку: зачем это вообще нужно, как устроена проверка, что значит результат и что делать, если пароль нашёлся.
КАК ИДЁТ ПРОВЕРКА
ваш пароль → хеш SHA-1
└─ наружу: 5 первых символов
сервер → все хвосты с таким началом
└─ их сотни, сравнение у вас
[!] сам пароль не уходит никуда
Зачем вообще проверять
В открытом доступе лежат миллиарды паролей из старых взломов сайтов. Не ваших сайтов, а вообще любых: форума, где вы регистрировались десять лет назад, магазина, доставки. Когда такую базу сливают, пароли из неё попадают в словари для перебора. И если ваш пароль в таком словаре, подбор занимает секунды: программа просто идёт по списку.
Опасно тут не то, что взломали тот старый форум. Опасно то, что тот же пароль стоит ещё в пяти местах, включая почту. А почта это ключ ко всему остальному: через неё восстанавливают доступ к банку, соцсетям и госуслугам. Поэтому вопрос не «взломали ли меня», а «есть ли мой пароль в списке, который перебирают первым».
Как устроена проверка, чтобы пароль не утёк при проверке
Отправлять пароль на чужой сайт, чтобы узнать, не утёк ли он, было бы глупо. Поэтому проверка сделана иначе.
- Ваш браузер считает от пароля хеш SHA-1. Это односторонняя операция: из хеша пароль не восстановить.
- Наружу уходят только первые пять символов этого хеша. У миллионов разных паролей хеш начинается с тех же пяти символов, поэтому по запросу невозможно понять, что именно вы проверяли.
- Сервер базы возвращает все хвосты хешей, которые начинаются с этих пяти символов. Обычно это несколько сотен строк.
- Браузер ищет среди них хвост вашего хеша. Совпал, значит пароль в базе. Не совпал, значит в опубликованных утечках его нет.
Метод называется k-анонимность (вы прячетесь в толпе из сотен похожих запросов), и это стандартный способ работы с базой Have I Been Pwned, куда за годы собрали пароли из известных взломов. База хранит только хеши, без привязки к почте и имени.
Проверить это можно не на слово. Откройте проверку пароля на утечки, инструменты разработчика браузера, вкладку «Сеть», и введите пароль. Единственный запрос уйдёт на api.pwnedpasswords.com с пятью символами в адресе. Пароля в нём не будет.
Что значит результат
«Не найден». В опубликованных утечках этого пароля нет. Это не гарантия, что его нигде не украли: база знает только те взломы, о которых сообщили. Свежая утечка, которую ещё не опубликовали, в неё не попала. Но «не найден» плюс длинный уникальный пароль это хорошая позиция.
«Найден 12 000 раз». Число это сколько записей с таким паролем нашлось во всех утечках. «Найден 12 000 раз» не значит, что взломали именно вас. Это значит, что тот же пароль придумали ещё двенадцать тысяч человек, и он давно лежит в первых строчках словарей для перебора. Такой пароль подберут за секунды на любом сайте, где он стоит, независимо от того, откуда он утёк.
ЧТО ЗНАЧИТ ЧИСЛО
не найден нет в известных утечках
найден 1–10 раз уже в словарях, менять
найден тысячи подберут за секунды
└─ число это не «сколько раз
взломали вас», а «сколько
людей его придумали»
Нашёлся: что менять и в каком порядке
Порядок важнее скорости. Менять всё подряд в панике не надо, надо закрыть самое дорогое первым.
- Почта. Через неё восстанавливают всё остальное. Новый пароль, длинный и не похожий на старый.
- Банк и платёжные сервисы. Там, где лежат деньги.
- Госуслуги и всё, где есть паспортные данные.
- Сайты, где стоял тот же пароль. Вот тут и всплывает главная проблема: вспомнить, где ещё он стоял, почти невозможно. Поэтому один пароль на несколько сайтов и опасен: утечка одного отпирает все.
- Двухфакторная аутентификация на почте и банке. Даже если пароль утечёт снова, без второго фактора он бесполезен. Какой способ выбрать, разобрано в статье двухфакторная аутентификация: SMS, приложение или ключ.
Новый пароль возьмите не из головы: то, что человек придумывает сам, почти всегда уже есть в словарях. Генератор паролей сделает случайный и длинный, а запоминать его не нужно, для этого есть менеджер.
Как не проверять это каждый месяц
Проверка на утечки лечит симптом. Причина в том, что пароли повторяются и придумываются вручную. Если у каждого сайта свой случайный пароль, утечка любого из них бьёт только по одному аккаунту, и проверять становится незачем.
Это ровно то, что делает менеджер паролей: генерирует, хранит, подставляет и, что важнее всего, не подставляет на поддельном сайте с похожим адресом. Как выбрать между встроенным в браузер, облачным и локальным, в статье менеджер паролей: зачем и как выбрать.
Скажу прямо, как делал бы сам: проверил бы на утечку три пароля, которые стоят на почте, банке и госуслугах. Любой из них нашёлся, меняю сегодня. Остальные не проверяю по одному, а перевожу в менеджер за один вечер, чтобы к этому вопросу не возвращаться.
ЧТО ДЕЛАТЬ ПОСЛЕ ПРОВЕРКИ
[ ] почта: новый пароль
[ ] банк: новый пароль
[ ] двухфакторка на обоих
[ ] остальное в менеджер
└─ один вечер, потом
проверять не придётся
Что эта проверка не делает
Она не проверяет почту на утечки. Проверка по адресу почты требует отправить сам адрес, и это уже не анонимно. Такую проверку делают на сайте haveibeenpwned.com, там она устроена отдельно.
Она не видит утечек, о которых ещё не сообщили. И она ничего не знает о том, стоит ли этот пароль у вас где-то ещё, это знаете только вы.
И последнее: проверка пароля никак не связана с VPN. Туннель прячет ваш адрес от сети, а пароль утекает не из сети, а из базы сайта, где вы его когда-то ввели. Это разные угрозы и разные инструменты.
Если пароль нашёлся, а с чего начать непонятно, отдайте ситуацию нейросети.
Помоги разобраться, что делать после проверки
пароля на утечку.
Результат: (не найден / найден N раз).
Где стоит этот пароль: (почта / банк / соцсети /
не помню где ещё).
Двухфакторка включена: (да / нет / не знаю).
Менеджер паролей: (есть / нет).
Скажи, что менять первым и в каком порядке, и
как найти сайты, где мог стоять тот же пароль.
Не советуй «сменить все пароли», дай порядок.
Коротко
Проверка на утечку безопасна: наружу уходят пять символов хеша, сам пароль остаётся у вас. «Найден N раз» означает, что пароль уже в словарях для перебора, и его подберут за секунды где угодно. Нашёлся: почта, банк, госуслуги, двухфакторка, в этом порядке. А чтобы не проверять снова, у каждого сайта должен быть свой случайный пароль из менеджера.