Страницы

Как безопасно использовать один пароль на всех сайтах


Современный пользователь имеет примерно 25 различных сетевых аккаунтов, но использует всего 6 различных паролей. Т.о. на один уникальный пороль приходится, в среднем, 5 повторяющихся. Кроме того в сеть ежегодно утекает около 100 000 000 подобранных паролей.



Наличие большого количества статистической информации позволяет хакерам строить "паттерны" наиболее вероятных паролей пользователей, что вкупе с использованием GPU и FPGA делает подбор даже комплексных и длинных паролей вполне осуществимым мероприятием.

Статистика паролей LinkedIn;
Статистика по 83.6 млн. паролей (внизу).


Т.о. перед тем как запускать грубый перебор всех возможных символов в пароле, хакер вначале проверяет его по базе уже известных паролей (вот, например, линк на популярную базу паролей RockYou.com и свежая база с 83.6 млн паролей), затем расширяет набор паролей с помощью наиболее вероятных паттернов (например, поочередно заменяет в каждом слове листа буквы "o" на "0", "i" на "1", "s" на "$" ..., добавляет в конец пароля цифры и спец.символы, меняет раскладку клавиатуры для русских паролей и т.д.). Это увеличивает в разы количество операций по подбору, но общее количество операций по-прежнему остается значительно меньше, чем грубый перебор.

Оптимизации процесса подбора паролей привела к тому, что из 6,5 млн. паролей социальной сети LinkedIn за несколько часов было подобрано 1,4 млн. За сутки подобрали уже 76%. Через месяц общее количество успешно подобранных паролей оказалось свыше 90% от количества хэшей.

Вот несколько примеров паролей, подобранных за первые часы утечки: P4ss10n, 0ldfr1ends, Pa33w8rd, jiujitsu13!@, spac3gh0st. В следующий раз эти пароли будут уже подобраны за секунды.

Неплохим решением проблемы с паролями является использование браузерного плагина PwdHash. Программа разработана в Стэнфордском университете в рамках научной работы и имеет открытый исходный код.

Что делает плагин?
Он геренирует новый пароль, равный хэшу от вашего "обычного" пароля с солью  в виде имени сайта.
Пароль = Хэш ("мой любимый пароль", адрес сайта)
Генерируемый пароль получается случайным (не подпадает под "человеческие" паттерны), сложным, уникальным (т.к. зависит от сайта) и легко запоминаемым, т.к. помнить нужно только любимый пароль. 

Пример (до/после): password / aP1HdtsMik

Прелесть работы с плагином в том, что ваши пароли физически не хранятся на компьютере (если, конечно, браузер их не сохраняет) и генерируются каждый раз заново в момент процедуры логина на основе имени сайта и вашего ключа. Т.о. можно не бояться, что вы потеряете файл с паролями, или что его украдут и взломают, т.к. его нет =). Это удобно.

Чтобы использовать PwdHash, достаточно щелкнуть в поле пароля и нажать f2 (либо ввести два символа @@, если нет клавиш f2 под рукой):
Затем вбить любимый пароль и PwdHash сам преобразует его в хэш-пароль.
Если вы хотите зайти на почту с мобильного устройства или чужого компьютера - достаточно просто открыть страницу pwdhash.com и воспользоваться генератором (страницу можно, кстати, сохранить и использовать в оффлаине)

На практике плагин оказался очень удобным, незаметным и незаменимым для тех сайтов, от которых тебе лень помнить пароль наизусть. 

Очень надеюсь, что когда-нибудь похожий функционал будет встроен уже в сам браузер.

[Update] pwdhash для Android

5 комментариев:

  1. Чем пароль, подобранный за первые часы утечки, из примера, например, 0ldfr1ends устойчивее сгенерированного с помощью плагина/сайта (aP1HdtsMik)? Если нет разницы, зачем усложнять себе жизнь?

    ОтветитьУдалить
    Ответы
    1. 0ldfr1ends смысловой пароль (старые друзья). Смысловые пароли подбираются очень быстро. aP1HdtsMik абракадабра, соответственно её подобрать труднее. Но может после этой статьи пароль попадет в словари ;)

      Удалить
    2. все верно. old friends - устойчивое словосочетание, которое есть почти в любом wordlist'е. Дальше "о" на "0", "i" на "1" - типовая замена символов.

      Поэтому "0ldfr1ends" будет подобран очень быстро, а "aP1HdtsMik" весьма вероятно не будет подобран вовсе (т.к. не подпадает ни под один паттерн, кроме полного случайного перебора).

      aP1HdtsMik в вордлисты включать бесполезно, потому что это "password" только для mail.ru =)

      Удалить
  2. ну хз, популярных сайтов не так много, можно нагенерить по данному алгоритму словарей конкретно под них

    ОтветитьУдалить