Комментарии 22
Всегда удивляло желание людей хранить пароли в платных публичных облаках, когда существуют бесплатные более надежные локальные решения. Утечка баз и кода любого облака это только вопрос времени.
Утечка баз и кода — не утечка паролей, потому что пароли зашифрованы end2end.
Надежные локальные решения, конечно же есть, вот только когда надо синхронизировать несколько устройств, тогда уже начинается веселье и без отдельного сервера/хранилища, доступного 24/7 не обойтись. Уверен, что далеко не все пользователи менеджеров паролей могут поднять свой сервер хотя бы с self-hosted Bitwarden, не говоря уже про keepass.
Конечно, в случае локального решения тоже никто от 0-day не застрахован, но контроля над ситуацией всё равно больше. Что касается синхронизации, то лично я таскаю базу KeePass на флешке и копия хранится на домашнем ПК. У KeePass есть функция для синхронизации открытой базы с указанным файлом базы, чего мне достаточно. Со смартфона я использую базу KeePass в readonly-режиме и обновляю по необходимости, если вносил изменения в базу на флешке. Может быть это не настолько удобно как с облаком, но мне особых хлопот не доставляет.
Для этого есть e2e шифрование базы, код в облаке не имеет доступа к паролям.
Вот наличие e2e шифрования как раз и проверят в случае утечки кода.
А как в действительности, Вы можете узнать только после того, как проведёте аудит этого кода и лично его развернёте в облако. И даже в этом случае, нет гарантий, что в будущем это не поменяется.
Также стоит отметить, что не сказано какие именно части исходного кода были украдены и в каком объёме. Это могли быть и исходники клиентского кода LastPass, уязвимости в котором вполне могут позволить осуществить кражу паролей.
Если e2e в клиентах реализован нормально, то у облака гарантированно не будет даже теоретической возможности получить доступ к паролям (кроме полного перебора за немыслимое число лет или утечки по глупости пользователя)
И поэтому клиент обязан быть опенсорсным — чтобы сообщество могло проверить корректность реализации e2e. А вот облаку быть опенсорсным необязательно
Возможно, вы не пытались работать с KeePass.
KeeWeb отлично умеет в синхронизацию kdbx-баз через "диски" (dropbox, gdrive, davfs, onedrive). До этого, пока сидел в нативном KeePass, использовал штатную синхронизацию. На андроиде только Keepass2Android. Всё в связке работает безупречно, настройка -- дело пяти минут и никакого геморроя.
Как другой/дополнительный вариант синхронизации -- настроить Syncthing'и на каждый девайс. Возни с ним не больше.
И всё это -- чистый полнофункциональный FOSS.
Если человек пришёл к заботе о безопасности и актуальности своих паролей, значит он уже имеет достаточно скиллов, чтобы не щёлкать клювом и доверять их кому-то ещё.
"Пароли на улице я раздавать? Не-не, вы что, я что, дура(к)? О, глянь-ка, прекрасная компания с подмоченной репутацией, которая всё ещё что-то обещает про безопасность -- ни слова больше, забирайте всё, где у вас тут касса?" Пфф.
dropbox, gdrive, onedrive — это опять чьи-то чужие облака, которые тоже могут сломать, принципиальных отличий от облака того же lastpass нет, разве что в специфике.
davfs может быть на своём сервере, но нужен сервер
syncthing — да, но это опять же надо иметь компьютер/сервер, который 24/7 онлайн.
Конечно. Однако суть не в том, что это опять какие-то чужие облака. Принципиально здесь следующее:
это файловые хранилища, эта концепция знакома всем и их использование опционально;
база остаётся у пользователя на 1+ устройстве, под его непосредственным контролем и его ответственностью.
Про davfs -- я чуть промахнулся по терминологии: davfs2 это дополнительный открытый инструмент для работы по открытому протоколу webdav. Но моя опечатка не меняет сути. По webdav можно работать и с другими файловыми помойками, в т.ч. в локальной сети. Что тоже опционально.
А девайс с syncthing не обязан быть онлайн 24/7. Однако у него иной подход к синхронизации файлов, он явно не будет перебирать изменения по паролям, так что вариант допустим с погрешностью.
Я всё же не понимаю принципиальной разницы от того, что это файловое хранилище. И то и то облако, и то и то хранит бинарный блоб зашифрованной базы с паролями. Вероятность утечки этого зашифрованного файла есть и там и там. Не знаю как там у lastpass, но у менеджера, которым я пользуюсь, база доступна локально без интернета на всех устройствах (и её можно забекапить дополнительно при необходимости). Это про второй пункт.
Про webdav (davfs, davfs2, независимо от реализации) я выше уже написал, что ему тоже какое-то хранилище нужно: это либо публичное облако, либо свой сервер, который нужно иметь и администрировать.
Разница в том что keepass можно зашифровать стойким файлом, который копировать с устройства на устройство ручками через флешку / провод, тогда базу можно хоть на публичный гитхаб заливать, когда облачные хранилища… Хотя 1password делает что-то похожее, на самом деле, так что преимущество разве что в том что нет риска неожиданной пропажи всего по велению правой пятки сервиса. Не уверен про lastpass
Разумеется, любая синхронизация опциональна и лишь обсепечивает удобство. За удобство всегда надо чем-то платить, не только касаемо хранения паролей. Вопрос лишь в том, чем юзер готов платить и жертвовать ради определённой степени (дис)комфорта и на ком будет ответственность за последствия.
В таком интимном вопросе надо проявлять максимум бдительности на той грани удобства, которое мы для себя выбрали. Хранение личных паролей в одной точке отказа и/или с помощью проприетарного ПО -- очевидно же, не является хорошим выбором с точки зрения безопасности, зато отличный выбор ради удобства пользования. И наоборот: FOSS-решения могут многих не удовлетворять по удобству, зато доверие к ним выше и (опционально) более развита экосистема с плагинами и вот этим всем.
KeeWeb отлично умеет в синхронизацию kdbx-баз через "диски" (dropbox, gdrive, davfs, onedrive). До этого, пока сидел в нативном KeePass, использовал штатную синхронизацию. На андроиде только Keepass2Android. Всё в связке работает безупречно, настройка -- дело пяти минут и никакого геморроя.
А как на счет встроенной возможности огнелиса?
Это всё работает отлично, пока вам не нужно расшарить группу секретов на определённую команду, восстановить доступ члена команды который протерял свой суперсекретный пароль и т.п. А если нужны эти или другие энтерпрайзные возможности - тогда или чьё-то облачное менеджед решение, или самому хостить Hashicorp Vault (и он же не FOSS?) Как сделать такое энтерпрайзное хранилище чисто на FOSS решениях на своей инфраструктуре - я не знаю.
секреты иногда надо шарить между определенными группами людей
Видимо из-за этого пару дней назад гугл разлогинил меня на всех устройствах и заставил пароль менять, хотя я никогда его пароль нигде и не хранил.
По хорошему киент должен и так быть с открытым кодом так как там не должно быть что скрывать или любые бекдоры. А если увели код и вызывает тревогу у создателя, то стоит задуматься)
LastPass заявил о взломе и краже исходного кода