Недавняя утечка данных в LastPass вызвала рост негодования в индустрии. Впоследствии Norton Password Manager подвергся атаке с подменой паролей, а пользователи Bitwarden и 1Password стали целью фишинговой кампании.
Многие пользователи беспокоятся по поводу возможного взлома своего хранилища паролей. По идее, если используется система шифрования с нулевым разглашением, то данные должны быть в безопасности. Однако, в реальности все не так просто, потому что есть множество факторов, влияющих на результат. Одним их таких факторов является криптографическая система, используемая службой, в частности ее ключевой компонент — KDF.
Что такое KDF?
KDF (Key Derivation Function) или функция формирования ключа — это криптографический алгоритм, который извлекает секретные ключи из таких значений, как пароли, мастер-ключи и т. д. Именно так менеджеры паролей создают ключ шифрования из вашего мастер-пароля, чтобы защитить хранилище паролей.
У этой функции есть и другие применения. Возможно, вы знакомы с криптографическими терминами хэширование, соль, перец и т. д. Большинство сайтов не просто хранят пароли (хэшированное значение) по их номинальному значению, а добавляют к паролям случайную строку, чтобы защитить их от атак «перебора по словарю». Затем эти данные хэшируются и сохраняются, поэтому, даже если хакеру удастся получить доступ к паролям, он не сможет использовать данные, потому что в процессе добавления соли были изменены хэши исходного пароля.
KDF усиливает защиту конфиденциальных данных в зависимости от установленного количества итераций или раундов. Функция растягивает ваш ключ, тем самым замедляя процесс подбора пароля, делая его более дорогим и трудным для вычисления. Проще говоря, чем больше количество итераций, тем сложнее хакерам взломать ваш ключ дешифрования, чтобы попасть в ваше хранилище паролей. Обычно для KDF используется алгоритм PBKDF2, хотя есть и другие, такие как Argon2, Scrypt, Bcrypt.
Старший инженер по безопасности в Yahoo Джереми Госни (Jeremi Gosney) утверждал, что надежный уникальный мастер-пароль защитит пользователей лучше, чем большое количество итераций KDF. Однако, он также отмечал, что итерации KDF помогают защитить пользователей, которые используют слабый и не очень надежный пароль.
Возвращаясь к инциденту с LastPass, по умолчанию для новых пользователей использовалось 100 тысяч итераций KDF, но для многих старых учетных записей использовалось всего 5000 итераций. Эксперты по безопасности раскритиковали LastPass и заявили, что даже 100 000 итераций недостаточно. Это была не единственная причина утечки данных LastPass: у компании было много проблем, связанных с безопасностью собственных систем, с отсутствием шифрования пользовательских данных, таких как URL-адреса и т. д. Из недавних инцидентов мы уяснили, что должны соблюдать особую осторожность при защите своих данных.
Bitwarden увеличил количество итераций на стороне сервера до 600 тысяч
Bitwarden выполняет 2 вида итераций: итерации на стороне клиента (на вашем ПК) и итерации на стороне сервера. В официальном документе, опубликованном компанией, указано, что Bitwarden выполняет 200 001 цикл, то есть 100 000 + 1 с использованием PBKDF2 SHA-256 на стороне клиента и 100 000 на стороне сервера.
Владимир Палант (Wladimir Palant), создатель AdBlock Plus, заявил, что Bitwarden фактически не использует 100 000 итераций на стороне сервера для ключа шифрования, это делается только для мастер-пароля. На самом деле, количество итераций KDF по умолчанию в Bitwarden довольно низкое, оно составляет 5000 итераций на стороне сервера. Палант сказал, что этот недостаток означает, что уровень безопасности Bitwarden идентичен тому, что был у LastPass.
Эксперт по безопасности Дмитрий Честных (Dmitry Chestnykh) упоминал об этой проблеме еще в 2020 году, но она до сих пор не была исправлена. С марта 2018 года многие пользователи просили компанию решить эту проблему и перейти на более надежные алгоритмы, такие как Argon2.
В сервисе Mastodon, Bitwarden заявил, что увеличит количество итераций для защиты пользовательских данных. Пока неясно, повлияет ли это на существующие учетные записи пользователей. Однако, уже сейчас вы можете вручную перейти на более безопасный режим шифрования.
Как изменить количество итераций KDF в Bitwarden Password Manager
Предупреждение: рекомендуем экспортировать резервную копию хранилища, прежде чем пытаться выполнить следующие действия. Пользователи, у которых есть расширение для браузера Bitwarden или мобильное приложение, могут перейти в Настройки > Экспортировать хранилище. Настольный клиент позволяет сделать то же самое в меню Файл > Экспорт хранилища. Как только вы измените количество итераций KDF, вы выйдете из всех клиентов из-за изменения ключа шифрования. Использование большого количества KDF приведет к тому, что ваше хранилище паролей будет открываться медленнее. Дополнительная информация доступна на официальной странице поддержки.
- Войдите в свое хранилище Bitwarden.
- Нажмите на свой профиль в правом верхнем углу и выберите Настройки аккаунта.
- Перейдите на вкладку Безопасность, а затем на вкладку Ключи.
https://vault.bitwarden.com/#/settings/security/security-keys
Примечание: После выполнения этих действий вы выйдете из своей учетной записи, и появится всплывающее сообщение о том, что ваш ключ шифрования изменился.
Вы спросите, почему именно 600 000 операций? Это количество итераций KDF, рекомендованное Open Web Application Security Project (OWASP). До недавнего времени OWASP рекомендовал по умолчанию использовать 310 000 итераций, но за последнюю неделю это значение почти удвоилось. В сообщении Bitwarden на Mastodon упоминается, что первоначальный план состоял в том, чтобы установить итерации KDF на уровне 350 000, но затем было решено остановить свой выбор на 600 000.
Также рекомендуем изменить поведение буфера обмена в браузерном расширении Bitwarden. Нажмите кнопку расширения, затем перейдите в Настройки > Опции > Очистить буфер обмена. По умолчанию установлено значение Никогда, установите 1 минута или другое желаемое значение.
Вы также можете ознакомиться со статьей Паланта с техническими подробностями, касающимися надежности паролей.
Советы и рекомендации
• Программа «Верни Сбер на iPhone» для Windows: Как восстановить приложение СберБанка на iOS не выходя из дома
• Как играть в Brawl Stars в России с помощью Comss.one DNS
• GitHub Copilot стал бесплатным: как получить доступ в России через Comss.one DNS
• Как использовать Google Gemini 2.0 Flash (Experimental) бесплатно – на сайте Gemini, в Google AI Studio и приложении
• Доступ к GitHub Copilot, Notion и Home Connect через Comss.one DNS в России
• Как использовать Sora – нейросеть OpenAI для генерации видео