Новый алгоритм для проверки надёжности паролей / Habr
Многие сайты пытаются помочь пользователям установить более сложные пароли. Для этого устанавливают базовые правила, которые требуют обычно указать хотя бы одну прописную букву, одну строчную букву, одну цифру и так далее. Правила обычно примитивные вроде таких:'password' => [
'required',
'confirmed',
'min:8',
'regex:/^(?=\S*[a-z])(?=\S*[A-Z])(?=\S*[\d])\S*$/',
];
К сожалению, такие простые правила означают, что пароль
Abcd1234
будет признан хорошим и качественным, так же как и Password1
. С другой стороны, пароль mu-icac-of-jaz-doad
не пройдёт валидацию.Некоторые специалисты говорят, что это не лучший вариант.
В реальности Abcd1234
и Password1
— плохие пароли, а mu-icac-of-jaz-doad
— хороший пароль. В этом несложно убедиться.
Вот первые два пароля.
А вот два пароля, которые не пройдут проверку на надёжность.
Что же делать? Может, не стоит принуждать к использованию спецсимволов и внедрять всё новые правила, вроде запрета на повтор нескольких символов подряд, использование не одного, а двух-трёх спецсимволов и цифр, увеличение минимальной длины пароля и т д.
Вместо всего этого достаточно сделать простую вещь — просто установить ограничение на минимальную энтропию пароля, и всё! Можно использовать для этого готовый оценщик zxcvbn.
Есть и другие решения, кроме zxcvbn. Буквально на прошлой неделе на конференции по безопасности ACM Computer and Communications Security была представлена научная работа (pdf) специалистов по безопасности из научно-исследовательского подразделения Symantec Research и французского исследовательского института Eurecom. Они разработали новую программу для проверки надёжности паролей, которая оценивает примерное количество необходимых попыток брутфорса, используя метод Монте-Карло. Предлагаемый способ отличается тем, что требует минимальное количество вычислительных ресурсов на сервере, подходит для большого количества вероятностных моделей и в то же время довольно точный. Метод проверили на паролях из базы 10 млн паролей Xato, которые лежат в открытом доступе (копия на Archive.org) — он показал хороший результат. Правда, это исследование Symantec Research и Eurecom носит скорее теоретический характер, по крайней мере, свою программу они не выложили в открытый доступ в каком-либо приемлемом виде. Тем не менее, смысл работы понятен: вместо эвристических правил проверки паролей веб-сайтам желательно внедрить проверку на энтропию.
habr.com
проверка, как создать, примеры паролей
Пароли — это ключи от ваших виртуальных хранилищ данных в интернете — от аккаунта почты, онлайн игры, личной странички в соцсети и т.д. Конечно же, он должен на 100% отвечать такому критерию, как надёжность. То есть он должен быть устойчив к взлому, или подбору. К сожалению, многие пользователи это простое, но обязательное требование к паролям игнорируют. И в итоге, как правило, становятся жертвами злоумышленников. У них пропадают деньги, конфиденциальные данные, геймплейные достижения и пр.
Известно, что 1% пользователей сети то ли из-за лени, то ли из-за халатности при регистрации предпочитают использовать примитивные комбинации, которые можно подобрать с 3-4 попыток. Примеры — «123456», «qwerty», «mypassword». Это, безусловно, является очень большой глупостью. «Лёгкий» ключ для пользователя является «лёгким» и для взломщика.
Эта статья расскажет вам о том, как составлять надёжные пароли и как проверить их на устойчивость к взлому.
Какой пароль можно назвать надёжным?
Хорошие ключи от учётной записи имеют следующие характеристики:
1. Длина не меньше 10-15 символов (самые устойчивые комбинации и того больше — 20-35 символов).
2. Символьный состав: большие и маленькие английские буквы, цифры, спецсимволы.
3. В комбинации отсутствуют словарные слова (parol, kod, vhod), личные данные (номер телефона, имя, e-mail и т.д.), логические последовательности букв и цифр (1234, 246810, abcdefg).
Чем сложнее, надёжнее комбинация, тем труднее сделать её подбор. Чтобы установить придуманную пользователем последовательность из 12 знаков, может понадобиться свыше 1,5 млн. лет.
Создание сложного ключа
Рядовые пользователи Сети и специалисты по безопасности уже нашли множество правильных ответов-решений на вопрос «Как создать надёжный пароль?». В рамках этой статьи мы познакомимся с тремя наиболее практичными способами.
Способ №1: подмена букв
Не на всех первых мобильных телефонах поддерживался русский язык, и их владельцы отправляли СМС-ки, используя транслитерацию. То есть писали латинскими буквами по-русски, а недостающие литеры заменяли символами. Например: «ч» — «4». Фраза «Что делаешь?», выглядела как «4to delaesh?». Этот же принцип лежит и в основе данного способа составления ключей.
Возьмите какое-нибудь слово или словосочетание, а затем запишите его с использованием «хитрых» обозначений. Вместо пробелов можно использовать в качестве разделителей любые спецсимволы «~», «/», «.» и др. Например, можно придумать такую комбинацию:
«Опасная зона» запишем как «onACHA9I#3OHA».
Как видите, слова мы записали латинскими буквами и вдобавок заменили кое-какие русские литеры. Вместо «п» — «n», «я» — «9I», «з» — «3» (цифра «три»). И поставили разделитель «#» между словами. Вот и получился достаточно сложный вариант. Чтобы разгадать такой тип символьного сочетания, компьютерным злодеям придётся как следует покорпеть.
В помощь таблица символьных обозначений русских букв:
Способ №2: создание «читаемого» ключа в генераторе
1. Откройте в браузере онлайн-сервис — http://genpas.peter23.com/.
2. В опции «Режим работы» клацните радиокнопку «Произносимый пароль… ».
3. Дополнительно включите/отключите символьные наборы для комбинаций ключа и установите его длину.
4. Нажмите кнопку «Генерировать».
5. Выберите наиболее оптимальный вариант из генерированных последовательностей.
6. Разбейте выбранный пароль на фрагменты из 2-3 символов и придайте каждому фрагменту определённый смысл. В такой «логической цепочке» очень легко запомнить самую сложную комбинацию. В качестве примера давайте разберём ключ, созданный в этом генераторе:
Xoh)ohfo1koh
- Xoh) — можно прочитать как «Хох» + «смайлик»;
- oh — «ох»;
- fo1 — пусть это будет какая-то загадочная аббревиатура;
- koh — кох — опять вариация начального слога.
Способ №3: добавка спецсимволов в простые слова
1. Возьмите за основу какое-либо хорошо знакомое вам слово:
space2017
2. Придумайте сочетание спецсимволов из 2 или 3 знаков.
«+_&»
3. Добавьте сочетание в начале и в конце слова в зеркальном отображении.
+_&space2017&_+
4. В итоге вы получите достаточно «крепкий» ключ. Безусловно, его нельзя назвать самым устойчивым, однако он легко запоминается и по своей структуре не является примитивным.
Внимание! Перед составлением пароля обязательно ознакомьтесь с требованиями сервиса, на котором регистрируетесь. К примеру, на портале Майл.ру нельзя использовать кириллицу (русские буквы).
Проверка ключа на надёжность
Проанализировать устойчивость выбранной комбинации можно на специальных сервисах.
passwordmeter.com
Предоставляет пользователю подробный анализ указанной комбинации (символьные наборы, длину), а также оценивает её сложность в процентах.
howsecureismypassword.net
Сообщает о том, сколько времени понадобится на подбор указанного ключа. Предупреждает о недопустимых (примитивных) символьных последовательностях.
Пользуйтесь только надёжными паролями! Они являются залогом вашей безопасности в Сети.
Возникли сложности? Напишите об этом в комментариях и мы постараемся вам помочь.
А если статья оказалась вам полезной, не забудьте поставить лайк!
webereg.ru
Придумываем стойкий к взлому пароль. Практические рекомендации
Приветствую!
Несмотря на стремительное развитие технологий и появление альтернативных способов распознавания владельца, парольная защита не сдаёт своих позиций и остаётся весьма популярной и по сей день.
Содержание:
Пароль превратился в обыденность и используется для доступа к устройствам и интернет сервисам. И со временем их становится только больше. Сложившаяся ситуация, в конечном итоге, приводит к тому, что пользователи начинают использовать один и тот же пароль на используемых устройствах и сервисах.
Чтобы этого не произошло, пароли должны быть сложными (стойкими к перебору) и разными.
Принципы, используемые при создании пароля
На большинстве интернет ресурсов существуют минимальные правила для устанавливаемого пароля, которых, зачастую, недостаточно для создания действительно сложного пароля. Необходимо ещё помнить о том, что:
- Логин и пароль не должен быть идентичным
- Пароль не должен состоять из личной информации (дата рождения, телефон и т.д.)
- Пароль не должен состоять исключительно из слов
На первый взгляд эти рекомендации могут показаться избыточными, но давайте посмотрим, каким образом происходит взлом простых паролей.
К примеру, чтобы подобрать пароль, состоящий из 6 цифр – необходимо перебрать всего 1 миллион комбинаций. Современный компьютер справится с этой задачей за считанные минуты. По этой же причине не стоит полагаться на пароли, состоящие исключительно из слов и их сочетаний. Такие пароли перебираются с использованием словарей популярных слов.
Не стоит полагаться и на пароли, которые состоят из слов с добавлением цифр. Они столь же подвержены взлому, хоть на это и требуется куда больше времени. Однако, в случае успешного взлома и понесённых потерь в этой связи, едва ли это будет иметь какое-то значение.
Для лучшего понимания, какой пароль является надёжным, а какой подвержен взлому, стоит обратиться к примерам. Данные цифры были получены с помощью сервиса проверки стойкости пароля.
- Дата рождения 12071996 – 0,003 секунды
- Имя с заглавной буквы Maksim и строчной maksim – не больше полусекунды
- Сочетание, состоящее из букв и цифр 7s3a8f1m2a – около суток
- На перебор следующего сочетания vSA-DFRLLz – 1 год
- Сочетание iu2374NDHSA)DD – 204 миллиона лет
Последние два пароля демонстрируют весьма высокую стойкость к взлому. Работа злоумышленника над взломом аналогичного по сложности пароля, скорее всего, закончится ничем.
Правильно генерируем пароль
С теоретической частью мы разобрались, теперь перейдём непосредственно к генерации стойкого и надёжного пароля.
При создании сложного и стойкого пароля существенную роль играет человеческий фактор. Трудности возникают на самом начальном этапе – придумывании сложного пароля, а после – его запоминания. Ведь комбинация разрозненных символов едва ли предрасполагает к скорому запоминанию.
С проблемой генерации стойкого пароля нам помогут он-лайн сервисы. Их довольно много, из популярных русскоязычных сервисов можно отметить:
Passwordist.com
Online-Generators.ru
PassGen.ru
Работают представленные сервисы по одному принципу, от вас лишь требуется указать какие символы необходимо использовать и выбрать длину генерируемого пароля.
Отдельной особенностью сервиса Passwordist.com можно отметить возможность задать количество создаваемых паролей и генерировать варианты с лучшей читабельностью за счёт исключения похожих символов, к примеру, B и 8.
Хранение паролей
Надёжные пароли сгенерированы, но это ещё полдела. Пароли необходимо правильно хранить, дабы никто посторонний не получил к ним доступ.
В этой связи варианты с записью в текстовый файл или на стикер с последующим прикреплением к монитору сразу отпадают.
Лучше и правильнее доверить конфиденциальную информацию менеджеру паролей.
Среди популярных решений можно отметить программу KeePass. Данная программа бесплатна и в тоже время весьма функциональна. Помимо прочего в ней присутствует генератор паролей, благодаря которому отпадает необходимость в использовании он-лайн генератора.
Для доступа к базе сохранённых паролей необходимо будет установить мастер-пароль. Для его создания можно, к примеру, воспользоваться методикой набора слов в другой раскладке, дабы создать сложный пароль, но при этом самому не забыть его.
Локальная база с паролями на вашем компьютере априори будет менее подвержена взлому, нежели общедоступные сервисы в интернет, так что здесь со сложностью перебарщивать не стоит.
Проверка стойкости паролей
Если вы желаете проверить уже имеющиеся или вновь сгенерированные пароли на стойкость к взлому, то для этого существуют несколько он-лайн сервисов:
1) How Secure Is My Password? После того, как вы введёте пароль в соответствую форму на сайте, вы увидите сколько времени понадобится на взлом методом перебора. Срок в несколько миллионов лет можно считать превосходным.
2) Kaspersky Lab: Secure Password Check Данный сервис создан отечественным разработчиком популярного антивирусного решения. Он также демонстрирует примерное время, которое необходимо на взлом пароля методом перебора.
3) 2IP: Стойкость пароля Сервис категорично выносит вердикт для проверяемого пароля – он может быть либо надёжным, либо нет.
Проверяя ваши пароли не стойкость, не забывайте, что отображаемые там результаты стойкости весьма условны. Они рассчитываются исходя из средней производительности домашнего компьютера, и едва ли будут аналогичными для мощного лабораторного суперкомпьютера.
Одно успокаивает – людям, имеющим доступ к такому оборудованию, едва ли будет интересен ваш пароль от сервиса электронной почты или мессенджера.
Краткий итог
В данной статье я попытался раскрыть все аспекты парольной защиты и объяснить, почему на первый взгляд надёжный пароль по сути таковым совершенно не является.
Надеюсь, что данная информация пригодится, и будут приняты меры, которые оградят от взлома и сопутствующих последствий.
it-actual.ru
Проверка паролей пользователей домена Windows на стойкость к атаке по словарю без компрометации пароля
Добрый день, коллеги. Хочу рассказать о полученном мной интересном опыте. Может быть кому-то пригодится.В современном мире пароли используются повсеместно. На корпоративном компьютере, на личном телефоне и планшете, в почте и т.д. И казалось бы всем уже неоднократно объяснялось, что пароль должен быть стойким. Показывались рекомендации, что пароль не должен содержать личные данные, словарные слова, простые комбинации и т.д. Но тем не менее, еще множество людей продолжают использовать простые пароли. Что является не только нарушением требований безопасности, но представляет серьезную опасность как личным так и корпоративным данным.
Соответственно, возникает задача с помощью подручных средств, без установки сложного ПО, проверить пароли пользователей домена на стойкость к атаке по словарю. При этом, нужно сохранить конфиденциальность паролей. Т.е. чтобы проверяющий не видел пароли в открытом виде, но при этом мог однозначно сказать, что пароль является словарным словом.
В связи с тем, что у нас домен построен на базе Microsoft Windows, для решения этой задачи было решено сравнивать хеши паролей пользователей домена с хешами словаря. В целом такой подход можно применить к хешам из любых систем. Изменятся только методы получения хешей пользователей.
Хеши паролей пользователей в домене Windows можно получить из файла ntds.dit. Но в штатном режиме доступ к нему запрещен системой. С помощью Google была найдена возможность получить копию файла ntds.dit (содержащий в том числе и логины/хеши паролей пользователей домена) стандартными средствами контроллера домена.
Для получения копии ntds.dit используются возможности утилиты ntdsutil.exe. С ее помощью необходимо сделать снимок системы (Volume Shadow Service) и получить копию файла SYSTEM (в нем содержится ключ для извлечения хешей из базы ntds.dit).
Для создания копии выполняем следующие команды:
C:\>ntdsutil
ntdsutil: activate instance ntds
ntdsutil: ifm
ifm: create full c:\audit
ifm: quit
ntdsutil: quit
В результате работы появляется каталог С:\Audit. Внутри каталога присутствуют две папки: Active Directory и registry. Соответственно в первой лежит копия ntds.dit, а во второй копии веток реестра SYSTEM и SECURITY. Данные папки можно скопировать на другой компьютер или оставить на контроллере домена.
Далее необходимо извлечь из ntds.dit логины и пароли пользователей домена. Для этого воспользуемся маленькой утилитой ntds_decrypt. Взять ее можно по адресу ntds_decode.zip. Качаем архив, распаковываем. Получаем два файла. Собственно исполняемый файл и readme с описанием опций.
ntds_decode -s FILE -d FILE -m -i
-s <FILE> : SYSTEM registry hive
-d <FILE> : Active Directory database
-m : Machines (omitted by default)
-i : Inactive, Locked or Disabled accounts (omitted by default)
Для использования утилиты необходимо запустить командную строку с правами «Администратор». На файле cmd.exe кликаем правой кнопкой мыши и выбираем пункт «Запуск от имени Администратора». В командной строке запускаем утилиту:
ntds_decode -s C:\Audit\registry\SYSTEM -d "C:\Audit\Active Directory\ntds.dit"
Здесь мы запускаем утилиту с основными параметрами (пути до файлов ntds.dit и SYSTEM), т.к. нам не нужны заблокированные или отключенные учетные записи (опция -i), и учетные записи компьютеров (опция -m).
В результате, получаем файл hashes.txt. Формат файла аналогичен формату pwdump и принимается большинством программ брутфорсеров (типа L0phtCrack). Формат файла такой:
<username>:<rid>:<lm hash>:<ntlm hash>:<description>:<home directory>
Собственно в файле hashes.txt нам интересны в первую очередь поля «username» и «ntlm hash».
Хорошо, мы получили исходные данные. Теперь нам нужен словарь. Я взял один из словарей в Интернете на 9 миллионов слов размером 92 Мб. Однако хотелось бы немного его расширить типовыми шаблонами. Например, добавить в конце пару цифр, поменять регистр букв и т.д. Для этой операции замечательно подошел старый добрый John the Ripper. В его функционале есть возможность произвести мутацию словаря по определенным правилам. Я решил не ограничивать возможности JtR и запустил его в стандартном варианте со всеми возможными мутациями.
john --wordlist=9mil.txt --rules dict.txt
После некоторого времени у меня получился файл dict.txt содержащий примерно 131 миллион слов. Теперь для слов нужно получить NTLM хеши. Т.к. сравнивать мы хотели именно хеш с хешем. Для расчета NTLM хешей словаря воспользуемся набором утилит HashManager. Взять его можно по адресу HashManager. Кстати в его составе также есть утилиты для мутации словарей. Но нам понадобится замечательная утилита GenerateHashList. Она генерирует хэши для всех паролей в исходном файле.
В распакованном архиве переходим в папку Bonus — GenerateHashList. И запускаем в командной строке bat файл с параметрами:
generate.bat NTLM dict.txt
Через некоторое (продолжительное ) время получим файл dictionary.txt, содержащий хеши словаря. Объем файла примерно 4.3 Гб. Это очень большой файл. И в идеале нужно уже переходить к использованию SQL, но не хотелось, т.к. это не подходило под требования по возможности использовать подручные средства не требующие установки сложного ПО.
Тогда, для начала, решено было использовать возможности Windows. А именно, утилиту FINDSTR. Данная утилита позволяет искать строку в файле и является обновленной версией утилиты FIND. Воспользовавшись Google было найдено решение, которое считывало хеш из файла hashes.txt и искало его в файле dictioanry.txt. Собственно, вот команда:
(for /f "usebackq tokens=1,4 delims==:" %%i in ("hashes.txt") do FINDSTR /I /B "%%j" Dictionary_sort.txt && Echo %%i>>"audit.txt" && Echo %%i %%j>>"audit_full.txt")
Результатом работы утилиты будет два файла:
— audit.txt, содержащий только логины пользователей, чьи хеши паролей были найдены в словаре
— audit_full.txt содержащий кроме логина еще и сам хеш. Это на тот случай если у пользователя возникнут сомнения в том, что хеш был найден в словаре.
Имеющийся файл hashes.txt содержал примерно 20 000 строк. Запустив утилиту find я обнаружил, что поиск одного хеша в словаре занимает около 40 секунд на моем ноутбуке Lenovo X220. Прикинув количество имеющихся строк и среднее время поиска получилось, что на поиск всех хешей уйдет в районе 10 дней. Правда результат можно видеть и в процессе. Так как найденные хеши сразу попадают в файл audit.txt. На более мощном компьютере скорость будет повыше, но не на много. Линейный поиск достаточно трудоемкий. И время поиска напрямую зависит от объема словаря. В общем — это рабочий вариант, но неудобный.
Тогда было решено написать свой скрипт поиска. Я давно интересовался Python и совсем недавно, просматривая в Youtube лекции Гарварда CS50, вспомнил про алгоритм бинарного поиска и решил попробовать реализовать его для поиска хешей в словаре. Ну что, поехали!
Для начала нужно отсортировать словарь. Это необходимо для осуществления бинарного поиска и кроме этого позволит еще больше обеспечить сохранность пароля. Так как после сортировки нельзя будет однозначно сопоставить хеш словаря со словом. Исходя из поставленной цели, использовать подручные средства, воспользуемся утилитой SORT из состава Windows. В командной строке запускаем команду:
sort dictionary.txt > dictionary_sort.txt
Получили отсортированный словарь хешей. Теперь сам скрипт. Я не специалист в Python, я только учусь, поэтому с помощью Google и разных нецензурных слов собрал скрипт и заставил его работать. Естественно скрипт не оптимален и страшно выглядит, но работает. В качестве параметров ему передается путь к файлу hashes.txt, путь к файлу словаря, и путь для записи результата (audit.txt, audit_full.txt).
Формат запуска:
PassAudit.exe -i c:\audit\hashes.txt -d c:\audit\dictionary_sort.txt -o c:\audit\
Вот сам скрипт:
import argparse
#Создаем поля для парсера
parser = argparse.ArgumentParser(description='This script testing passwords against dictioanry attack. '
'It takes hashes from file and compares to hashes in dictionary.'
'Accounts with weak password outputs into the file audit.txt '
'and audit_full.txt. You can not get clear password from hash.'
'To get hashes from domain controller you should execute next commands'
'at command prompt on domain controller: '
'cd c:\\ -> ntdsutil "activate instance ntds" ifm "create full c:\\pentest" quit quit'
' -> cd c:\\password\\ -> ntds_decode -s c:\\pentest\\registry\\SYSTEM '
'-d \"c:\\pentest\\Active Directory\\ntds.dit\" '
'After that you will get file hashes.txt. ntds_decode.exe you can get here: '
'http://www.insecurety.net/downloads/pwdtools/ntds_decode.zip '
'Dictionary hashes file must be sorted and formated one hash per line. '
'You can make it from any dictionary with John the Ripper and Hash manager '
'or any other programs. Copyright Handy761. 2016')
parser.add_argument('-i', '--input', help='Full path to hashes file', required=True)
parser.add_argument('-d', '--dictionary', help='Full path to dictionary file', required=True)
parser.add_argument('-o', '--output', help='Path to output files', required=True)
args = parser.parse_args()
#Открываем файлы hashes.txt и словарь
f0 = open(args.input)
f = open(args.dictionary)
#Формируем пути для открытия файлов результатов
result_file_path0 = args.output + '\\' + 'Audit.txt'
#Открываем файл результата Audit
r0 = open(result_file_path0, "w")
result_file_path2 = args.output + '\\' + 'Audit_full.txt'
#Открываем файл результата Audit_full
r = open(result_file_path2, "w")
#Создаем переменную для хеша пользователя
pass_hash = ''
#Запускаем цикл поиска
while True:
#Устанавливаем указатель на конец файла
f.seek(0, 2)
#Задаем начальный указатель в словаре
begin = 0
#Задаем конечный указатель в словаре
end = f.tell()
#Т.к. указатели на байты, а у нас строки то будем конвертировать байты в строки. Задаем номер начальной строки
lines_begin = 0
#Задаем номер конечной строки. Т.к. длина строки 32 байта плюс перевод строки делим на 34
lines_end = end / 34
#Считываем из фала Hashes.txt строку и проверяем на конец файла
pass_line = f0.readline()
if ("" == pass_line):
print("file finished")
break
#Парсим строку на элементы. Разделитель :
pass_line_parse = pass_line.split(":")
#Выбираем поле ntlm_hash и прибавляем к нему символ перевода строки. Т.к. в словаре строки оканчиваются переводом строки.
pass_hash = pass_line_parse[3] + '\n'
#Создаем переменную для указателя на середину диапазона поиска
point1 = 100
#Пока указатель на середину диапазона больше 1, будем искать.
while (point1 > 1):
#Вычисляем середину диапазона
point1 = (lines_end - lines_begin) // 2
#Если у нас указатель на начало диапазона строк больше нуля, то полученное значение середины диапазона прибавляем к этому указателю и умножаем на 34 для получения смешения в байтах
if lines_begin > 0:
point = (lines_begin + point1) * 34
else:
point = point1 * 34
#Устанавливаем указатель в файле словаря на середину диапазона
f.seek(point, 0)
#Считываем строку из словаря
line_key = f.readline()
#Сравниваем значение из словаря со значением из файла hashes.txt и если совпало, то выводим в файлы и на экран. Иначе определяем, где искомое значение (выше или ниже), чтобы понять какую половину отбросить и соответственно сдвинуть указатели на начало и конец диапазона. После этого начинаем сначала.
if pass_hash == line_key:
print(pass_line_parse[0], line_key)
r.write(pass_line_parse[0])
r.write(' ')
r.write(line_key)
r0.write(pass_line_parse[0])
r0.write('\n')
break
elif pass_hash > line_key:
begin = f.tell()
lines_end = end / 34
lines_begin = begin / 34
else:
end = f.tell()
lines_end = end / 34
lines_begin = begin / 34
#По окончанию закрываем все файлы
f.close()
f0.close()
r.close()
r0.close()
Для удобства я скомпилировал скрипт в exe-файл. После запуска, на том же самом наборе данных, время перебора составило порядка 3 минут.
Все перечисленные здесь манипуляции по получению хешей паролей пользователей домена и проверке их по словарю достаточно неплохо автоматизируются в скрипт. Генерация хешей словаря операция разовая и производится по необходимости.
Таким образом, можно настроить скрипт, который на регулярной основе будет выгружать хеши паролей пользователей из контроллера домена, проверять их по словарю и отправлять результат в службу технической поддержки для оповещения пользователей о слабом пароле.
Возможно все это можно было сделать проще, быстрее и красивее, но в любом случае это был интересный опыт.
habr.com
Насколько надежен Ваш пароль? Сервис проверки взломостойкости
Сегодня мы поговорим о сохранности Вашей личной информации, безопасности работы в Интернет, и конечно познакомимся с несколькими полезными онлайн сервисами.
Что собственно говоря такое пароль? Это последовательность знаков в произвольном порядке, которая позволяет человеку сделать какую-то информацию недоступной для других людей. Это по сути гарантия того, что никто не сможет получить доступ к Вашей информации без Вашего на то ведома и согласия.
Но, друзья, насколько Вы уверены в том, что, защитив какой-то контент паролем, Вы отныне можете спать спокойно? Вы уверены в том, что придуманный Вами пароль невозможно узнать или подобрать? А как же сотни и тысячи случаев взлома сайтов (блогов) у людей, которые также как и Вы были полностью уверены в их недоступности для хакеров?
Как взламываются пароли
Секретное слово для доступа знаете только Вы и никто другой. Как же тогда возможно его подобрать? Всё очень просто: часто в качестве пароля используются даты либо обычные слова из словаря. Количество цифр и словарный запас человека ограничены – взлом паролей такого типа происходит обычно за несколько минут специальными программами, которые с молниеносной скоростью перебирают все возможные варианты.
Если набрать в поисковике Яндекса точную фразу «взломать пароль», мы получим 184 тыс. ответов с конкретными методами и способами осуществить это. Специалисты утверждают: на сегодняшний день уровень развития технологий и методов взлома таков, что подобрать можно абсолютно любой пароль, вопрос лишь во времени…
Проверяем пароли на устойчивость
Хотите прямо сейчас узнать, как быстро можно взломать Ваш пароль? Воспользуйтесь онлайн сервисом How Secure Is My Password. Он покажет Вам, сколько времени уйдет у хакеров, на то, чтобы подобрать Ваше секретное слово и даст Вам рекомендации по тому, что следует изменить.
Вот например результат анализа моего пароля к клиенту WebMoney (наверное я могу спать спокойно):
Создаем безопасный пароль
Если по результатам анализа выяснилось, что спать спокойно по крайней мере ближайшие несколько биллионов лет Вы можете не рассчитывать, предлагаю Вам воспользоваться услугой сервиса онлайн генератор паролей. Он поможет создать крайне надежный пароль, который отличается тем, что его невозможно взломать методом перебора. Для этого он должен содержать:
- не менее 8 символов (лучше более 12)
- строчные и прописные буквы алфавита
- цифры
- символы
Все опции легко настраиваются с помощью соответствующих чекбоксов. Я взял один из сгенерированных этим сервисом паролей и проверил его на скорость взлома. Результаты Вы может оценить сами:
Друзья, никто не позаботится о сохранности Ваших личных данных кроме Вас самих. Всегда лучше заранее предупредить неприятные последствия, чем потом решать возникшие проблемы. Описанные сегодня онлайн сервисы, как нельзя лучше помогут Вам предупредить возможные неприятности. Успехов!
Рекомендую также ознакомиться с сервисом защиты электронной почты от компании StarForce.
webtous.ru
Как быстро проверить надежность вашего пароля — самый простой способ – Apple-iPhone.ru
Важно знать всем.
С каждым годом активность хакеров лишь увеличивается. Об этом свидетельствует статистика, в том числе собираемая правительствами различных стран, которые обеспокоены положением дел. А ведь для того, чтобы значительно снизить количество успешных взломов, пользователям достаточно установить сильные пароли на все свои учетные записи. Как же понять какой ваш пароль — сильный или слабый? В этой инструкции рассказали о том, как наиболее быстрым и эффективным образом проверить надежность вашего пароля.
Как быстро проверить надежность вашего пароля — самый простой способ
Шаг 1. Перейдите на страницу https://password.kaspersky.com/ru/.
Это специальный сервис от компании Kaspersky Lab, разработчика одного из самых популярных антивирусов. Он позволяет проверять силу пароля, оценивая сложность его подбора путем перебора паролей (брутфорса). Важно отметить, что данная страница не собирает и не хранит пароли, поэтому пользоваться ей совершенно безопасно.
Тем не менее, если вы полностью не доверяете сервису Kaspersky Lab, то можете вводить свой пароль, но с изменением нескольких символов. Смысл проверки от этого не изменится.
Шаг 2. Введите проверяемый пароль в графе Test your password.
Шаг 3. Ознакомьтесь с результатом проверки.
Сервис проверки паролей укажет сколько времени потребуется на взлом вашего пароля путем перебора паролей на обычном компьютере. Если данный показательно равен нескольким дням или даже нескольким месяцам, то пароль рекомендуется сменить на более сильный, содержащим больше различных символов.
Ранее мы рассказывали о том, как придумать сложный пароль и легко его запомнить.
Смотрите также:
Поставьте 5 звезд внизу статьи, если нравится эта тема. Подписывайтесь на нас ВКонтакте, Facebook, Twitter, Instagram, Telegram и Яндекс.Дзен.
Загрузка…
Вернуться в начало статьи Как быстро проверить надежность вашего пароля — самый простой способ
www.apple-iphone.ru
Проверка надежности пароля
Друзья, сегодня у нас очень интересная тема и впереди три не менее интересных вопроса. Насколько надежным является мой пароль? Сколько потребуется времени, чтобы его взломать? Как сделать пароль более-менее надежным?
На эти вопросы отвечает сервис «How Secure Is My Password?», что в переводе звучит так: «Насколько надежен мой пароль».
Официальный сайт: http://www.howsecureismypassword.net/
Выглядит этот сервис следующим образом:
Нам достаточно ввести пароль и проверить его надежность.
Давайте добавим в основное окошко сайта комбинацию цифр 12345678, и посмотрим, что нам «скажет» этот сервис:
Система выводит следующее:
- Пароль 12345678 входит в ТОП-10 самых распространенных паролей и может быть взломан мгновенно.
- Нежелательно использовать пароль в виде даты рождения или телефонного номера.
- Наш пароль содержит только буквы и цифры (в данном случае это только цифры). Система рекомендует дополнительно использовать нестандартные символы и пробелы.
А теперь я попробую ввести 20-ти значный пароль:
Результат уже получше будет:
- Пароль является больше 16-ти знаков, поэтому все хорошо.
- Мой пароль является нестандартным, так как содержит в себе нестандартные символы (пробел).
- По расчетам системы, мой пароль взломают за 1 квинтиллион лет (это единица с 18 нулями).
Кстати, если мы вводим русские символы, сервис считает это нестандартным решением.
Также сервис предлагает создать пароль автоматически:
Вывод можно сделать такой: если мы не уверены в надежности нашего пароля и хотим его протестировать, тогда сервис «How Secure Is My Password?» может хорошо нам в этом помочь. Или хотя бы дать наводку, в чем его необходимо улучшить.
Понравился пост? Нажми любую кнопку:Интересные статьи:
teweb.ru