
Как хранить пароли
Я написал несколько постов о паролях, учебный курс по паролям для Start X. Я, как и все нормальные интернет-юзеры, ввожу пароли для доступа к различным ресурсам вручную, копирую их из менеджера паролей или использую сохранённые в браузере. За несколько десятилетий у меня сложился определённый подход к тому, как хранить и использовать пароли. В целом он себя оправдывает, поскольку я пока ни разу не столкнулся с последствиями утечек пользовательских аккаунтов с различных ресурсов. Возможно, просто повезло. Или даже (страшно подумать!) мой пароль украли и используют злые хакеры, а я ни сном ни духом. Но — повторюсь — никаких связанных с паролями инцидентов у меня пока не было.
В этом посте поделюсь своим опытом работы с паролями.
Где хранить пароли
У меня сложились следующие способы:
- память (то есть пароли нигде не записаны, и их больше одного);
- секретный блокнот;
- менеджер паролей;
- браузер.
Давайте разберёмся с каждым из способов.
Пароли в моей голове
Есть особо важные пароли, которые я помню много лет, и также много лет не меняю их. Они реально сложные и важные.
Один из этих паролей «запирает» базу менеджера паролей. Он состоит из 32 символов, у него высокая энтропия, так что подобрать его в лоб вряд ли получится. Другой пароль, немного короче, но тоже довольно сложный, требуется для входа в хранилище паролей Яндекс Браузера. Третий пароль нужен для входа в мой секретный блокнот для самых личных заметок — SecNotes. Я написал это приложение сам, и точно знаю, что написанное там не смогут прочитать посторонние. Есть и ещё пароли, которые я храню в голове, но они используются эпизодически. И я пока их помню.
Не буду рассказывать, как устроены эти длинные пароли, потому что мой подход к запоминанию длинных последовательностей символов может сильно отличаться от того, который работает у вас. Отмечу лишь, что в юности всерьёз увлекался всякими методиками развития памяти, так что запомнить номер карты (16 символов) или номер банковского счёта (20 символов) для меня тривиальная задача.
Если не надеетесь на свою память, стоит ограничиться одним-двумя паролями, которые вы точно не забудете. И пусть это не будет что-то связанное с вами (имя дочери, день рождения бабушки или что-то типа) или чемпионы по распространённости — «суперпароли» 12345678 и password/p@ssw0rd.
Не торопитесь устанавливать длинный и сложный пароль на вход в менеджер паролей, пока не убедитесь, что помните его в любом состоянии, чтобы не оказаться в дурацкой ситуации, когда все пароли заперты настолько надёжно, что даже у вас нет к ним доступа.
Чтобы такого не произошло, можно воспользоваться вторым способом хранения паролей — секретным блокнотом.
Секретный блокнот
Помните анекдот про прапора, который рекомендовал всем, у кого в голове ничего не держится, завести себе записную книжку и всё в неё записывать. А лучше — две, как у него.
Вот это ровно про то же самое. Самая острая память может оказаться тупее самого тупого карандаша и листка бумаги. Считаете, что это небезопасно? Это смотря как записывать пароли. Ведь можно же их посолить и поперчить.
Мой первый блокнот с паролями появился, когда про менеджеры паролей я даже не слышал. Тогда и интернета не было, и на компах был сначала MS-DOS, а потом Windows 3.1, 3.11, Windows 95… В общем, тогда я начал записывать пароли в небольшую записную книжку формата а5 с листами в мелкую клетку. Там же были серийные номера от дистрибутивов разного софта, который в те времена не приходилось активировать, потому что интернета на компах не было.
Но вместе с записью паролей появилась тревога: а вдруг кто-то посторонний возьмёт мой блокнот и воспользуется паролями? Или я его потеряю.
И после этого я стал записывать пароли с солью. То есть добавлял в него различные символы по определённым правилам. При вводе пароля, разумеется, эти символы не вводились. А потом для особо ответственных паролей я поддался на науськивания личной паранойи, и стал не только солить, но и перчить пароли — заменять некоторые символы.
Тут, как и в случае с мастер-паролем в памяти, главное — не переборщить со специями: не установить настолько сложные правила добавления и/или замены символов, чтобы запутаться в них.
Но чем больше паролей у вас становится, тем сложнее пользоваться блокнотом. Его же приходится где-то хранить, так, чтобы он не попадался на глаза посторонним. То есть чтобы ввести очередной пароль, нужно достать блокнот из сейфа (условно), найти нужный пароль, ввести, убрать блокнот в сейф.
Для того, чтобы сделать работу с множеством паролей удобнее, как раз и придумали менеджеры паролей.
Менеджеры паролей
Не буду перечислять все варианты менеджеров, существующие в природе. Да, есть облачные, которые синхронизируют пароли между устройствами. Я даже пользовался таким (LastPass), и это было удобно, пока не наступили санкции. А потом LastPass пару раз взломали. И хотя компания настаивала, что утечек не было, доверия не осталось. После этого я поставил себе KeePassXC — open-source менеджер паролей без всякой синхронизации. База с паролями — обычный файл, зашифрованный на мастер-пароле.
KeePassXC умеет интегрироваться с браузерами и подставлять пароли, но я этим не пользуюсь. Честно говоря, просто лень настраивать. Я пользуюсь кучей браузеров: Brave, Safari, Arc, Yandex, Mullvad, Firefox. Так что мне проще переключиться на KeePassXC, выбрать нужный ресурс, нажать Cmd-C, переключиться на браузер и вставить пароль.
Ну и ещё очень полезная штука в KeePassXC — возможность генерировать пароли заданной сложности с заданным набором символов. Или парольные фразы. Тоже очень удобно. Регистрируешься на новом ресурсе — создаёшь новую запись в KeePassXC, указываешь там логин и запускаешь генератор паролей. Делаешь пароль символов на 25, копируешь его на сайт, где регистрируешься, и сохраняешь запись в менеджере паролей. Готово. Уже не забудешь.
С KeePassXC и другими офлайн-менеджерами есть важный нюанс: если вы потеряете базу с паролями, то вам её никто не вернёт. Так что делайте резервные копии по правилу 3-2-1 и вот это вот всё.
При всём удобстве KeePassXC всё-таки есть много случаев, когда хранение паролей в браузере заметно приятнее. Но и тут есть нюансы.
Пароли в браузере
Я перестал сохранять пароли в Chrome, когда увидел, насколько легко получить к ним доступ. А потом и использовать этот браузер перестал. Для работы с ру-ресурсами я сейчас использую Яндекс Браузер. Почему — напишу как-нибудь в другой раз, чтобы не отклоняться в сторону. А в контексте этого поста важно то, что в Яндексе доступ к сохранённым паролям невозможно получить, не зная мастер-пароля. Того самого, который я храню в голове. Это снимает опасения, что кто-то посторонний или какой-то случайно прорвавшийся на мой комп вредонос смогут слить все мои пароли, сохранённые в браузере.
Для зарубежных сайтов я сохраняю пароли в Safari. Этот браузер сохраняет пароли в Связке ключей на MacOS, так что добраться до них у посторонних не получится.
Но по-настоящему важные пароли я всё-таки в браузерах стараюсь не сохранять. А если делаю это, то обязательно включаю двухфакторную аутентификацию. Ну а если ресурс позволяет, то переключаюсь на беспарольную аутентификацию — passkey.
Двухфакторка — обязательна!
Все ваши усилия по придумыванию, запоминанию и сохранению сложных паролей могут обесцениться, если вы окажетесь жертвой фишинга, утечки или шпионского ПО. В этом случае наличие второго фактора спасёт вас от взлома.
Практически все ресурсы от госуслуг и почтовых провайдеров до соцсетей предлагают включить 2FA. Правда, не все используют безопасные способы. Например, известный провайдер услуг reg.ru даёт возможность получать код 2FA только через СМС. Никаких вариантов с приложениями-аутентификаторами или passkey не предлагается. Меня это безумно расстраивает, откровенно говоря. Особенно на фоне чехарды с отключением мобильной связи по известным причинам. А иногда СМС просто не доходят. И что тогда?
В общем, включайте 2FA, лучше через TOTP (Яндекс ID, Aegis, Google Authenticator и т.п.).
Но ещё лучше — passkey. Если вы заходите в онлайн-банкинг T-Bank в браузере, он предлагает вам добавить вход по биометрии или пин-коду. Вот это как раз тот самый passkey. И воспользоваться этим пином с другого устройства или даже браузера не получится. Наверное, про это тоже стоит отдельно написать, тем более, что я себе аппаратный ключ купил для этого — Рутокен MFA.
Подведу итог
Лучший способ хранения паролей — это вообще отказаться от их использования. Но пока все сайты сподобятся внедрить эту технологию, нам остаётся выискивать оптимальные способы сохранить пароли так, чтобы их не украли. Я для себя выбрал четыре способа хранения паролей: память → блокнот (с солью и перцем) → менеджер паролей (KeePassXC/KeePassDX на мобиле) → пароли в браузере.
Но при этом у меня обязательно используется двухфакторка, а если ресурс позволяет, то я включаю passkey и забываю о паролях.
Что будет удобно вам, можете решить только вы. Если есть вопросы — пишите письма или комменты. Чем смогу — помогу.