Практические рекомендации по выбору паролей по результатам взлома antichat.ru / Habr
Как вы уже слышали Брайан Кребс недавно проводил аудит паролей, полученных после взлома antichat.ru (сама база была получена где-то год назад и уже не актуальна!). Честно говоря, не очень понимаю чем занимались его видеокарты 18 дней, победив только 44% паролей. Мне на довольно скромном железе удалось подобрать 77% паролей за 8 часов. Исходя из таких несколько пугающих цифр, особенно для сайта тематически связанного с информационной безопасностью, у меня есть несколько рекомендаций о том какие пароли никогда не следует использовать, дабы они не были подобраны за пару минут.Я пользовался утилитой The UDC, которую создал сам (кстати в настоящий момент она бесплатно доступна «с потрохами»), она не поддерживает вычисления на видеокартах и на моем E8400 перебирает в среднем 5 миллионов паролей в секунду (просто чтобы не было иллюзии, что успешность перебора определяет только скорость). В результате я нашел 31790 паролей из 41037 MD5 хешей. Как мне это удалось?
Цифры
Итак, запускаю перебор, иду пить кофе.
Итого получаю 15759 найденных паролей! Это почти половина всех найденных. За пять-то минут.
Кому-то кажется, что если понаписать цифр «от души», штук эдак 20, то такой пароль можно считать трудно подбираемым. Отнюдь. Человек не является хорошим генератором случайных чисел, ему свойственно выбирать какие-то более удобные или красивые комбинации подсознательно.
На базе этого замечания была применена техника частотного анализа; я буду применять ее и дальше, и озаглавлю «атакой релевантных сочетаний». Итак, берем уже найденные 15759 цифровых паролей, и считаем количество включений каждой подстроки. Скажем, подстрока 123
является самой частой среди трехсимвольных комбинаций, а строка 1111
среди четырехсимвольных (так вот устроены уже найденные пароли). Сортируем все подстроки по частоте, выбираем N самых частых (например 50000), получается словарь частых сочетаний.
Запускаем перебор пар конкатенаций слов из этого словаря (такой метод часто называют «гибридной атакой»), в результате легко подбираем пароли вида 1111111111123123
за считанные минуты. В результате: еще 358 найденных паролей.
Мораль: все-таки любое количество любых цифр — плохой пароль. Вот просто никогда не используйте чисто цифровые комбинации в качестве пароля. Их подобрать не сложнее чем «qwerty» или «password».
Короткие пароли
Удивительно, что не все сайты запрещают создание паролей короче 7 символов. Однако и таких присутствовало аж 5767 штук.
Я думаю, все верят, что подбираются они за минуты.
Словарные слова
Достаточно простая техника запомнить пароль — вспомнить какое-то слово и как-то его «извратить». Человеческий подход к этому вопросу я попытался закодировать с помощью набора подстановок.
Какие подстановки я использовал:
- убрать все гласные из слова
- случайное изменение регистра для одной-двух букв в любом месте
- эмуляция случайного нажатия CAPS LOCK в любом месте слова
- добавить до трех случайных цифр в конец слова + красивые варианты (2010, 2011, etc.)
- добавить до двух случайных цифр в начало слова + красивые варианты (123, 1111, etc.)
- вставить случайный символ в любое место слова
- добавление знаков пунктуации в начале и/или в конце слова
- «хэккерские» замены («one» -> «1», «s» -> «$», «a» -> «@», etc.)
- ошибки переключения раскладки (русское слово в английской и наоборот)
Далее прогоняем какой-нибудь достаточно большой словарь слов на разных языках, у меня нашелся словарик на 40 мегабайт, на котором подстановки отработали за пол часа. Кроме уже попавших в вышеописанные категории таких паролей оказалось аж 5213 штук.
Мораль: на любую «фантазию» в придумывании пароля может найтись подстановка, ее реализующая. Возможно моя фантазия не очень богата, но и благодаря ей удалось разобраться с большим количеством, кстати, довольно длинных паролей.
Частотный анализ для длинных паролей
Вы, может быть, еще думаете, что пароль из 20 символов с применением букв разных регистров и цифр достаточно надежен, но увы, если его придумал человек — вряд ли.
После того, как я уже нашел 27097 пароль (это где-то за час), странно было бы этим не воспользоваться в полной мере. Есть предположение, что для любого тематического ресурса люди чаще используют одни комбинации символов, нежели другие. Вопрос требующий изучения, но статистические методы позволяет перенести «изучение» на железную часть, не напрягая мозг.
Итак, извлекаем подстроки из найденных паролей, сортируем их по частоте, и создаем словарь из 10000 самых частых сочетаний. Добавляем туда по необходимости все односимвольные и двухсимвольные комбинации.
Затем начинаем перебор по конкатенации слов из такого словаря в числе до трех штук. Вот именно эта часть и заняла почти 7 часов и нашла 4693 длинных и сложных пароля. В огромном числе из них употреблялись «устойчивые» комбинации вроде 1234
или 951753
.
Мораль: человек едва ли может уследить за отсутствием статистически популярных комбинаций в пароле, однако любая система поможет ему подсказать, реализуя поиск таких комбинаций в релевантном словаре. Иначе же no one is safe.
Примеры плохих паролей (из найденных)
123321123321123
— цифр вроде много, но паттерн очевиден.1qaz2wsx3edc
— удобно набирается и так же удобно конструируется. 123456610q
— наивно полагать, что один символ изменит качество пароля, однако так думают не только люди, но и большинство автоматических систем, не порядок.ilovepussy777
— кто ж не любит; но по сути это один символ + три релевантых слова, ломается враз.[fuckitall]
— показываем свое замечательное знание английского, однако комбинация […] слишком часто встречается, чтобы считать что она влияет на надежность.Hellsp@wn
— ни регистр в начале, ни замена на @ не улучшит качество пароля, собранного из словарного слова.Jhnjgtl12
— раскладку перепутали? и мы так умеем.dalex3pro
— d + имя + цифра + частое сочетание букв. Для pro как-то не круто.PANASONIC13
— забытый капслок? и откуда такой фанатизм к известной фирме.iphone3g
— еще фанатики. не стоит использовать что-то, что у всех на слуху.qCkiYSJ625
— и вот казалось бы рандом, но кто ж знал, что он состоит из достаточно часто употребляемых комбинаций сам по себе.UPD:
База не свежая, ей почти год, так что вопросы про то, чей пароль подобран или нет актуальны только если вы зарегистрировались больше года назад и не меняли пароль!
Также выяснилось, что цифровых паролей так много из-за того что автоматический сброс пароля сам их выставляет. Хотя по опыту аудита других ресурсов цифровых паролей почти всегда очень много.
Ответы@Mail.Ru: Пример пароля…
<a rel=»nofollow» href=»http://genpas.narod.ru/» target=»_blank» >генератор паролей</a> 1.4vw6z7DQNJ 2. 956BQpPXh5 3. yDQnkZdQ72 4. XWinwiRANb 5. WE0HbY52dF 6. xQttkcIaII 7. 4BllOuvhcI 8. bEbmBi2F8Y 9. 7IsmtlaMJd 10. tiE35dnwsa
ты настолько туп, что не можешь сам придумать пароль по заданным условиям, и поэтому второй раз задаешь этот вопрос?? ? Пароль в твоем случае должен выглядеть примерно так: 4Dg77sR9пхахаха тупой вопрос… написать пароль а потом тебя же и взломают…
9521EFDerd_______ref78698Блин ребят это бред!!! Вы еще скажите пароль от сейфа!! Это тупо сначала говорить пароль потом тебя же и взломают!!!
1. ODK15RF96H 2.T45FKI8793ST 3.OAT6482EYVA 4.FYW7FH8KL9 5.AWT6VHJ3UP
Пароль не удовлетворяет требованиям.
эм он может поставить пороль который ему написали и заменить пару букв
Придумываем сложные и легко запоминаемые пароли / Habr
Относительно часто на хабре попадаются статьи так или иначе касающиеся паролей. Например, эта, или эта или эта. Тема интересная, и я решил внести свою лепту.
Я уже пять лет использую свой метод, и за это время не забыл ни одного из своих паролей. Средняя длина пароля — 18 символов. Цифры, спецсимволы в комплекте. Я называю этот метод «методом маски», и уже неоднократно описывал его в комментариях к статьям о паролях. Итак, небольшое пошаговое HowTo:
1. Как и следует из названия, нужно выбрать себе маску пароля. Эта строка должна быть сложной, содержать в себе цифры, символы алфавита во всех возможных регистрах, спецсимволы и т.п. Запомнить всю эту билиберду придется один раз. Допустим, я выбрал себе маску «MySecrEt+*######_83». Здесь символы решеток — не часть маски, вместо них мы будем вписывать…
2.… свою ассоциацию с ресурсом, на котором пароль используется. Например, для Хабра итоговый пароль может быть «MySecrEt+*itcommunity_83». Очень важно то, что в качестве «соли» в маску вписывается именно ваша ассоциация с ресурсом. Первая пришедшая в голову. Для рутового аккаунта можно использовать пароль «MySecrEt+*dangerous_83». Можно не стесняться использовать цельные слова: если ваша маска достаточно сложна, перебор по словарю не поможет вскрыть пароль.
3. Теперь, когда вы заходите на какой-либо ресурс, можно не морщить лоб — пишите свою секретную маску и первую ассоциацию. Если не поможет — вторую ассоциацию. Третью. По моему опыту самый тяжелый случай — три попытки. Был какой-то неведомый ресурс, ассоциация с которым была не совсем очевидна. Если совсем ничего не помогает — ну, сбросить пароль и установить новую ассоциацию очень часто несложно.
После всех этих манипуляций мы получаем пароль, который невозможно сломать перебором (пароль для хабра в примере имеет длину 24 символа), который с трудом поддается перебору по словарю (это возможно только при условии раскрытия вашей маски злоумышленнику) и который очень просто запомнить.
Для того, чтобы как-то разграничить зоны безопасности, можно использовать разные маски для разных категорий ресурсов. Например, пароли к рутовым аккаунтам серверов — одна категория, пароли к соцсетям, твиттерам и прочим вещам — другая категория, пятиминутный треш — третья. Так можно будет минимизировать риски раскрытия маски пароля.
P.S. Если есть еще какие-нибудь предложения по усовершенствованию — пишите в комментариях.
P.P.S. Я не претендую на авторство этой методики. Вполне возможно, что кто-то и до меня предлагал такой метод.
Сложный пароль в запоминании не нуждается / Habr
Все пароли для разных ресурсов должны быть длинными, сложными, личными и не похожими.Но как придумать такое количество разнообразных паролей? Предположим мы нашли на бескрайних просторах Интернета нужную нам программу, генерирующую нужное нам количество знакосимволов. Но как запомнить всё это буйство букв, цифр, знаков препинания, и, не побоюсь произнести эту фразу, вообще не понятных символов в виде смайликов, стрелочек, домиков и китайских иероглифов? А как не перепутать какая «нечитаемость» от какого сайта?
Я запомнить точно не смогу. Я даже четырёхзначные PIN-коды пластиковых карт забываю на следующий день. Можно пароли записать и в самый нужный момент потерять всё, что копилось многие годы. А если у Вас паранойя? Вам же придётся Ваш шифроблокнот положить в банковскую ячейку. Но ведь Вы забудете очередную парольку от очередной бронированной дверки почти сразу.
А что если есть способ, позволяющий не придумывать, не запоминать и не записывать ключи от наших тайн? Я предлагаю способ придумывания таких паролей.
Нам понадобятся всего три вещи.
1. «Волшебная» табличка (о ней дальше) с помощью которой мы и будем создавать пароли,
2. Индивидуальная ключевая фраза,
3. Название ресурса для которого мы будем создавать пароль.
И больше ничего. Заинтригованы?
Волшебная таблица
Для начала представлю Вам «волшебную» таблицу. Это и есть ключевой элемент данного способа придумывания паролей. Сразу отмечу что это не моё изобретение. В школе я с помощью такой таблицы шифровал свои секретные записи. Я её просто немного модифицировал.
Да и не такая она волшебная. В трёх левых колонках (левое поле) расположены неповторяющиеся символы. В большом квадратном поле (основное поле) латинские символы и цифры периодически повторяющиеся по горизонтали и вертикали. В трёх верхних строках (верхнее поле) любые символы, именно из них и будут получаться пароли.
Ну что же, таблица у нас есть. Осталось придумать ключевую фразу и найти ресурс к которому мы будем придумывать пароль. Пусть первым будет слово password, а вторым — mysite. Пароль будем придумывать из шестнадцати символов. Поехали.
Создание пароля
Возьмите первую букву ключевой фразы (p) и найдите её в левом поле. Нашли? Теперь в той же строке в основном поле найдите первую букву имени ресурса (m). Тоже нашли? Поднимитесь по столбцу вверх и найдите первый символ нашего пароля (цифра 0). И далее повторите всё тоже самое для каждой последующей пары символов. В слове закончились буквы? Ничего страшного, начните с начала слова. Результат Вы увидите в таблице 1.1.
Не плохо. Даже цифры в пароле есть.
Как будет выглядеть результат изготовления пароля для Хабрахабра видно в таблице 1.2. Мы поменяли только имя ресурса (habrahabr), а пароль изменился.
Знаю что найдутся желающие видеть в пароле заглавные буквы и знаки препинания. Давайте их нарисуем.
В слове HaBRaHaBR есть согласные буквы. Вы тоже заметили? Тогда давайте в тех же позициях пароля заменим буквы на заглавные. Результат в таблице 1.3.
А теперь заменим символы пароля 4, 8 и 16 на знаки препинания (таблица 1.4), для этого они и нужны в верхнем поле «волшебной» таблички.
Хочу отметить, что если количество символов в ключевой фразе и в имени ресурса одинаковое, то символы пароля начнут повторятся. Для избежания этого можно, например, к имени ресурса добавлять буквы. Например так habrahabr+dobivka=habrahabrdobivka (таблица 1.5).
В качестве ключевой фразы Вы можете использовать всё что Вам угодно. Даже квадратное уравнение подойдёт (таблица 1.6).
Можно использовать Вашего любимого персонажа из детской книжки (таблица 1.7)
И для разнообразия в пароль можно вставить кириллические символы. В таблице 1.8 они вставлены там, где и в ключевой фразе и в имени ресурса гласные буквы.
Пока готовил материалы для публикации придумал ещё один способ использования данного метода. Дело в том, что меня тоже раздражают контрольные вопросы в системах восстановления паролей. Кто ещё кроме Вас знает девичью фамилию Вашей мамы? Думаю все. Вот Вам ещё одно слабое место в безопасности. Ваша мама не обидится если вы зашифруете её фамилию? Тогда смело можете использовать принцип из таблицы 1.9.
Создайте свою «волшебную» таблицу
Если все будут использовать одну и туже «волшебную» таблицу, то я думаю это не будет хорошо. Вот ещё одна.
Чем же она другая? Левое поле такое же. В центральном поле я поменял последовательность символов. А верхнем поле расставил русские и латинские символы не совсем в алфавитном порядке.
Вообще то Вы можете создать свою таблицу соблюдая четыре простых правила.
1. Вы должны запомнить по какому принципу Вы составляете таблицу.
2. В левом поле символы не должны повторятся.
3. В основном поле символы не должны повторятся в столбцах и строках.
4. В верхнем поле можно располагать любые символы и в любом порядке.
А теперь попробуем создать пароль с ключевой фразой и именем ресурса из нашего первого примера, но уже с использованием второй шифровальной таблицы. То что получилось видно в таблице 2.1. Почувствуйте разницу.
А для того что бы Вы могли с меньшими усилиями создать личную таблицу, здесь я выложил исходник в формате .xls.
«Вспоминаем» пароль
Предположим Вы зашли на свой любимый Хабрахабр, Вконтакте или на сайт где во всех подробностях и с картинками рассказывается как правильно пользоваться капустой в которой находят детей и пытаетесь вспомнить пароль? А пароль вспоминать не надо. Его вообще можно не запоминать. Как такое возможно?
1. Вы составили личную шифровальную таблицу по определённому и понятному Вам принципу. Тогда даже её потеря не будет большой проблемой. Восстановите её.
2. Вы помните свою личную ключевую фразу. А ведь Вы помните число π до четырнадцатого знака после запятой.
3. Вы в здравом уме и хорошо понимаете на какой сайт Вы зашли.
Это всё что Вам нужно. Создайте пароль снова, он будет точно таким-же.
«Серёженька, а я опять забыла парольку от корпоративного мыла»
Вас тоже раздражает эта фраза? Даже бесит? Как я Вас понимаю. Нужно сделать столько лишних телодвижений. А что если…
У Вас ведь есть ключевая фраза. А у Ваших «забывчивых соработников» есть табельный номер или логин. Давайте это использовать по назначению.
Правила безопасности на Вашей работе требуют менять пароль раз в месяц? Ещё чаще? Тогда при тех же условиях поменяйте ключевую фразу и пересоздайте пароли.
И конечно же никто не будет Вам запрещать автоматизировать процесс.
Вместо эпилога
Я понимаю что пользоваться бумажкой и даже картинкой шифровальной таблицы на компьютере не совсем удобно. Поэтому у меня есть просьба. Если Вам понравилась идея и Вы можете создать приложение для ПК, телефона, смартфона или коммуникатора, то дерзайте. Сам то я не местный, руки не под это заточены…
P. S. Я знаю что ключевое слово по-английски keyword. Слово password я использовал специально что-бы запутать спецслужбы всех стран, времён и народов.
Дополнено после публикации
Спасибо, iFaTaL1Ty, за ссылку на Хабрахабре с подобной идеей.
Спасибо, VasyaMobile, за почти такую же идею от Яндекса.
БОЛЬШОЕ спасибо, jursovet. Вот здесь не только подобная идея, но и практический способ её реализации.
Перенёс в тематический блог.
Критические замечания
Топик на Хабрахабре где высказываются критические замечания к данному способу придумывания паролей. А это мой ответ на критику.
Цитирую свой комментарий:
rbJJkjwqmIyLm7er — это пароль к сайту mojdomen. Восстановите ключевую фразу, и я признаюсь в том, что я идиот.
Дополнение от 24.08.2019
Пользователь dolfero написал на Python скрипт по мотивам статьи — github.com/dolferoIHYD/password_generator
Ответы@Mail.Ru: Напишите пример пароля!
wqwdsd1#*DDdf — такой на моем майле стоит (пока не взломали)
10b0*w@j$0Oy как то так
«У вас продаётся славянский шкаф? «
фвкпфжвдалпжлфважлпжфоваждплофэдлывоапдэфжлражщмплодифжвщшарэтпф. удлвату мэЗШЛРТКВЭМЛДФтсВЭДЛМТЖФДВЛАТПВАМ блЯ.
поставь английский язык, а набирай русское слово с цифрами, например—59маруся47411 это на английском
@ 45qw45 и сложный и простой в тоже время
имя на английском языке например 12345Varia12345
gjerkgerrgYGlgjipp;hjgGJHO’KJPFWgpJ
1.9HFYHNK 2.DJTI67LG 3.75KAIOH
лг566\7564цащп000щ
пример логина и пароля напишите пожалуйста