
Эксперты Ledger Donjon выяснили, что пароли, которые генерировал Kaspersky Password Manager, только выглядели случайными. На самом деле они создавались генератором псевдослучайных чисел и жестко зависели того момента, когда пользователь нажал на кнопку создания нового пароля. Этот момент, а точнее, системное время устройства в секундах — становился числом seed, на основе которого и работал генератор Kaspersky Password Manager.
В результате если два клиента Kaspersky Password Manager в разных уголках света одновременно — буквально в ту же секунду — нажимали на кнопку и при этом оставляли другие настройки по умолчанию, то генератор выдавал одинаковый результат и оба получали идентичный пароль.
Только если во время генерации пользователь менял длину пароля и набор используемых символов (такая опция есть в менеджере), пароль получался другим.
Не только — и не столько в этом. Хуже то, что за последнее десятилетие (2011-2020 годы) прошло всего лишь 315 миллионов 619 тысяч 200 секунд. Ровно столько паролей с настройками по умолчанию мог сгенерировать Kaspersky Password Manager. Злоумышленник мог бы очень быстро (с помощью специальных программ для перебора) воссоздать весь этот список и потом использовать его для взлома перебором зашифрованных архивов, документов, флешек и жестких дисков.
А если он мог хотя бы примерно узнать, когда жертва обзавелась паролем в Kaspersky Password Manager, то взлом стал бы радикально проще: можно было даже попытаться перебрать пароли другой длины и с иным набором символов (в таком случае вариантов числа seed, благодаря которому они восстанавливаются, значительно меньше).
По мнению исследователей, возможно, уязвимость осталось незамеченной из-за анимации, имитировавшей перебор символов при создании пароля. Между кликом, в результате которого генератор останавливал работу, и появлением пароля на экране проходило больше одной секунды. И даже если бы пользователь после этого сразу кликнул бы в следующий раз, пароль был бы уже другим. Пользователь просто не имел возможности узнать, что в течение одной секунды генерируются одинаковые пароли.
Генерация одинаковых паролей была главной, но не единственной проблемой с Kaspersky Password Manager, обнаруженной исследователями Ledger Donjon. Так, например, выбранный «Лабораторией Касперского» генератор псевдослучайных чисел не обладал всеми свойствами, позволяющими использовать его в криптографии. А символы в генерируемом пароле выпадали и располагались не с одинаковой вероятностью, то есть не совсем случайным образом. Эксперты предположили, что так разработчики менеджера паролей хотели затруднить атаку перебором по словарям. В таком случае злоумышленники перебирают пароли с помощью словарей (иногда немного модифицированные, например, буква «О» меняется на цифру «0»). В этом менеджере было сделано так: чаще выпадают такие последовательности букв, которые не встречаются в обычных словах. Но если злоумышленник точно знал, что жертва создала пароль с помощью Kaspersky Password Manager, то он мог модифицировать свою атаку и в теории быстрее подобрать пароль, чем это было бы с абсолютно случайной последовательностью цифр, букв и символов.
Если вы пользуетесь менеджером паролей от «Лаборатории Касперского», проверьте, чтобы у вас не стояли программы с версиями раньше этих:
В случае необходимости обновитесь и обязательно поменяйте все свои старые пароли.
«Лаборатория Касперского» в комментарии «Медузе» также сообщила, что внедрила механизм, благодаря которому пользователи получают специальные уведомления, если сгенерированный пароль недостаточно надежен и его следует поменять.
Денис Дмитриев